From c61ff05081959d8d897798dd5d032855e0d9ef31 Mon Sep 17 00:00:00 2001 From: philippe44 Date: Fri, 15 Sep 2023 18:50:26 -0700 Subject: [PATCH] take into account case with no wake option --- components/services/services.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/components/services/services.c b/components/services/services.c index 6ace648b..fd469b6c 100644 --- a/components/services/services.c +++ b/components/services/services.c @@ -176,11 +176,13 @@ void services_sleep_activate(sleep_cause_e cause) { if (sleep_config.wake_gpio & (sleep_config.wake_gpio - 1)) { ESP_LOGI(TAG, "going to sleep cause %d, wake-up on multiple GPIO, any '1' wakes up 0x%llx", cause, sleep_config.wake_gpio); esp_sleep_enable_ext1_wakeup(sleep_config.wake_gpio, ESP_EXT1_WAKEUP_ANY_HIGH); - } else { + } else if (sleep_config.wake_gpio) { int gpio = __builtin_ctz(sleep_config.wake_gpio); int level = (sleep_config.wake_level >> gpio) & 0x01; ESP_LOGI(TAG, "going to sleep cause %d, wake-up on GPIO %d level %d", cause, gpio, level); esp_sleep_enable_ext0_wakeup(gpio, level); + } else { + ESP_LOGW(TAG, "going to sleep cause %d, no wake-up option", cause); } // we need to use a timer in case the same button is used for sleep and wake-up and it's "pressed" vs "released" selected