m5paper_deep_sleep.ino
Configura el microcontrolador para sueño profundo con despertar externo, crucial para aplicaciones con batería.
Usa funciones ESP-IDF a través de Arduino. GPIO39 a menudo está vinculado al táctil. Tras despertar, el programa se reinicia completamente. La pantalla e-Ink conserva la imagen sin alimentación.
m5paper_deep_sleep.ino
#include <M5EPD.h>
#define WAKEUP_PIN 39 // Pin tactile ou bouton
void setup() {
M5.begin();
// Configuration pour le réveil
esp_sleep_enable_ext0_wakeup(GPIO_NUM_39, 0); // Réveil si pin LOW
M5.EPD.Clear(true);
M5.EPD.WriteFullFrameBuffer();
Serial.println("Entering Deep Sleep...");
delay(1000);
esp_deep_sleep_start();
}
void loop() {
// Ne s'exécute pas après deep sleep, le code redémarre dans setup()
}