Hi,
To my current undestanding, waking up from deep sleep while in a ESP-IDF app involves:
-Launching first stage bootloader from ROM. It initializes the flash and reads the second stage bootloader
-Launching second stage bootloader, which sets up the application and starts it
-Launching the app
Also, for what I know, second stage bootloader is part of the IDF.
In the ESP32 documentation wake up latency from deep sleep is documented at <1ms. Reading the flash and such shouldn't take much longer. I've seen people reporting wake up times of ~20ms.
I need my app to wake up as fast as possible with as little overhead as possible. My app essentially needs to wake up the main cores once every 1-2 seconds and go back to deep sleep. Then, once in a month or so it should connect to wifi.
I would like normal wakeups to be as fast as possible, with the ESP32 starting as bare metal as possible with no overhead and even bypassing second stage bootloader, with all radios off and a slow clock speed (8 MHz or so would be fine) but still be able to use WIFI when I need it.
I can't use RTC_SLOW memory for a wakeup stub, as the code is fast but long and wouldn't fit, and I already use all the available RTC_SLOW memory for ULP buffering.
Any suggestion? I'm new to this platform and currently evaluating if i'ts viable for the application.
Decreasing ESP32 wake up time and power consumption after deep sleep
Who is online
Users browsing this forum: No registered users and 194 guests