Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By indrek84
#88698 According to the wiki:
wiki/doku.php?id=esp8266_gpio_pin_allocations#pin_functions
Notes :- GPIO2 It is considered safer to pull it high with a resistor on boot rather than leave it floating to avoid possible chip damage if pin is pulled high by your program


This sentence doesn't make sense to me. How can leaving the pin floating be damaging to the chip?

Shouldn't it say something like this:
"It is considered safer to pull it high with a resistor on boot OR leave it floating rather than CONNECTING IT DIRECTLY TO VCC to avoid possible chip damage if pin is pulled DOWN by your program"

This would make sense. If it is pulled directly to 3.3V and if you now set the GPIO02 as output and set it to LOW in your program code, then it will would short the 3.3V to GND through the GPIO02 pin.

Or do I misunderstand something fundamental here?
User avatar
By eriksl
#88756 There are people who do this actually: pull to Vcc or GND without using a resistor. And yes, that IS dangerous, because you can never rule out the pin will be in an "output" state for some time during booting or crash.

The GPIO's as input have a very large input impedance, so quite a large resistor can be used, I tend to use 10k or even 22k and that works. It will allow only < 1 mA to flow when the pin is setup as output and that's no problem.