From f03093e5c27555c227e9c04114f59062c8289361 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Mon, 16 Oct 2023 08:50:50 +1100 Subject: [PATCH] Remove early-exit when there's no battery SAMD is currently returning incorrect states, so this is the cause of the battery meter often reading 0 when not plugged in --- src/battery/battery.cpp | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/battery/battery.cpp b/src/battery/battery.cpp index 69ca9a7d..b3567ee5 100644 --- a/src/battery/battery.cpp +++ b/src/battery/battery.cpp @@ -57,13 +57,7 @@ auto Battery::Update() -> void { std::lock_guard lock{state_mutex_}; auto charge_state = samd_.GetChargeStatus(); - if (charge_state && *charge_state == ChargeStatus::kNoBattery) { - if (state_) { - EmitEvent(); - } - state_.reset(); - return; - } + // FIXME: So what we *should* do here is measure the actual real-life // time from full battery -> empty battery, store it in NVS, then rely on // that. If someone could please do this, it would be lovely. Thanks!