When programming the ESP32-CAM with an FTDI, I proceed as follows:
Connect
GPIO0
toGND
.Reset the ESP32-CAM. (by cutting power)
Run:
python2 $(which idf.py) -p /dev/ttyUSB0 flash --baud 2000000
Afterwards, to monitor output:
Remove
GPIO0
fromGND
.Reset the ESP32-CAM. (as above)
Run:
python2 $(which idf.py) -p /dev/ttyUSB0 monitor
Is there a way to do all that without touching any cables or buttons?
Further information:
I reset by cutting power because the reset button is inaccessible with the ESP32-CAM on a breadboard.
I was hoping that the CTS or DTR pins on the FTDI could somehow be used. The ESP32-CAM will not be powered from the FTDI. It will be powered from an Adafruit 1000c booster, which has an enable pin.
-
\$\begingroup\$ OTA is the way to upload without touching the board. or the auto-reset circuit used on dev boards with USB \$\endgroup\$Juraj– Juraj2019年11月15日 13:41:10 +00:00Commented Nov 15, 2019 at 13:41
2 Answers 2
I was hoping that the CTS or DTR pins on the FTDI could somehow be used. The ESP32-CAM will not be powered from the FTDI. It will be powered from an Adafruit 1000c booster, which has an enable pin
Indeed, this is possible.
You can use either the DTR or RTS pin to drive GPIOO, which is available as CSI MCLK
on pin 6 of the same header 8 where you find the serial signals.
And you can use the other signal for the enable to your power supply.
esp-tool is python to begin with, and seems to manipulate these signals, so you could merely modify the code.
Or, if you want to continue to use them in the usual way, you could build a little adapter board to put between the FTDI and the ESP32-CAM, with the open collector transistor inverters as seen on the more common ESP dev boards with the CP210x interface.
But there is no need to modify the ESP32-CAM board itself.
if these is still actual I made auto reset board with FT232RL module. Scheme is in the picture. MOD2 is FT232RL module (red one), put jumper on +3V3! Another little thing is that CAM module do not have RESET pin so i soldered wire on ESP32 pin (on other picture) and connect it on J2 pin (on RESET signal from BC547 Q2). Have a nice day all!
p.s.: I did not change names of RX and TX. It should be FT232_RX and FT232_TX and not CH340.
Explore related questions
See similar questions with these tags.