4
\$\begingroup\$

My ESP32 NodeMCU need to press boot when upload new program from Arduino IDE. However, many sources suggest that we can upload without pressing any button by simply adding capacitor between EN pin and ground. But how? What is going on? Why does it work that way?

Note: I know question like these seem trivia, but most tutorials do not explain in detail about this and I really want to know.

Transistor
187k16 gold badges206 silver badges431 bronze badges
asked Jun 6, 2021 at 17:43
\$\endgroup\$
1
  • \$\begingroup\$ we can upload without pressing any button by simply adding capacitor between EN pin and ground ... you probably have to do something else to start the upload \$\endgroup\$ Commented Jun 6, 2021 at 18:28

1 Answer 1

5
\$\begingroup\$

I found the schematics for that ESP32 board on this page:

https://github.com/espressif/arduino-esp32/issues/544

Schematics: https://github.com/espressif/arduino-esp32/files/1215494/SchematicsforESP32.pdf

Here is basically what's going on:

schematic

simulate this circuit – Schematic created using CircuitLab

The Arduino IDE brings DTR high in order to signal the ESP32 that it wants to upload a new firmware image. The intent is to bring EN low. However, the software is likely bringing DTR high for too short of a time.

With the cap added bringing DTR high for even a very short time will quickly discharge the cap. It will then slowly charge back through the 10K resistor. This means that the EN line will remain low for a longer period of time.

answered Jun 6, 2021 at 18:26
\$\endgroup\$

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.