Menu

ESP12-E Directly Usable GPIO Pins

October 1, 2018 - ESP8266
ESP12-E Directly Usable GPIO Pins

Quick reference guide for the esp12-e GPIO pins.

Bellow you will find the pins that can be used directly and are not set to “HIGH” by default.

Probably you will be able to use more of the pins i’m going to describe here with some tinkering, but this is not the subject of this article.  

The document below contains the specs and basic info for ESP12-E WiFi module. 

esp8266-esp12e-specs – by kloppenborg

 

ESP12-E Pinout Basic Diagram 

The following picture contain details about all the esp12-e GPIO pins and their purpose and was taken from simba-os. It is a good reference point for all my projects.

esp12 e pinout

ESP12-E Usable GPIO Pins

First let’s define the term “directly usable GPIO pin“.

Directly usable pin is any pin of esp12-e which will work without any hardware or software modification. Any pin on which an output (e.g. led) or an input (e.g. temperature sensor) can be connected without any special effort, can be considered as considered directly usable.

All the pins on the following image are tested and can be used as described above.

 

If the pins that described as usable does not work, or if there are more directly usable pins that I missed, please let me know.

ESP12-E Pins Definition on “Arduino core for ESP8266 WiFi chip”

If you are going to use the Arduino core for your coding, you can define your pins like in the table bellow:

GPIOArduino Ref. PinsUsableNotesFunction
TDx 0D10UART0_TXD; GPIO1
RXd 0D9UART0_RXD; GPIO3
GPIO 5D1
GPIO 4D2
GPIO 0D3Only as Input
GPIO 2D4Only as InputUART1_TXD
GPIO 15D8Permanently High MTDO; HSPICS; UART0_RTS
GPIO 13D7HSPI_MOSI; UART0_CTS
GPIO 12D6HSPI_MISO
GPIO 14D5Permanently High HSPI_CLK
GPIO 16D0 can be used to wake up the chipset from deep sleep mode.

Arduino Reference Pins for ESP12

 

Arduino core for ESP8266 WiFi chip – GitHub

IDE Board Manager

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Sharing is caring!