Repository navigation
|
Hello! Got a challenging one. I'm developing for a ESP32S3 WROOM1 N16R16 - custom board with a workspace 'boards/' definition. I successfully configured deep sleep when flashing the app directly. Current draw is ~140 uA (LDO and other bits on board create higher than ESP32S3 datasheet 8 uA, this is ok). If I build with I've configured to use the SPIRAM with Deep sleep is entered with I wonder if anyone with experience developing the ESP32 support has any ideas on what could being configured differently with MCUboot? I feel like it must be something at the MCUboot init stage and jump to the app. What I've tried but doesn't seem to have made a difference:
Thanks! |
Replies: 6 comments 2 replies
|
I think I got to the problem after checking peripheral register stages and finding no difference, manually setting esp_sleep_pd_config(..) for peripherals etc. with no fix. I was calling zephyr/soc/espressif/esp32s3/poweroff.c Line 10 in 3568e1b I believe the issue is zephyr/soc/espressif/esp32s3/poweroff.c Line 13 in 3568e1b esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON);.
I'm not sure why this is forced since it's handled in the HAL depending on if EXT0 is used: https://github.com/zephyrproject-rtos/hal_espressif/blob/c95b9e4781390ca2eafe10342b69fb11673e514e/components/esp_system/sleep_modes.c#L1280 |
|
Thanks for pinging this. I understand it's a hard thing to suggest and debug. Whilst using I've been able to reproduce this with the deep_sleep sample with a ESP32S3 WROOM 1U DevKitC (D5 and R24 removed for powering from power profiler). The difference on a esp32s3_devkitc is ~ 10 uA between
|
|
I have spent a couple of days isolating a similar situation on my ESP32 WROOM32E custom board. Without mcuboot/sysbuild the idle current was 0.8mA in deep sleep (high due to some known board issues), but building with it the current became 2.2mA. I confirmed mcuboot wasn't enabling anything extra that my app wasn't already configuring, force/power down flags all the same, and registers associated with sleep the same. In the end I methodically tracked the code through modules Commenting out the check of I haven't investigated yet what is causing this flag to be set, but the Espressif TODO: IDF-7370 is a little suspicious! Not sure how relates to your resolution, perhaps just a coincidence with the same magnitude issue - either way hopefully the above will help others who find this page. |



Yet to test but #118348 sounds like a potential fix.