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

User avatar
By RichardS
#46821 If I connect GPIO16 to RESET (pins 1 and 4 of a ESP12E) you can no longer program the part.... sometimes! If I disconnect GPIO16 it works, my programmer works like NODEMCU.

Why does it work sometimes and sometimes not, but always when disconnected?

So in a final product where you want GPIO16 connected to RESET if you connected GPIO16 to RESET through a resistor would it all still work? See attached.

It would need to be a much smaller then 12K as it will form a voltage divider..... :-(

RichardS
You do not have the required permissions to view the files attached to this post.
User avatar
By martinayotte
#46829 Hi Richard,

I'm not sure to understand your question ?

But it seems related with discovery done more than a month ago that ESP was not responding to UpLoad if it was in deepSleep state.

The discovery was that the GPIO16 wasn't driving the RES pin (when link outside the chip with direct wire instead of 1K) in OpenDrain but that there was a strong HIGH on the output during the sleep, preventing any external reset to succeed, except maybe a switch to GND that is always the winner.

Is your issue related to that ?
User avatar
By schufti
#46844 to answer directly to Richards question: the chances to successfully upload new fw depend on the deepsleep:running duty cycle. If you start the upload during deepsleep it will fail, if you start it during running cycle it will succeed.

As alternative to a low resistor value you could try using a diode (low Vf, schottky, cathode towards gpio16) effectively making gpio "open drain".