Set all pins to INPUT before deep sleep

* Some pins otherwise are left as output
  And their value is kept in deep sleep
  This can cause power usage in deep sleep
* From my measurements 0.13mA
  Or, 3mAh / day extra usage
pull/120/head
Daniel Ansorregui 2021-12-11 16:14:38 +00:00 committed by Andre LaFleur
parent d94bf3ac54
commit 81ab3feb94
1 changed files with 5 additions and 2 deletions

View File

@ -53,8 +53,11 @@ void Watchy::displayBusyCallback(const void*){
}
void Watchy::deepSleep(){
display.hibernate();
displayFullInit = false; // Notify not to init it again
// Set all pins to input to avoid power leaking out
for(int i=0; i<48; i++) {
pinMode(i, INPUT);
}
esp_sleep_enable_ext0_wakeup(RTC_PIN, 0); //enable deep sleep wake on RTC interrupt
esp_sleep_enable_ext1_wakeup(BTN_PIN_MASK, ESP_EXT1_WAKEUP_ANY_HIGH); //enable deep sleep wake on button press
esp_deep_sleep_start();