mirror of
https://github.com/dalathegreat/Battery-Emulator.git
synced 2025-10-05 10:49:42 +02:00
Add more sanity checking to cellvoltage reading
This commit is contained in:
parent
3f993f7d23
commit
bf08d5b852
2 changed files with 38 additions and 24 deletions
|
@ -420,7 +420,9 @@ void handle_incoming_can_frame_battery(CAN_frame rx_frame) {
|
||||||
cellvoltages_mv[87] = (rx_frame.data.u8[4] * 20);
|
cellvoltages_mv[87] = (rx_frame.data.u8[4] * 20);
|
||||||
cellvoltages_mv[88] = (rx_frame.data.u8[5] * 20);
|
cellvoltages_mv[88] = (rx_frame.data.u8[5] * 20);
|
||||||
cellvoltages_mv[89] = (rx_frame.data.u8[6] * 20);
|
cellvoltages_mv[89] = (rx_frame.data.u8[6] * 20);
|
||||||
cellvoltages_mv[90] = (rx_frame.data.u8[7] * 20);
|
if (rx_frame.data.u8[7] > 4) { // Data only valid on 98S
|
||||||
|
cellvoltages_mv[90] = (rx_frame.data.u8[7] * 20); // Perform extra checks
|
||||||
|
}
|
||||||
} else if (poll_data_pid == 5) {
|
} else if (poll_data_pid == 5) {
|
||||||
batterySOH = ((rx_frame.data.u8[2] << 8) + rx_frame.data.u8[3]);
|
batterySOH = ((rx_frame.data.u8[2] << 8) + rx_frame.data.u8[3]);
|
||||||
}
|
}
|
||||||
|
@ -438,15 +440,29 @@ void handle_incoming_can_frame_battery(CAN_frame rx_frame) {
|
||||||
cellvoltages_mv[61] = (rx_frame.data.u8[3] * 20);
|
cellvoltages_mv[61] = (rx_frame.data.u8[3] * 20);
|
||||||
cellvoltages_mv[62] = (rx_frame.data.u8[4] * 20);
|
cellvoltages_mv[62] = (rx_frame.data.u8[4] * 20);
|
||||||
cellvoltages_mv[63] = (rx_frame.data.u8[5] * 20);
|
cellvoltages_mv[63] = (rx_frame.data.u8[5] * 20);
|
||||||
} else if (poll_data_pid == 4) {
|
} else if (poll_data_pid == 4) { // Data only valid on 98S
|
||||||
cellvoltages_mv[91] = (rx_frame.data.u8[1] * 20);
|
if (rx_frame.data.u8[1] > 4) { // Perform extra checks
|
||||||
cellvoltages_mv[92] = (rx_frame.data.u8[2] * 20);
|
cellvoltages_mv[91] = (rx_frame.data.u8[1] * 20);
|
||||||
cellvoltages_mv[93] = (rx_frame.data.u8[3] * 20);
|
}
|
||||||
cellvoltages_mv[94] = (rx_frame.data.u8[4] * 20);
|
if (rx_frame.data.u8[2] > 4) { // Perform extra checks
|
||||||
cellvoltages_mv[95] = (rx_frame.data.u8[5] * 20);
|
cellvoltages_mv[92] = (rx_frame.data.u8[2] * 20);
|
||||||
} else if (poll_data_pid == 5) {
|
}
|
||||||
cellvoltages_mv[96] = (rx_frame.data.u8[4] * 20);
|
if (rx_frame.data.u8[3] > 4) { // Perform extra checks
|
||||||
cellvoltages_mv[97] = (rx_frame.data.u8[5] * 20);
|
cellvoltages_mv[93] = (rx_frame.data.u8[3] * 20);
|
||||||
|
}
|
||||||
|
if (rx_frame.data.u8[4] > 4) { // Perform extra checks
|
||||||
|
cellvoltages_mv[94] = (rx_frame.data.u8[4] * 20);
|
||||||
|
}
|
||||||
|
if (rx_frame.data.u8[5] > 4) { // Perform extra checks
|
||||||
|
cellvoltages_mv[95] = (rx_frame.data.u8[5] * 20);
|
||||||
|
}
|
||||||
|
} else if (poll_data_pid == 5) { // Data only valid on 98S
|
||||||
|
if (rx_frame.data.u8[4] > 4) { // Perform extra checks
|
||||||
|
cellvoltages_mv[96] = (rx_frame.data.u8[4] * 20);
|
||||||
|
}
|
||||||
|
if (rx_frame.data.u8[5] > 4) { // Perform extra checks
|
||||||
|
cellvoltages_mv[97] = (rx_frame.data.u8[5] * 20);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 0x26: //Sixth datarow in PID group
|
case 0x26: //Sixth datarow in PID group
|
||||||
|
|
|
@ -317,16 +317,16 @@ String advanced_battery_processor(const String& var) {
|
||||||
#endif //CELLPOWER_BMS
|
#endif //CELLPOWER_BMS
|
||||||
|
|
||||||
#ifdef KIA_HYUNDAI_64_BATTERY
|
#ifdef KIA_HYUNDAI_64_BATTERY
|
||||||
/*
|
content += "<h4>Cells: " + String(datalayer_extended.KiaHyundai64.total_cell_count) + "S</h4>";
|
||||||
content += "<h4>Cells: " + String(datalayer_extended.KiaHyundai64.total_cell_count) + "S</h4>";
|
content += "<h4>12V voltage: " + String(datalayer_extended.KiaHyundai64.battery_12V / 10.0, 1) + "</h4>";
|
||||||
content += "<h4>12V voltage: " + String(datalayer_extended.KiaHyundai64.battery_12V) + "</h4>";
|
content += "<h4>Waterleakage: " + String(datalayer_extended.KiaHyundai64.waterleakageSensor) + "</h4>";
|
||||||
content += "<h4>Waterleakage: " + String(datalayer_extended.KiaHyundai64.waterleakageSensor) + "</h4>";
|
content +=
|
||||||
content += "<h4>Temperature, water inlet: " + String(datalayer_extended.KiaHyundai64.temperature_water_inlet) + "</h4>";
|
"<h4>Temperature, water inlet: " + String(datalayer_extended.KiaHyundai64.temperature_water_inlet) + "</h4>";
|
||||||
content += "<h4>Temperature, power relay: " + String(datalayer_extended.KiaHyundai64.powerRelayTemperature) + "</h4>";
|
content +=
|
||||||
content += "<h4>Batterymanagement mode: " + String(datalayer_extended.KiaHyundai64.batteryManagementMode) + "</h4>";
|
"<h4>Temperature, power relay: " + String(datalayer_extended.KiaHyundai64.powerRelayTemperature) + "</h4>";
|
||||||
content += "<h4>BMS ignition: " + String(datalayer_extended.KiaHyundai64.BMS_ign) + "</h4>";
|
content += "<h4>Batterymanagement mode: " + String(datalayer_extended.KiaHyundai64.batteryManagementMode) + "</h4>";
|
||||||
content += "<h4>Battery relay: " + String(datalayer_extended.KiaHyundai64.batteryRelay) + "</h4>";
|
content += "<h4>BMS ignition: " + String(datalayer_extended.KiaHyundai64.BMS_ign) + "</h4>";
|
||||||
*/
|
content += "<h4>Battery relay: " + String(datalayer_extended.KiaHyundai64.batteryRelay) + "</h4>";
|
||||||
#endif //KIA_HYUNDAI_64_BATTERY
|
#endif //KIA_HYUNDAI_64_BATTERY
|
||||||
|
|
||||||
#ifdef BYD_ATTO_3_BATTERY
|
#ifdef BYD_ATTO_3_BATTERY
|
||||||
|
@ -1148,7 +1148,6 @@ String advanced_battery_processor(const String& var) {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
content += "</div>";
|
content += "</div>";
|
||||||
#ifdef NISSAN_LEAF_BATTERY
|
|
||||||
content += "<script>";
|
content += "<script>";
|
||||||
content +=
|
content +=
|
||||||
"function askResetSOH() { if (window.confirm('Are you sure you want to reset degradation data? "
|
"function askResetSOH() { if (window.confirm('Are you sure you want to reset degradation data? "
|
||||||
|
@ -1161,8 +1160,6 @@ String advanced_battery_processor(const String& var) {
|
||||||
content += "}";
|
content += "}";
|
||||||
content += "function goToMainPage() { window.location.href = '/'; }";
|
content += "function goToMainPage() { window.location.href = '/'; }";
|
||||||
content += "</script>";
|
content += "</script>";
|
||||||
#endif //NISSAN_LEAF_BATTERY
|
|
||||||
#ifdef VOLVO_SPA_BATTERY
|
|
||||||
content += "<script>";
|
content += "<script>";
|
||||||
content +=
|
content +=
|
||||||
"function Volvo_askEraseDTC() { if (window.confirm('Are you sure you want to erase DTCs?')) { "
|
"function Volvo_askEraseDTC() { if (window.confirm('Are you sure you want to erase DTCs?')) { "
|
||||||
|
@ -1196,7 +1193,8 @@ String advanced_battery_processor(const String& var) {
|
||||||
content += "}";
|
content += "}";
|
||||||
content += "function goToMainPage() { window.location.href = '/'; }";
|
content += "function goToMainPage() { window.location.href = '/'; }";
|
||||||
content += "</script>";
|
content += "</script>";
|
||||||
#endif //VOLVO_SPA_BATTERY
|
|
||||||
|
return content;
|
||||||
}
|
}
|
||||||
return String();
|
return String();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue