diff --git a/main/kernel/drivers/WiFiDriver.hpp b/main/kernel/drivers/WiFiDriver.hpp index 6081317..0bd1f49 100644 --- a/main/kernel/drivers/WiFiDriver.hpp +++ b/main/kernel/drivers/WiFiDriver.hpp @@ -295,6 +295,8 @@ class WiFiDriver { LOGTV(Tag::WIFI, "Enabling power save mode, listen interval: %d", listenInterval); ESP_ERROR_CHECK(esp_wifi_set_ps(WIFI_PS_MAX_MODEM)); + ESP_ERROR_CHECK(esp_sleep_enable_wifi_wakeup()); + ESP_ERROR_CHECK(esp_sleep_enable_wifi_beacon_wakeup()); config.sta.listen_interval = listenInterval; } diff --git a/sdkconfig.defaults b/sdkconfig.defaults index a543a6e..aa035e1 100644 --- a/sdkconfig.defaults +++ b/sdkconfig.defaults @@ -64,6 +64,9 @@ CONFIG_PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP=y # TODO Experiment with this # CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP=y +CONFIG_ESP_PHY_MAC_BB_PD=y +CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP=y + # Recalibrate the RTC_FAST/SLOW clock less often CONFIG_PM_LIGHTSLEEP_RTC_OSC_CAL_INTERVAL=16