Board pinout
ESP8266MOD / ESP-12E/F bare module Pinout
Bare ESP8266MOD ESP-12E/F radio module. It needs a regulated 3.3 V supply with enough peak current, EN pulled high, correct GPIO0/GPIO2/GPIO15 boot levels, and an external 3.3 V USB-to-UART adapter for flashing. It is not a NodeMCU board and has no 5 V VIN input or D0-D8 header labels. It runs at 3.3V logic with 11 usable GPIO pins. Every value below is verified against the pin map Banana Board uses to check real designs.
Interfaces
Watch out for
Input-only: ADC. These read signals but cannot drive an output and have no internal pull-up.
Strapping: GPIO0, GPIO2, GPIO15. These set the boot mode at reset, so pulling them the wrong way can stop the board from booting.
3.3V logic: pins are not 5V tolerant, so level-shift or divide any 5V signal into an input.
Pins by capability
A quick map of which pins do what. Colours match the pin table below.
Starter circuits to learn with
Beginner projects for the ESP8266MOD / ESP-12E/F bare module. The pins below come straight from its real pin map, so they are safe to wire as shown.
Blink an LED
GPIO1Drive an LED (through a ~220Ω resistor) from GPIO1 and toggle it in loop(). The classic first sketch.
digitalWrite()
Fade an LED (PWM)
GPIO0Use GPIO0 with analogWrite() to smoothly ramp an LED from off to full brightness.
analogWrite()
Read a potentiometer
ADCWire a potentiometer's wiper to ADC and read its position with analogRead().
analogRead()
Read a button
GPIO3Connect a push button between GPIO3 and GND, set the pin to INPUT_PULLUP, and skip the external resistor.
digitalRead() + INPUT_PULLUP
Try it without the hardware
Describe one of these circuits in the Studio and Banana Board wires it to these exact ESP8266MOD / ESP-12E/F bare module pins, validates it, and lets you simulate before you build.
Build & simulate in the StudioFull ESP8266MOD / ESP-12E/F bare module pin map
| Pin | GPIO | Capabilities | Voltage | Notes |
|---|---|---|---|---|
| 3V3VCC | — | Power | 3.3V | Regulated 3.3 V input only. Do not connect 5 V. |
| GND | — | GND | — | All grounds must share this reference. |
| ENCH_PD | — | — | Chip enable. Pull high to 3.3 V for normal operation. | |
| RSTRESET | — | — | Active-low reset. Normally pulled high. | |
| ADCA0 TOUTinput-only | — | ADC | ADC0 | Bare-chip ADC range is 0 to 1.0 V. There is no NodeMCU divider. |
| GPIO00 FLASHstrapping | 0 | DigitalPWMI2CSPI | — | Boot strap. Pull high for normal boot and low while resetting to flash. |
| GPIO11 TX TXD0 | 1 | txDigitalPWMI2CSPI | — | UART0 TX used for flashing and boot logs. |
| GPIO22 TXD1strapping | 2 | DigitalPWMI2CSPI | — | Boot strap. Must be high at reset. |
| GPIO33 RX RXD0 | 3 | rxDigitalPWMI2CSPI | — | UART0 RX used for flashing. Use 3.3 V serial only. |
| GPIO44 SDA | 4 | sdaDigitalPWMSPI | — | Default software I2C SDA. 3.3 V only. |
| GPIO55 SCL | 5 | sclDigitalPWMSPI | — | Default software I2C SCL. 3.3 V only. |
| GPIO1212 MISO HMISO | 12 | misoDigitalPWMI2C | — | 3.3 V GPIO. Not 5 V tolerant. |
| GPIO1313 MOSI HMOSI | 13 | mosiDigitalPWMI2C | — | 3.3 V GPIO. Not 5 V tolerant. |
| GPIO1414 SCLK HSCLK | 14 | sckDigitalPWMI2C | — | 3.3 V GPIO. Not 5 V tolerant. |
| GPIO1515 CS SSstrapping | 15 | csDigitalPWMI2C | — | Boot strap. Must be low at reset. |
| GPIO1616 WAKE | 16 | Digital | — | RTC GPIO and deep-sleep wake. No PWM or interrupt support. |
16 of 16 pins shown. Data verified against the board pin map Banana Board uses to check every design.
Design an ESP8266MOD / ESP-12E/F bare module PCB from a sentence
Describe your ESP8266MOD / ESP-12E/F bare module project and Banana Board wires it to these exact pins, validates it, then places and routes a fab-ready 2-layer board.
Frequently asked questions
Is the ESP8266MOD / ESP-12E/F bare module 3.3V or 5V logic?
The ESP8266MOD / ESP-12E/F bare module runs at 3.3V logic. Its GPIO pins are not 5V tolerant, so use a level shifter or divider when connecting 5V signals to an input.
How many GPIO pins does the ESP8266MOD / ESP-12E/F bare module have?
The ESP8266MOD / ESP-12E/F bare module exposes 11 usable GPIO pins, plus 1 power and 1 ground pins.
Which pins are PWM-capable on the ESP8266MOD / ESP-12E/F bare module?
PWM (analogWrite / tone) is available on GPIO0, GPIO1, GPIO2, GPIO3, GPIO4, GPIO5, GPIO12, GPIO13, GPIO14, GPIO15.
How many analog (ADC) inputs does the ESP8266MOD / ESP-12E/F bare module have?
The ESP8266MOD / ESP-12E/F bare module has 1 ADC-capable pins: ADC.
Which pins on the ESP8266MOD / ESP-12E/F bare module are input-only?
ADC are input-only. They can read digital or analog signals but cannot drive an output and have no internal pull-up or pull-down.
Which pins on the ESP8266MOD / ESP-12E/F bare module are strapping pins to avoid?
GPIO0, GPIO2, GPIO15 are strapping pins that set the boot mode at reset. Using them for peripherals can stop the board from booting, so prefer other GPIOs or make sure your circuit does not pull them the wrong way at power-up.
Other board pinouts
Related guides
Build it, do not just look it up
Describe your circuit in one sentence and Banana Board wires it to these exact pins, validates it, and lays out a fab-ready PCB.