esp32c3 strapping pins, sometimes stuck in bootloader
Posted: Thu Mar 20, 2025 7:38 pm
Hello,
have been following the forum as reader, now need to ask my first question.
For my DIY project which uses micropython on ESP32c3 wroom module I am having bit of boot problems:
The project is solar powered w/o battery backup, every evening and morning unavoidable there will be brown out situations.
The relevant GPIOs:
[*]ENABLE: 10k pull up and 1uF cap
[*]GPIO9 is either floating or GND by button (issue here?, see below)
[*]GPIO2 was floating (mistake), reworked with 10k pull up
[*]GPIO8 is floating
The programming is done over USB (not uart)
Issue: In rare cases (every few days) the esp application does not load, with esptool I
[*]can connect normally, device is in bootloader and responsive
[*]just issuing "hard_reset" resets but gets again into bootloader (even in situations in which the power supply is now fully stable)
[*]issuing "watchdog_reset" (thanks for this new great feature btw) resets the device and application is loaded normally
By mistake I had not pulled up GPIO2 this made the issue way more pronounced, but still with pull up the issue is not completely gone.
I am thankful for your advice how to get this stable. Do you think the internal PU for GPIO9 is too weak and a 10k pull up will already sort this out or did I forget something else.
BTW: I have an external PMIC with power good indicator, last resort I thought of could be to only release CHIP_EN when power is good, otherwise reset. but I am unsure if this is a good idea / needed.
Thanks for your opinions!
have been following the forum as reader, now need to ask my first question.
For my DIY project which uses micropython on ESP32c3 wroom module I am having bit of boot problems:
The project is solar powered w/o battery backup, every evening and morning unavoidable there will be brown out situations.
The relevant GPIOs:
[*]ENABLE: 10k pull up and 1uF cap
[*]GPIO9 is either floating or GND by button (issue here?, see below)
[*]GPIO2 was floating (mistake), reworked with 10k pull up
[*]GPIO8 is floating
The programming is done over USB (not uart)
Issue: In rare cases (every few days) the esp application does not load, with esptool I
[*]can connect normally, device is in bootloader and responsive
[*]just issuing "hard_reset" resets but gets again into bootloader (even in situations in which the power supply is now fully stable)
[*]issuing "watchdog_reset" (thanks for this new great feature btw) resets the device and application is loaded normally
By mistake I had not pulled up GPIO2 this made the issue way more pronounced, but still with pull up the issue is not completely gone.
I am thankful for your advice how to get this stable. Do you think the internal PU for GPIO9 is too weak and a 10k pull up will already sort this out or did I forget something else.
BTW: I have an external PMIC with power good indicator, last resort I thought of could be to only release CHIP_EN when power is good, otherwise reset. but I am unsure if this is a good idea / needed.
Thanks for your opinions!