diff --git a/Software/src/devboard/webserver/advanced_battery_html.cpp b/Software/src/devboard/webserver/advanced_battery_html.cpp index 5f1016e1..3e68190e 100644 --- a/Software/src/devboard/webserver/advanced_battery_html.cpp +++ b/Software/src/devboard/webserver/advanced_battery_html.cpp @@ -502,20 +502,19 @@ String advanced_battery_processor(const String& var) { "

Negative contactor: " + String(contactorState[datalayer_extended.tesla.packContNegativeState]) + "

"; content += "

Positive contactor: " + String(contactorState[datalayer_extended.tesla.packContPositiveState]) + "

"; - content += "

Closing allowed?: " + String(datalayer_extended.tesla.packCtrsClosingAllowed) + "

"; //bool - content += "

Pyrotest in Progress: " + String(datalayer_extended.tesla.pyroTestInProgress) + "

"; //bool - content += "

Contactors Open Now Requested: " + - String(datalayer_extended.tesla.battery_packCtrsOpenNowRequested) + "

"; //bool + content += "

Closing allowed?: " + String(datalayer_extended.tesla.packCtrsClosingAllowed) + "

"; //bool + content += "

Pyrotest in Progress: " + String(datalayer_extended.tesla.pyroTestInProgress) + "

"; //bool content += - "

Contactors Open Requested: " + String(datalayer_extended.tesla.battery_packCtrsOpenRequested) + - "

"; //bool + "

Contactors Open Now Requested: " + String(datalayer_extended.tesla.battery_packCtrsOpenNowRequested) + + "

"; //bool + content += "

Contactors Open Requested: " + String(datalayer_extended.tesla.battery_packCtrsOpenRequested) + + "

"; //bool content += "

Contactors Request Status: " + String(HVP_contactor[datalayer_extended.tesla.battery_packCtrsRequestStatus]) + "

"; content += "

Contactors Reset Request Required: " + - String(datalayer_extended.tesla.battery_packCtrsResetRequestRequired) + "

"; //bool - content += - "

DC Link Allowed to Energize:" + String(datalayer_extended.tesla.battery_dcLinkAllowedToEnergize) + - "

"; //bool + String(datalayer_extended.tesla.battery_packCtrsResetRequestRequired) + ""; //bool + content += "

DC Link Allowed to Energize:" + String(datalayer_extended.tesla.battery_dcLinkAllowedToEnergize) + + "

"; //bool // Comment what data you would like to dislay, order can be changed. //0x292 658 BMS_socStates content += "

Battery Beginning of Life: " + String(beginning_of_life) + " KWh

"; @@ -544,23 +543,23 @@ String advanced_battery_processor(const String& var) { "

Main State: " + String(PCS_dcdcMainState[datalayer_extended.tesla.battery_PCS_dcdcMainState]) + "

"; content += "

Sub State: " + String(PCS_dcdcSubState[datalayer_extended.tesla.battery_PCS_dcdcSubState]) + "

"; - content += "

PCS Faulted: " + String(datalayer_extended.tesla.battery_PCS_dcdcFaulted) + "

"; //bool + content += "

PCS Faulted: " + String(datalayer_extended.tesla.battery_PCS_dcdcFaulted) + "

"; //bool content += "

Output Is Limited: " + String(datalayer_extended.tesla.battery_PCS_dcdcOutputIsLimited) + "

"; //bool content += "

Max Output Current Allowed: " + String(PCS_dcdcMaxOutputCurrentAllowed) + " A

"; - content += "

Precharge Rty Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdcPrechargeRtyCnt) + - "

"; //bool content += - "

12V Support Rty Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdc12VSupportRtyCnt) + - "

"; // bool - content += "

Discharge Rty Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdcDischargeRtyCnt) + - "

"; //bool + "

Precharge Rty Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdcPrechargeRtyCnt) + "

"; //bool + content += "

12V Support Rty Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdc12VSupportRtyCnt) + + "

"; // bool content += - "

PWM Enable Line: " + String(datalayer_extended.tesla.battery_PCS_dcdcPwmEnableLine) + "

"; //bool - content += "

Supporting Fixed LV Target: " + - String(datalayer_extended.tesla.battery_PCS_dcdcSupportingFixedLvTarget) + "

"; //bool - content += "

Precharge Restart Cnt: " + - String(datalayer_extended.tesla.battery_PCS_dcdcPrechargeRestartCnt) + "

"; //bool + "

Discharge Rty Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdcDischargeRtyCnt) + "

"; //bool + content += + "

PWM Enable Line: " + String(datalayer_extended.tesla.battery_PCS_dcdcPwmEnableLine) + "

"; //bool + content += + "

Supporting Fixed LV Target: " + String(datalayer_extended.tesla.battery_PCS_dcdcSupportingFixedLvTarget) + + "

"; //bool + content += "

Precharge Restart Cnt: " + String(datalayer_extended.tesla.battery_PCS_dcdcPrechargeRestartCnt) + + "

"; //bool content += "

Initial Precharge Substate: " + String(PCS_dcdcSubState[datalayer_extended.tesla.battery_PCS_dcdcInitialPrechargeSubState]) + "

"; //0x2C4 708 PCS_logging @@ -597,7 +596,7 @@ String advanced_battery_processor(const String& var) { content += "

BMS UI Charge Status: " + String(BMS_uiChargeStatus[datalayer_extended.tesla.battery_BMS_hvState]) + "

"; content += - "

BMS PCS PWM Enabled: " + String(datalayer_extended.tesla.battery_BMS_pcsPwmEnabled) + "

"; //bool + "

BMS PCS PWM Enabled: " + String(datalayer_extended.tesla.battery_BMS_pcsPwmEnabled) + "

"; //bool //0x352 850 BMS_energyStatus content += "

Early BMS 0x352:

"; //if using older BMS <2021 and comment 0x352 without MUX content += "

Calculated SOH: " + String(nominal_full_pack_energy * 100 / beginning_of_life) + "

"; @@ -607,7 +606,7 @@ String advanced_battery_processor(const String& var) { content += "

Energy to Charge Complete: " + String(energy_to_charge_complete) + " KWh

"; content += "

Energy Buffer: " + String(energy_buffer) + " KWh

"; content += - "

Full Charge Complete: " + String(datalayer_extended.tesla.battery_full_charge_complete) + "

"; //bool + "

Full Charge Complete: " + String(datalayer_extended.tesla.battery_full_charge_complete) + "

"; //bool //0x352 850 BMS_energyStatus content += "

Late BMS 0x352 with Mux:

"; //if using newer BMS >2021 and comment 0x352 with MUX content += "

Calculated SOH: " + String(nominal_full_pack_energy_m0 * 100 / beginning_of_life) + "

"; @@ -617,7 +616,7 @@ String advanced_battery_processor(const String& var) { content += "

Energy to Charge Complete: " + String(energy_to_charge_complete_m1) + " KWh

"; content += "

Energy Buffer: " + String(energy_buffer_m1) + " KWh

"; content += "

Expected Energy Remaining: " + String(expected_energy_remaining_m1) + " KWh

"; - content += "

Fully Charged: " + String(datalayer_extended.tesla.battery_fully_charged) + "

"; //bool + content += "

Fully Charged: " + String(datalayer_extended.tesla.battery_fully_charged) + "

"; //bool //0x392 BMS_packConfig content += "

packConfigMultiplexer: " + String(datalayer_extended.tesla.battery_packConfigMultiplexer) + "

"; content += "

moduleType: " + String(datalayer_extended.tesla.battery_moduleType) + "

"; @@ -641,9 +640,8 @@ String advanced_battery_processor(const String& var) { content += "

Max Discharge Power: " + String(BMS_maxDischargePower) + " KW

"; content += "

Max Stationary Heat Power: " + String(BMS_maxStationaryHeatPower) + " KWh

"; content += "

HVAC Power Budget: " + String(BMS_hvacPowerBudget) + " KW

"; - content += - "

Not Enough Power For Heat Pump: " + String(datalayer_extended.tesla.BMS_notEnoughPowerForHeatPump) + - "

"; //bool + content += "

Not Enough Power For Heat Pump: " + String(datalayer_extended.tesla.BMS_notEnoughPowerForHeatPump) + + "

"; //bool content += "

Power Limit State: " + String(BMS_powerLimitState[datalayer_extended.tesla.BMS_powerLimitState]) + "

"; content += "

Inverter TQF: " + String(datalayer_extended.tesla.BMS_inverterTQF) + "

"; @@ -655,57 +653,50 @@ String advanced_battery_processor(const String& var) { content += "

Inlet Active Heat Target Temp: " + String(BMS_inletActiveHeatTargetT) + " DegC

"; content += "

Pack Temp Min: " + String(BMS_packTMin) + " DegC

"; content += "

Pack Temp Max: " + String(BMS_packTMax) + " DegC

"; - content += "

PCS No Flow Request: " + String(datalayer_extended.tesla.BMS_pcsNoFlowRequest) + "

"; //bool - content += "

BMS No Flow Request: " + String(datalayer_extended.tesla.BMS_noFlowRequest) + "

"; //bool + content += "

PCS No Flow Request: " + String(datalayer_extended.tesla.BMS_pcsNoFlowRequest) + "

"; //bool + content += "

BMS No Flow Request: " + String(datalayer_extended.tesla.BMS_noFlowRequest) + "

"; //bool //0x7AA 1962 HVP_debugMessage content += - "

HVP_gpioPassivePyroDepl: " + String(datalayer_extended.tesla.HVP_gpioPassivePyroDepl) + "

"; //bool - content += "

HVP_gpioPyroIsoEn: " + String(datalayer_extended.tesla.HVP_gpioPyroIsoEn) + "

"; //bool - content += "

HVP_gpioCpFaultIn: " + String(datalayer_extended.tesla.HVP_gpioCpFaultIn) + "

"; //bool + "

HVP_gpioPassivePyroDepl: " + String(datalayer_extended.tesla.HVP_gpioPassivePyroDepl) + "

"; //bool + content += "

HVP_gpioPyroIsoEn: " + String(datalayer_extended.tesla.HVP_gpioPyroIsoEn) + "

"; //bool + content += "

HVP_gpioCpFaultIn: " + String(datalayer_extended.tesla.HVP_gpioCpFaultIn) + "

"; //bool content += - "

HVP_gpioPackContPowerEn: " + String(datalayer_extended.tesla.HVP_gpioPackContPowerEn) + "

"; //bool - content += "

HVP_gpioHvCablesOk: " + String(datalayer_extended.tesla.HVP_gpioHvCablesOk) + "

"; //bool + "

HVP_gpioPackContPowerEn: " + String(datalayer_extended.tesla.HVP_gpioPackContPowerEn) + "

"; //bool + content += "

HVP_gpioHvCablesOk: " + String(datalayer_extended.tesla.HVP_gpioHvCablesOk) + "

"; //bool + content += "

HVP_gpioHvpSelfEnable: " + String(datalayer_extended.tesla.HVP_gpioHvpSelfEnable) + "

"; //bool + content += "

HVP_gpioLed: " + String(datalayer_extended.tesla.HVP_gpioLed) + "

"; //bool + content += "

HVP_gpioCrashSignal: " + String(datalayer_extended.tesla.HVP_gpioCrashSignal) + "

"; //bool content += - "

HVP_gpioHvpSelfEnable: " + String(datalayer_extended.tesla.HVP_gpioHvpSelfEnable) + "

"; //bool - content += "

HVP_gpioLed: " + String(datalayer_extended.tesla.HVP_gpioLed) + "

"; //bool - content += "

HVP_gpioCrashSignal: " + String(datalayer_extended.tesla.HVP_gpioCrashSignal) + "

"; //bool + "

HVP_gpioShuntDataReady: " + String(datalayer_extended.tesla.HVP_gpioShuntDataReady) + "

"; //bool + content += "

HVP_gpioFcContPosAux: " + String(datalayer_extended.tesla.HVP_gpioFcContPosAux) + "

"; //bool + content += "

HVP_gpioFcContNegAux: " + String(datalayer_extended.tesla.HVP_gpioFcContNegAux) + "

"; //bool + content += "

HVP_gpioBmsEout: " + String(datalayer_extended.tesla.HVP_gpioBmsEout) + "

"; //bool + content += "

HVP_gpioCpFaultOut: " + String(datalayer_extended.tesla.HVP_gpioCpFaultOut) + "

"; //bool + content += "

HVP_gpioPyroPor: " + String(datalayer_extended.tesla.HVP_gpioPyroPor) + "

"; //bool + content += "

HVP_gpioShuntEn: " + String(datalayer_extended.tesla.HVP_gpioShuntEn) + "

"; //bool + content += "

HVP_gpioHvpVerEn: " + String(datalayer_extended.tesla.HVP_gpioHvpVerEn) + "

"; //bool + content += "

HVP_gpioPackCoontPosFlywheel: " + String(datalayer_extended.tesla.HVP_gpioPackCoontPosFlywheel) + + "

"; //bool + content += "

HVP_gpioCpLatchEnable: " + String(datalayer_extended.tesla.HVP_gpioCpLatchEnable) + "

"; //bool + content += "

HVP_gpioPcsEnable: " + String(datalayer_extended.tesla.HVP_gpioPcsEnable) + "

"; //bool content += - "

HVP_gpioShuntDataReady: " + String(datalayer_extended.tesla.HVP_gpioShuntDataReady) + "

"; //bool - content += - "

HVP_gpioFcContPosAux: " + String(datalayer_extended.tesla.HVP_gpioFcContPosAux) + "

"; //bool - content += - "

HVP_gpioFcContNegAux: " + String(datalayer_extended.tesla.HVP_gpioFcContNegAux) + "

"; //bool - content += "

HVP_gpioBmsEout: " + String(datalayer_extended.tesla.HVP_gpioBmsEout) + "

"; //bool - content += "

HVP_gpioCpFaultOut: " + String(datalayer_extended.tesla.HVP_gpioCpFaultOut) + "

"; //bool - content += "

HVP_gpioPyroPor: " + String(datalayer_extended.tesla.HVP_gpioPyroPor) + "

"; //bool - content += "

HVP_gpioShuntEn: " + String(datalayer_extended.tesla.HVP_gpioShuntEn) + "

"; //bool - content += "

HVP_gpioHvpVerEn: " + String(datalayer_extended.tesla.HVP_gpioHvpVerEn) + "

"; //bool - content += "

HVP_gpioPackCoontPosFlywheel: " + - String(datalayer_extended.tesla.HVP_gpioPackCoontPosFlywheel) + "

"; //bool - content += - "

HVP_gpioCpLatchEnable: " + String(datalayer_extended.tesla.HVP_gpioCpLatchEnable) + "

"; //bool - content += "

HVP_gpioPcsEnable: " + String(datalayer_extended.tesla.HVP_gpioPcsEnable) + "

"; //bool - content += "

HVP_gpioPcsDcdcPwmEnable: " + String(datalayer_extended.tesla.HVP_gpioPcsDcdcPwmEnable) + - "

"; //bool - content += - "

HVP_gpioPcsChargePwmEnable: " + String(datalayer_extended.tesla.HVP_gpioPcsChargePwmEnable) + - "

"; //bool - content += - "

HVP_gpioFcContPowerEnable: " + String(datalayer_extended.tesla.HVP_gpioFcContPowerEnable) + - "

"; //bool - content += "

HVP_gpioHvilEnable: " + String(datalayer_extended.tesla.HVP_gpioHvilEnable) + "

"; //bool - content += "

HVP_gpioSecDrdy: " + String(datalayer_extended.tesla.HVP_gpioSecDrdy) + "

"; //bool + "

HVP_gpioPcsDcdcPwmEnable: " + String(datalayer_extended.tesla.HVP_gpioPcsDcdcPwmEnable) + "

"; //bool + content += "

HVP_gpioPcsChargePwmEnable: " + String(datalayer_extended.tesla.HVP_gpioPcsChargePwmEnable) + + "

"; //bool + content += "

HVP_gpioFcContPowerEnable: " + String(datalayer_extended.tesla.HVP_gpioFcContPowerEnable) + + "

"; //bool + content += "

HVP_gpioHvilEnable: " + String(datalayer_extended.tesla.HVP_gpioHvilEnable) + "

"; //bool + content += "

HVP_gpioSecDrdy: " + String(datalayer_extended.tesla.HVP_gpioSecDrdy) + "

"; //bool content += "

HVP_hvp1v5Ref: " + String(HVP_hvp1v5Ref) + " V

"; content += "

HVP_shuntCurrentDebug: " + String(HVP_shuntCurrentDebug) + " A

"; - content += "

HVP_packCurrentMia: " + String(datalayer_extended.tesla.HVP_packCurrentMia) + "

"; //bool - content += "

HVP_auxCurrentMia: " + String(datalayer_extended.tesla.HVP_auxCurrentMia) + "

"; //bool - content += "

HVP_currentSenseMia: " + String(datalayer_extended.tesla.HVP_currentSenseMia) + "

"; //bool + content += "

HVP_packCurrentMia: " + String(datalayer_extended.tesla.HVP_packCurrentMia) + "

"; //bool + content += "

HVP_auxCurrentMia: " + String(datalayer_extended.tesla.HVP_auxCurrentMia) + "

"; //bool + content += "

HVP_currentSenseMia: " + String(datalayer_extended.tesla.HVP_currentSenseMia) + "

"; //bool + content += "

HVP_shuntRefVoltageMismatch: " + String(datalayer_extended.tesla.HVP_shuntRefVoltageMismatch) + + "

"; //bool content += - "

HVP_shuntRefVoltageMismatch: " + String(datalayer_extended.tesla.HVP_shuntRefVoltageMismatch) + - "

"; //bool - content += - "

HVP_shuntThermistorMia: " + String(datalayer_extended.tesla.HVP_shuntThermistorMia) + "

"; //bool - content += "

HVP_shuntHwMia: " + String(datalayer_extended.tesla.HVP_shuntHwMia) + "

"; //bool + "

HVP_shuntThermistorMia: " + String(datalayer_extended.tesla.HVP_shuntThermistorMia) + "

"; //bool + content += "

HVP_shuntHwMia: " + String(datalayer_extended.tesla.HVP_shuntHwMia) + "

"; //bool content += "

HVP_dcLinkVoltage: " + String(HVP_dcLinkVoltage) + " V

"; content += "

HVP_packVoltage: " + String(HVP_packVoltage) + " V

"; content += "

HVP_fcLinkVoltage: " + String(HVP_fcLinkVoltage) + " V

";