pinusage
Special Pins
GPIO0 Controls Boot Mode GPIO1 UART TX pin GPIO2 Controls Boot Mode GPIO3 UART RX pin GPIO6 SDIO/Flash CLK pin GPIO7 SDIO/Flash Data 0 pin GPIO8 SDIO/Flash Data 1 pin GPIO9 SDIO/Flash Data 2 pin (qio/qout only) GPIO10 SDIO/Flash Data 3 pin (qio/qout only) GPIO11 SDIO/Flash CMD pin GPIO12 Attached to Hardware SPI controller MISO GPIO13 Attached to Hardware SPI controller MOSI GPIO14 Attached to Hardware SPI controller CLK GPIO15 Controls Boot Mode; Attached to Hardware SPI controller CS GPIO16 Special pin that can be accessed from RTC, and is Deep-Sleep wakeup pin TOUT aka GPIO17 ADC pin for measuring voltages, can only be used as analog input pin
This means effectively only the following pins can be used as general purpose GPIO:
Pin Restrictions State after Reset ----------------------------------------- GPIO0 If HIGH on boot Weak Pull Up GPIO2 If HIGH on boot Weak Pull Up GPIO4 High Impedance GPIO5 High Impedance GPIO6 Weak Pull Up GPIO12 Weak Pull Up GPIO13 Weak Pull Up GPIO14 Weak Pull Up GPIO15 If LOW on boot Weak Pull Up GPIO16 Has pull-down (but no pull-up) resistor Weak Pull Down
Boot Modes
On each boot, the ESP8266 will check three pins to determine in which boot mode to enter. There are three boot modes:
Mode GPIO0 GPIO2 GPIO15 boot mode: Boot from Flash (normal) HIGH HIGH LOW 3 Download Code from UART LOW HIGH LOW 1 Boot from SD-Card ANY ANY HIGH 4-7
You can identify these on boot-up by looking at the UART output, the first number in the boot mode: line tells you what mode was selected
ets Jan 8 2013,rst cause:4, boot mode:(3,6)
The first lines when viewing the UART logs might have unrecognized characters. This is because the effective baudrate of the ESP8266 bootloader is 74800, whereas the program uses 115200.
Electrical Characteristics
Parameter Min. Typical Max. Unit Operating Temperature -40 125 °C Working Voltage V_IO 2.5 3.3 3.6 V V_IL - INPUT voltage level to be considered LOW -0.3 0.25*V_IO V V_IH - INPUT voltage level to be considered HIGH 0.75*V_IO 3.6 V V_OL - OUTPUT voltage level for LOW 0.1*V_IO V V_OH - OUTPUT voltage level for HIGH 0.8*V_IO V I_MAX - Maximum current for GPIO 12 mA Power Consumption in Deep Sleep 20 µA Power Consumption in Active Mode 120 mA
pinusage.txt · Last modified: by jwan
