My device (with ESP32-S3) sometimes doesn’t boot normally. It goes into USB Download mode and waits.
So my device doesn’t power on.
It happens randomly. I reboot 10 times and it happens maybe 1 time.
Unfortunately I left GPIO0 floating. It has a 5cm PCB trace on it, going to the programming header.
GPIO0 has an internal 45k pull-up and I thought its fine.
Could my random boot issues still be caused by the floating GPIO0?
The devices are sealed and I cannot add an external pull up. So I‘m looking for some way to fix this in software. After trying for about 10 days now I‘m running out of ideas.
Any suggestions on what I could try to avoid it going into USB download?
GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
-
- Posts: 9835
- Joined: Thu Nov 26, 2015 4:08 am
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
If the issue is on power-on, there's nothing much you can do, unfortunately.
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
Ok.
Do you think the floating GPIO0 is the problem? Maybe the internal pull-up is not enough?
Do you think the floating GPIO0 is the problem? Maybe the internal pull-up is not enough?
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
Can you share your schematic, particularly anything relevant to the EN pin? Sounds like the kind of behaviour I would expect if there was no RC delay on EN.
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
Yeah that'll likely be the problem. You're relying on EN staying low for long enough through just 1k with only 0.1uF of capacitance. This is far below the recommended 10k+1uF iirc. IO0 simply doesn't have enough time to consistently reach logic high before EN does.
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
Makes sense. Ok, thank you.
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
When I disable Download mode via efuse, would the device boot when pins are set to download mode?
Or would it print an error and stop?
Or
Could I perhaps change the flash wait time to 0 so the chip will not check for pins? Or set a long wait time to give gpio0 time to go high?
Or would it print an error and stop?
Or
Could I perhaps change the flash wait time to 0 so the chip will not check for pins? Or set a long wait time to give gpio0 time to go high?
-
- Posts: 9835
- Joined: Thu Nov 26, 2015 4:08 am
Re: GPIO0 floating on ESP32-S3 Wroover…why does it go into USB Download?
Yes.
I'm 99% sure the bootstrap pins are latched before the flash wait time stuff is executed, so that wouldn't work either.Could I perhaps change the flash wait time to 0 so the chip will not check for pins? Or set a long wait time to give gpio0 time to go high?
Who is online
Users browsing this forum: MicroController and 47 guests