diff options
Diffstat (limited to 'esp8266/modesp.c')
-rw-r--r-- | esp8266/modesp.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/esp8266/modesp.c b/esp8266/modesp.c index 0c6cc423e..99f063a75 100644 --- a/esp8266/modesp.c +++ b/esp8266/modesp.c @@ -46,6 +46,7 @@ #include "espneopixel.h" #include "espapa102.h" #include "modpyb.h" +#include "modpybrtc.h" #define MODESP_ESPCONN (0) @@ -540,8 +541,11 @@ STATIC mp_obj_t esp_sleep_type(mp_uint_t n_args, const mp_obj_t *args) { STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(esp_sleep_type_obj, 0, 1, esp_sleep_type); STATIC mp_obj_t esp_deepsleep(mp_uint_t n_args, const mp_obj_t *args) { + uint32_t sleep_us = n_args > 0 ? mp_obj_get_int(args[0]) : 0; + // prepare for RTC reset at wake up + rtc_prepare_deepsleep(sleep_us); system_deep_sleep_set_option(n_args > 1 ? mp_obj_get_int(args[1]) : 0); - system_deep_sleep(n_args > 0 ? mp_obj_get_int(args[0]) : 0); + system_deep_sleep(sleep_us); return mp_const_none; } STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(esp_deepsleep_obj, 0, 2, esp_deepsleep); |