From 11fece27d32c249747d39409de167dbb1ce4161f Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 25 Nov 2023 08:24:39 +1100 Subject: [PATCH] AP_BattMonitor: fixed battery percentage with aux info when we have aux battery information we had assumed the CAN device would provide the battery remaining percentage. We should obey the "do not use CAN SoC" with or without an AUX message This fixes CAN battery monitors with a cell monitor --- libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp b/libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp index de32e5ef86..b9bd576891 100644 --- a/libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp +++ b/libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp @@ -166,7 +166,9 @@ void AP_BattMonitor_UAVCAN::update_interim_state(const float voltage, const floa const uint32_t tnow = AP_HAL::micros(); - if (!_has_battery_info_aux || _mppt.is_detected) { + if (!_has_battery_info_aux || + _mppt.is_detected || + option_is_set(AP_BattMonitor_Params::Options::Ignore_UAVCAN_SoC)) { const uint32_t dt_us = tnow - _interim_state.last_time_micros; // update total current drawn since startup