mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-23 10:46:31 +00:00
Added DeepSleep for ESP32
First implementation of TIME based Deepsleep for ESP32 processors
This commit is contained in:
parent
b2a86d3148
commit
490569ccac
@ -71,7 +71,13 @@ void DeepSleepReInit(void)
|
||||
AddLog_P2(LOG_LEVEL_ERROR, PSTR("DSL: Remain DeepSleep %d"), RtcSettings.ultradeepsleep);
|
||||
RtcSettingsSave();
|
||||
RtcRebootReset();
|
||||
ESP.deepSleep(100 * RtcSettings.deepsleep_slip * (DEEPSLEEP_MAX_CYCLE < RtcSettings.ultradeepsleep ? DEEPSLEEP_MAX_CYCLE : RtcSettings.ultradeepsleep), WAKE_RF_DEFAULT);
|
||||
#ifdef ESP8266
|
||||
ESP.deepSleep(100 * RtcSettings.deepsleep_slip * (DEEPSLEEP_MAX_CYCLE < RtcSettings.ultradeepsleep ? DEEPSLEEP_MAX_CYCLE : RtcSettings.ultradeepsleep), WAKE_RF_DEFAULT);
|
||||
#endif
|
||||
#ifdef ESP32
|
||||
esp_sleep_enable_timer_wakeup(100 * RtcSettings.deepsleep_slip * (DEEPSLEEP_MAX_CYCLE < RtcSettings.ultradeepsleep ? DEEPSLEEP_MAX_CYCLE : RtcSettings.ultradeepsleep));
|
||||
esp_deep_sleep_start();
|
||||
#endif
|
||||
yield();
|
||||
// Sleeping
|
||||
}
|
||||
@ -136,8 +142,13 @@ void DeepSleepStart(void)
|
||||
WifiShutdown();
|
||||
RtcSettings.ultradeepsleep = RtcSettings.nextwakeup - UtcTime();
|
||||
RtcSettingsSave();
|
||||
|
||||
#ifdef ESP8266
|
||||
ESP.deepSleep(100 * RtcSettings.deepsleep_slip * deepsleep_sleeptime);
|
||||
#endif
|
||||
#ifdef ESP32
|
||||
esp_sleep_enable_timer_wakeup(100 * RtcSettings.deepsleep_slip * deepsleep_sleeptime);
|
||||
esp_deep_sleep_start();
|
||||
#endif
|
||||
yield();
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user