m5paper_deep_sleep_timer.ino
Illustre la gestion de l'énergie avec le mode deep sleep de l'ESP32 pour les applications sur batterie.
L'ESP32-D0WDQ6 supporte le deep sleep. Cette fonction réduit la consommation à quelques microampères. Le réveil se fait par timer (RTC). L'écran e-Ink conserve l'image sans alimentation, ce qui est idéal pour les affichages statiques périodiques.
m5paper_deep_sleep_timer.ino
#include <M5EPD.h>
M5EPD m5;
void setup() {
m5.begin();
Serial.begin(115200);
Serial.println("Awake");
m5.clear();
m5.drawCentreString("Waking up...", 480, 270, 4);
m5.updateFrame();
delay(1000);
// Configure RTC for deep sleep wake up
// Wake up every 60 seconds
esp_sleep_enable_timer_wakeup(60 * 1000000);
// Turn off screen to save power before sleeping
m5.powerOff(); // Note: Check if powerOff is available, otherwise just stop update
Serial.println("Going to sleep...");
esp_deep_sleep_start();
}
void loop() {
// Loop is not reached after deep sleep start
}