Der Deep-Sleep Modus

In diesem Artikel zeige ich Dir, wie Du den Deep-Sleep Modus des ESP8266 für eine längere Akku-Nutzung einsetzen kannst. Der „Deep-Sleep“ Modus setzt das ESP8266-Modul für eine bestimmt Zeit in einen extrem stromsparenden Modus, in der nichts weiter ausgeführt wird. Nur ein Wakeup-Timer und die integrierte Echtzeituhr (RTC) laufen während der Deep-Sleep-Phase. Nach der vorher definierten Zeit wird ein Signal gesendet, womit das ESP8266-Modul neu startet – deshalb muss GPIO16 auch mit dem Reset-Pin verbunden werden.

Im Sketch können wir den Deep-Sleep Modus über folgenden Funktionsaufruf aktivieren:

ESP.deepSleep(10000) // Dauer in Millisekunden, 10000 = 10 Sekunden

 

Beispiel:

void setup() 
{
  Serial.begin(115200);
  Serial.setTimeout(2000);

  while(!Serial) { }
  
  Serial.println("Aufgewacht!");
  
  // ...

  Serial.println("Für 20 Sekunden schlafen gehen");
  ESP.deepSleep(20000); 
}

void loop() 
{
}

 

Um den Deep-Sleep Modus nun also zu aktivieren, müssen wir GPIO16 (D0) mit dem Reset (RST) Pin verbinden. Wichtig: Die Verbindung darf nicht während dem Flash-Vorgang bestehen.

 

Ich hoffe euch gefällt dieser Artikel. Über Kommentare unterhalb des Artikels oder per E-Mail freue ich mich wie immer 🙂

Matthias Korte

Hauptberuflich Software-Entwickler und seit einigen Jahren Smart-Home Fan. Angefangen hat alles mit einem RaspberryMatic und einer schaltbaren Steckdose. Mittlerweile habe ich einige Steckdosen, Sensoren, und Thermostate sowie ioBroker zur Visualisierung im Einsatz.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

* Die Checkbox für die Zustimmung zur Speicherung ist nach DSGVO zwingend.

Ich akzeptiere