summaryrefslogtreecommitdiff
path: root/src/system_fsm
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-03-13 17:07:03 +1100
committerjacqueline <me@jacqueline.id.au>2024-03-13 17:07:03 +1100
commit2eb3fd53d7bf32cffb1569d6b2b0c1fbc5b9ed2c (patch)
tree00da883fe9b0cd08c68d777c77398595cb728c1d /src/system_fsm
parenteba5adeb8cc606b4d685132248c6481c0aca53f6 (diff)
downloadtangara-fw-2eb3fd53d7bf32cffb1569d6b2b0c1fbc5b9ed2c.tar.gz
Update the battery status when plugging/unplugging
Diffstat (limited to 'src/system_fsm')
-rw-r--r--src/system_fsm/include/system_events.hpp1
-rw-r--r--src/system_fsm/system_fsm.cpp6
2 files changed, 2 insertions, 5 deletions
diff --git a/src/system_fsm/include/system_events.hpp b/src/system_fsm/include/system_events.hpp
index 32394958..1be03f82 100644
--- a/src/system_fsm/include/system_events.hpp
+++ b/src/system_fsm/include/system_events.hpp
@@ -57,7 +57,6 @@ struct SamdUsbMscChanged : tinyfsm::Event {
bool en;
};
-struct ChargingStatusChanged : tinyfsm::Event {};
struct BatteryStateChanged : tinyfsm::Event {
battery::Battery::BatteryState new_state;
};
diff --git a/src/system_fsm/system_fsm.cpp b/src/system_fsm/system_fsm.cpp
index 977f4a6d..5a1ccf8c 100644
--- a/src/system_fsm/system_fsm.cpp
+++ b/src/system_fsm/system_fsm.cpp
@@ -84,10 +84,8 @@ void SystemState::react(const internal::SamdInterrupt&) {
auto charge_status = samd.GetChargeStatus();
auto usb_status = samd.GetUsbStatus();
- if (charge_status != prev_charge_status) {
- ChargingStatusChanged ev{};
- events::System().Dispatch(ev);
- events::Ui().Dispatch(ev);
+ if (charge_status != prev_charge_status && sServices) {
+ sServices->battery().Update();
}
if (usb_status != prev_usb_status) {
ESP_LOGI(kTag, "usb status changed");