9.ESP8266 Pinout | Pins and Their Functions of ESP8266 SoC

Espressif’s ESP8266 is a Wi-Fi SoC. It has all the bells and whistles for Wi-Fi Network connectivity as well as a very powerful processor. You can build applications using ESP8266 SoC alone but if you have a host MCU, then it can act as a slave as well. There are ESP8266 modules available in the market that you can use in your projects. But before starting, you have to be familiar with the pinout of the SoC as well as the module. So, in this tutorial, we will take a look at the ESP8266 Pinout.

First, we will see the pinout of the ESP8266 SoC. As ESP8266 Wi-Fi Chip is available in several modules, we will also see the pinout of some of those modules.

A Brief Note on ESP8266

The ESP8266 Wi-Fi Module changed the DIY and Hobbyist scene completely. It paved the way for small creators to build IoT and ‘Smart’ things. You can design a Smart Bulb or Smart Relay using ESP8266.

Since it has a powerful microprocessor, you can use it as a standalone device for the processor as well as for Wi-Fi connectivity. But the benefit of ESP8266 is that you can use another processor as the ‘main processing unit’ and use the ESP8266 just as a Wi-Fi chip.

ESP3266 Pinout

We will start understanding the pins of the ESP8266 with the main SoC itself. ESP8266 SoC is available in a 32-pin QFN Package (33 if you consider the center GND pad).

The following image shows the pin layout of the ESP8266 SoC.

ESP8266-Pinout-SoC-Image-1

From the above ESP8266 Pinout, you can see that it has only 1 pin (Pin 2 – LNA) for the RF Interface. This shows the level of integration ESP8266 has. Coming to the pins themselves, the following table shows the pin description of all the ESP8266 pins.

Pin NumberNameDescription
1VDDAAnalog Power Supply
2LNARF Antenna Interface
3VDD3P3Amplifier Power Supply
4VDD3P3Amplifier Power Supply
5VDD_RTCNC
6TOUTADC Pin
7CHIP_ENChip Enable
8XPD_DCDCDeep Sleep Wakeup
9MTMSGPIO 14 / HSPI_CLK
10MTDIGPIO 12 / HSPI_MISO
11VDDPSTDigital IO Power Supply
12MTCKGPIO 13 / HSPI_MOSI / UART0_CTS
13MTDOGPIO 15 / HSPI_CS / UART0_RTS
14GPIO 2GPIO 2 / UART TXs
15GPIO 0GPIO 0 / SPI_CS2
16GPIO 4GPIO 4
17VDDPSTDigital IO Power Supply
18SDIO_DATA_2SD_D2 / SPIHD / HSPIHD / GPIO 9
19SDIO_DATA_3SD_D3 / SPIWP / HSPIWP / GPIO 10
20SDIO_CMDSD_CMD / SPI_CS0 / GPIO 11
21SDIO_CLKSD_CLK / SPI_CLK / GPIO 6
22SDIO_DATA_0SD_D0 / SPI_MISO / GPIO 7
23SDIO_DATA_1SD_D1 / SPI_MOSI / GPIO 8
24GPIO 5GPIO 5
25U0RXDUART RX / GPIO 3
26U0TXDUART TX / GPIO 1 / SPI_CS1
27XTAL_OUTCrystal Oscillator Output
28XTAL_INCrystal Oscillator Input
29VDDDAnalog Power Supply
30VDDAAnalog Power Supply
31RES12KSerial Connection with 12 KΩ Resistor
32EXT_RSTBExternal Reset Signal
33GNDGround Pad

ESP-01 Pinout

The ESP-01 is one of the simplest ESP8266 modules available today. Ai-Thinker developed this module. It has the main SoC, crystal oscillator, flash memory, and a PCB antenna.

There are also 8 basic pins for programming as well as power. The following image shows the pins layout of ESP-01.

ESP8266 Arduino Image 2

Out of the 33 pins of ESP8266 SoC, the ESP-01 Module

Pin NamePin Function
VCCPower Supply – 3.3V only
GNDGround
TXUART TX
RXUART RX
RSTReset
CH_PDChip Enable
GPIO 0GPIO 0
GPIO 2GPIO 2

NodeMCU Pinout

While ESP-01 is the bare minimum ESP8266 Module, the NodeMCU is a popular compressive solution. It is a proper ESP8266 Development board with all the necessary connectors and components.

NodeMCU-Parts-on-Board

NodeMCU uses ESP-12E Module, again by Ai-Thinker. This module, like the ESP-01, has the SoC, Crystal Oscillator, and Wi-Fi Antenna. All the essential things for ESP8266 SoC. The main difference between ESP-01 and ESP-12E is the number of GPIO Pins.

Coming back to NodeMCU, it takes the ESP-12E as the base board and builds a complete system around it. The following image shows the Pinout of NodeMCU.

NodeMCU-Pinout-Image

It has 30 pins. You can see the pin description of all these 30 pins in the following table.

PinDescriptionAlternate FunctionsDefault
ADC0Analog Input —ADC0
Reserved — —
Reserved — —
SDD3SDIO Data 3GPIO10SDD3
SDD2SDIO Data 2GPIO9SDD2
SDD1SDIO Data 1GPIO8SDD1
SDDCMDSDIO CMDGPIO11SDDCMD
SDD0SDIO Data 0GPIO7SDD0
SDCLKSDIO CLKGPIO6SDCLK
GNDGround — —
3.3V3.3V Output — —
ENChip Enable (Active HIGH) — —
RSTReset (Active LOW) — —
GNDGround — —
VIN5V Input to 3.3V Regulator — —
3.3V3.3V Output — —
GNDGround — —
TXD0UART0 TXDGPIO1TXD0
RXD0USRT0 RXDGPIO3RXD0
GPIO15GPIO15HSPI_CS / RTS0GPIO15
GPIO13GPIO13HSPI_MOSI / CTS0GPIO13
GPIO12GPIO12HSPI_MISOGPIO12
GPIO14GPIO14HSPI_SCKGPIO14
GNDGround — —
3.3V3.3V Output — —
GPIO2GPIO2UART1 TXDGPIO2
FlashFlashGPIO0Flash
GPIO4GPIO4Software SDA (I2C)GPIO4
GPIO5GPIO5Software SCL (I2C)GPIO5
GPIO16GPIO16Wake (deep sleep)GPIO16

ESP-12E Pinout

You can design your own NodeMCU if you have the ESP-12E Module. For that, you must be familiar with the Pinout of ESP-12E. The following image shows the pinout of the ESP-12E Module.

ESP-12E-Pinout

Here is the pin description of all the ESP-12E Pins.

PinFunction
RSTReset the Module
ADC0ADC Pin with 10-bit resolution
ENChip Enable Pin (active HIGH)
GPIO16GPIO16 pin (wake pin from deep sleep mode)
GPIO14GPIO14 pin (HSPI_CLK)
GPIO12GPIO12 pin (HSPI_MISO)
GPIO13GPIO13 pin (HSPI_MOSI)
VCC3.3V Power Supply (max 3.6V)
SDCMDSDIO CMD (GPIO11)
SDD0SDIO Data 0 (GPIO7)
SDD2SDIO Data 2 (GPIO9)
SDD3SDIO Data 3 (GPIO10)
SDD1SDIO Data 1 (GPIO8)
SCCLKSDIO CLK (GPIO6)
GNDGround Pin
GPIO15GPIO15 pin (HSPI_CS)
GPIO2GPIO2 pin (TXD1)
FlashFlash Pin (GPIO0)
GPIO4GPIO4 pin (SDA – software I2C)
GPIO5GPIO5 pin (SCL – software I2C)
RXD0UART0 RXD pin (GPIO3)
TXD0UART0 TXD (GPIO1)

Conclusion

Even though ESP32 is a more powerful and capable SoC, the ESP8266 is still one of the popular choices for Wi-Fi Chips. Several DIY, as well as professional products, integrate ESP8266 in one form or the other. That is either directly as an SoC or as a Module.

Regardless, if you want to design projects using ESP8266, then you have to be familiar with the pins and pin functions. In this guide, we saw the ESP8266 Pinout. First, we saw the pinout of the main ESP8266 SoC.

Then we saw the pinouts of some popular modules such as ESP-01 and ESP-12E. We also looked at the pinout of NodeMCU.
Link:https://www.electronicshub.org/esp8266-pinout/