diff --git a/Software/src/battery/NISSAN-LEAF-BATTERY.cpp b/Software/src/battery/NISSAN-LEAF-BATTERY.cpp index 422bba28..a476b5b3 100644 --- a/Software/src/battery/NISSAN-LEAF-BATTERY.cpp +++ b/Software/src/battery/NISSAN-LEAF-BATTERY.cpp @@ -257,8 +257,7 @@ void update_values_battery() { /* This function maps all the values fetched via } //Check if SOC% is plausible - if (battery_voltage > - (ABSOLUTE_MAX_VOLTAGE - 100)) { // When pack voltage is close to max, and SOC% is still low, raise FAULT + if (battery_voltage > (max_voltage - 100)) { // When pack voltage is close to max, and SOC% is still low, raise FAULT if (LB_SOC < 650) { set_event(EVENT_SOC_PLAUSIBILITY_ERROR, LB_SOC / 10); // Set event with the SOC as data } else { diff --git a/Software/src/battery/TESLA-MODEL-3-BATTERY.cpp b/Software/src/battery/TESLA-MODEL-3-BATTERY.cpp index 7d3045d0..3676a833 100644 --- a/Software/src/battery/TESLA-MODEL-3-BATTERY.cpp +++ b/Software/src/battery/TESLA-MODEL-3-BATTERY.cpp @@ -254,10 +254,18 @@ void update_values_battery() { //This function maps all the values fetched via } } + //Once cell chemistry is determined, set maximum and minimum total pack voltage safety limits + if (LFP_Chemistry) { + max_voltage = 3640; + min_voltage = 2450; + } else { // NCM/A chemistry + max_voltage = 4030; + min_voltage = 3100; + } + //Check if SOC% is plausible - if (battery_voltage > - (ABSOLUTE_MAX_VOLTAGE - 100)) { // When pack voltage is close to max, and SOC% is still low, raise FAULT - if (SOC < 6500) { //When SOC is less than 65.00% when approaching max voltage + if (battery_voltage > (max_voltage - 100)) { // When pack voltage is close to max, and SOC% is still low, raise FAULT + if (SOC < 6500) { //When SOC is less than 65.00% when approaching max voltage set_event(EVENT_SOC_PLAUSIBILITY_ERROR, SOC / 100); } }