UPLOADING? What is the Arduino IDE doing "under the hood"
Posted: Sun Mar 15, 2020 9:47 am
Hi,
I believe (and please correct me if I'm mistaken), that when I click "Upload" in the Arduino IDE (Ver 1.18.12) with the ESP32 core selected, the esptool.py is invoked. This invocation string is something along the lines of:
My question is this:
What do the two parameters --before default_reset & --after hard_reset do?
I can make a guess that --after hard-reset toggles the EN low then high while keeping the GPIO0 high (normal running)?
I could also assume that --before default_reset toggles the EN line while keeping the GPIO0 line low on the rising edge of EN (bootload mode)?
I am not a Python programmer, so reverse engineering esptool.py is beyond my abilities! There must me a definition of the upload (hardware) protocol somewhere? Or... can some knowledgeable soul, just give me a tip on where to look in the FTDIFT230x datasheet.
Again my guess is that, esptool.py "bit-bangs" the RTS# & CTS# lines?
Regards, Martin
I believe (and please correct me if I'm mistaken), that when I click "Upload" in the Arduino IDE (Ver 1.18.12) with the ESP32 core selected, the esptool.py is invoked. This invocation string is something along the lines of:
Code: Select all
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset <remaining parameters removed for brevity>
What do the two parameters --before default_reset & --after hard_reset do?
I can make a guess that --after hard-reset toggles the EN low then high while keeping the GPIO0 high (normal running)?
I could also assume that --before default_reset toggles the EN line while keeping the GPIO0 line low on the rising edge of EN (bootload mode)?
I am not a Python programmer, so reverse engineering esptool.py is beyond my abilities! There must me a definition of the upload (hardware) protocol somewhere? Or... can some knowledgeable soul, just give me a tip on where to look in the FTDIFT230x datasheet.
Again my guess is that, esptool.py "bit-bangs" the RTS# & CTS# lines?
Regards, Martin