Understanding ESP32 power saving modes

Thread Starter

zazas321

Joined Nov 29, 2015
936
Hello. I am planning on doing a project which requires to save as much power as possible. I plan to use ESP32 microcontrollers since I have programmed them before and have some experience. I want to confirm:

I read this article which explains different power saving modes.
https://lastminuteengineers.com/esp32-sleep-modes-power-consumption/
I am mostly interested in deep sleep and hibernation modes.

In my application, I need to wake up the device every 2 hours, read some sensors and send some data to the server. For that, I assume the hibernation mode is fine since I can configure a timer to wake up my device every 2 hours.


However, on top of that, I also must be able to wake the device up from an external interrupt ( accelerometer). An ultra low power accelerometer will also be used and if the movement is detected, the accelerometer will generate an interrupt to singal the ESP32 device that it needs to wake up even though 2 hours have not yet passed.

Can this be achieved in deep sleep mode? I am trying to learn mode about ULP processor and how can it be used.

Any help is appreciated . Thanks
 

Thread Starter

zazas321

Joined Nov 29, 2015
936
Thanks indeed it was as simple as adding 2 wakeup sources:
esp_sleep_enable_ext0_wakeup(GPIO_NUM_33,1); //1 = High, 0 = Low
esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * uS_TO_S_FACTOR);
 

Thread Starter

zazas321

Joined Nov 29, 2015
936
There is not very much information regarding using the ULP processor. I believe the reason for that is that they have to be programmed using assembly and it seems that not many people like that. Fortunately, for my application I do not think I need to use ULP since I can just simply use an external interrupt to wake my ESP32 device.
 

Jesper V.

Joined Mar 9, 2021
1
Here are some links to a site regarding power saving on the WiFi connection in battery
operated devices which periodically must transmit data.
This time the links works (I hope). It is quite interesting reading, backed by measurements
done on his hardware.


Reducing WiFi power consumption on ESP8266, part 1 – OppoverBakke

Reducing WiFi power consumption on ESP8266, part 2 – OppoverBakke

Reducing WiFi power consumption on ESP8266, part 3 – OppoverBakke

Further reducing power consumption on ESP8266 – OppoverBakke

ESP8266 WiFi power reduction – Avoiding network scan – OppoverBakke

BR,
Jesper
 
Top