Electronic – ESP32 stuck in reset

esp32timeout

I have a custom board with an ESP32 (Wroom-32U) module and JTAG connection for flashing and debugging. While attempting to flash software, I get a timeout. I measured with oscilloscope and found out that GPIO15 (TDO JTAG pin, which is also a strapping pin) is always high (also without programmer connected). I also measured GPIO0 and is it also constantly high. It seems to me that ESP is kind of stuck in a "reset loop" as strapping pins kind of "freeze".

What I have done so far:

  • I checked the 3.3V power supply, it is stable
  • I rechecked schematic several times, it appears to be correct

Here is the schematic:
ESP32 Schematic

Any idea how what this is or how I could find the bug?

EDIT:
GPIO15 (TDO) also always stay high during flashing.

Best Answer

I just found the issue: Although both, my external and on board power supply were stable, I still had too much noise at the ESP 3.3V pin. This, I believe, caused the ESP to run unstable and to reset all the time. I forgot to put a large enough decoupling capacitor directly at 3.3V and GND pin of ESP. With a capacitor in place, it works.

Related Topic