mirror of
https://github.com/dalathegreat/Battery-Emulator.git
synced 2025-10-05 10:49:42 +02:00
Make RJXZS protocol handle reboots gracefully with default values
This commit is contained in:
parent
555cc16a11
commit
dd1ee5139d
2 changed files with 6 additions and 12 deletions
|
@ -72,14 +72,8 @@ void RjxzsBms::update_values() {
|
|||
|
||||
datalayer.battery.status.temperature_max_dC = max_temp;
|
||||
|
||||
// The cellvoltages[] array can contain 0s inside it
|
||||
populated_cellvoltages = 0;
|
||||
for (int i = 0; i < MAX_AMOUNT_CELLS; ++i) {
|
||||
if (cellvoltages[i] > 0) { // We have a measurement available
|
||||
datalayer.battery.status.cell_voltages_mV[populated_cellvoltages] = cellvoltages[i];
|
||||
populated_cellvoltages++;
|
||||
}
|
||||
}
|
||||
//Map all cell voltages to the global array
|
||||
memcpy(datalayer.battery.status.cell_voltages_mV, cellvoltages, MAX_AMOUNT_CELLS * sizeof(uint16_t));
|
||||
|
||||
datalayer.battery.info.number_of_cells = populated_cellvoltages; // 1-192S
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ class RjxzsBms : public CanBattery {
|
|||
|
||||
uint8_t mux = 0;
|
||||
bool setup_completed = false;
|
||||
uint16_t total_voltage = 0;
|
||||
uint16_t total_voltage = 3700;
|
||||
int16_t total_current = 0;
|
||||
uint16_t total_power = 0;
|
||||
uint16_t battery_usage_capacity = 0;
|
||||
|
@ -83,9 +83,9 @@ class RjxzsBms : public CanBattery {
|
|||
uint16_t low_voltage_power_outage_delayed = 0;
|
||||
uint16_t num_of_triggering_protection_cells = 0;
|
||||
uint16_t balanced_reference_voltage = 0;
|
||||
uint16_t minimum_cell_voltage = 0;
|
||||
uint16_t maximum_cell_voltage = 0;
|
||||
uint16_t cellvoltages[MAX_AMOUNT_CELLS];
|
||||
uint16_t minimum_cell_voltage = 3300;
|
||||
uint16_t maximum_cell_voltage = 3300;
|
||||
uint16_t cellvoltages[MAX_AMOUNT_CELLS] = {0};
|
||||
uint8_t populated_cellvoltages = 0;
|
||||
uint16_t accumulated_total_capacity_high = 0;
|
||||
uint16_t accumulated_total_capacity_low = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue