Fixed reporting of battery voltages in uORB

This commit is contained in:
Timothy Scott
2020-03-31 09:14:50 +02:00
committed by Julian Oes
parent d609639367
commit 14a61a6695
2 changed files with 13 additions and 1 deletions
+12
View File
@@ -150,6 +150,18 @@ Battery::updateBatteryStatus(hrt_abstime timestamp, float voltage_v, float curre
_battery_status.connected = connected;
_battery_status.system_source = selected_source;
_battery_status.priority = priority;
static constexpr int uorb_max_cells = sizeof(_battery_status.voltage_cell_v) / sizeof(
_battery_status.voltage_cell_v[0]);
int i;
for (i = 0; i < _params.n_cells && i < uorb_max_cells; i++) {
_battery_status.voltage_cell_v[i] = _voltage_filtered_v / _params.n_cells;
}
for (; i < uorb_max_cells; i++) {
_battery_status.voltage_cell_v[i] = 0.0f;
}
}
_battery_status.timestamp = timestamp;