Skip to main content

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.

MCU
ESP8266
Logic
3.3V
GPIO
11
PWM
10
Analog
1
Ground pins
1

Interfaces

PWM pinsGPIO0, GPIO1, GPIO2, GPIO3, GPIO4, GPIO5, GPIO12, GPIO13, GPIO14, GPIO15
Analog inputsADC

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.

Power
3V3
Ground
GND
PWM
GPIO0GPIO1GPIO2GPIO3GPIO4GPIO5GPIO12GPIO13GPIO14GPIO15
Analog / ADC
ADC
Input-only
ADC
Strapping
GPIO0GPIO2GPIO15

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

GPIO1

Drive an LED (through a ~220Ω resistor) from GPIO1 and toggle it in loop(). The classic first sketch.

digitalWrite()

Fade an LED (PWM)

GPIO0

Use GPIO0 with analogWrite() to smoothly ramp an LED from off to full brightness.

analogWrite()

Read a potentiometer

ADC

Wire a potentiometer's wiper to ADC and read its position with analogRead().

analogRead()

Read a button

GPIO3

Connect 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 Studio

Full ESP8266MOD / ESP-12E/F bare module pin map

PinGPIOCapabilitiesVoltageNotes
3V3VCCPower3.3VRegulated 3.3 V input only. Do not connect 5 V.
GNDGNDAll grounds must share this reference.
ENCH_PDChip enable. Pull high to 3.3 V for normal operation.
RSTRESETActive-low reset. Normally pulled high.
ADCA0 TOUTinput-onlyADCADC0Bare-chip ADC range is 0 to 1.0 V. There is no NodeMCU divider.
GPIO00 FLASHstrapping0DigitalPWMI2CSPIBoot strap. Pull high for normal boot and low while resetting to flash.
GPIO11 TX TXD01txDigitalPWMI2CSPIUART0 TX used for flashing and boot logs.
GPIO22 TXD1strapping2DigitalPWMI2CSPIBoot strap. Must be high at reset.
GPIO33 RX RXD03rxDigitalPWMI2CSPIUART0 RX used for flashing. Use 3.3 V serial only.
GPIO44 SDA4sdaDigitalPWMSPIDefault software I2C SDA. 3.3 V only.
GPIO55 SCL5sclDigitalPWMSPIDefault software I2C SCL. 3.3 V only.
GPIO1212 MISO HMISO12misoDigitalPWMI2C3.3 V GPIO. Not 5 V tolerant.
GPIO1313 MOSI HMOSI13mosiDigitalPWMI2C3.3 V GPIO. Not 5 V tolerant.
GPIO1414 SCLK HSCLK14sckDigitalPWMI2C3.3 V GPIO. Not 5 V tolerant.
GPIO1515 CS SSstrapping15csDigitalPWMI2CBoot strap. Must be low at reset.
GPIO1616 WAKE16DigitalRTC 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.

AI PCB designer

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.

Start vibe PCB designing

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.

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.

Start building free