From 1cbe0ce410b4223eb6e12fd155f2f3ba95fe0530 Mon Sep 17 00:00:00 2001 From: Thomas Kolb Date: Sat, 15 Oct 2022 21:48:15 +0200 Subject: [PATCH] Prevent deep sleep during BMP280 communication --- src/main.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main.c b/src/main.c index a78122a..8283aa4 100644 --- a/src/main.c +++ b/src/main.c @@ -369,19 +369,21 @@ int main(void) charge_control_update(timebase_ms, &meas_data); // deep sleep control - if(charge_control_is_idle()) { - if(!charge_control_was_idle) { - charge_control_was_idle = true; - charge_control_idle_since = timebase_ms; - } else { - // charge control already idle - if((timebase_ms - charge_control_idle_since) > FLASH_CONFIG_DEEPSLEEP_DELAY) { - low_power_mode(FLASH_CONFIG_DEEPSLEEP_DURATION); - charge_control_was_idle = false; + if(bmp280_state != BMP280_MEASURING) { // general blockers + if(charge_control_is_idle()) { + if(!charge_control_was_idle) { + charge_control_was_idle = true; + charge_control_idle_since = timebase_ms; + } else { + // charge control already idle + if((timebase_ms - charge_control_idle_since) > FLASH_CONFIG_DEEPSLEEP_DELAY) { + low_power_mode(FLASH_CONFIG_DEEPSLEEP_DURATION); + charge_control_was_idle = false; + } } + } else { + charge_control_was_idle = false; } - } else { - charge_control_was_idle = false; } }