From 4dddfa3cbbc4f76e22f4a1b724fffb90726861ed Mon Sep 17 00:00:00 2001 From: m1nl Date: Tue, 24 Jun 2025 09:56:37 +0200 Subject: [PATCH] implement lower cap on power thread interval --- src/Power.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Power.cpp b/src/Power.cpp index a2e23a8ef..abe44d9e5 100644 --- a/src/Power.cpp +++ b/src/Power.cpp @@ -889,12 +889,20 @@ int32_t Power::runOnce() #ifdef ARCH_ESP32 int Power::beforeLightSleep(void *unused) { - setInterval(config.power.ls_secs * 1000UL); + // ensure we won't run the thread when light sleeping + unsigned long interval = config.power.ls_secs; + + if (interval < 20) { + interval = 20; + } + + setInterval(interval * 1000UL); return 0; } int Power::afterLightSleep(esp_sleep_wakeup_cause_t cause) { + // restore default thread interval after light sleep setInterval(20 * 1000UL); return 0; }