8.1.8. How to reach STANDBY state

In STANDBY state, the BMS is monitoring and controlling the balancing, recalibrates the SOC and is waiting for a state request to close the contactors.

Following conditions MUST be met, that the BMS switches into STANDBY state:

  1. No error from a diagnosis entry with a severity of DIAG_FATAL_ERROR defined in src\app\engine\config\diag_cfg.c MUST be detected.

  2. Depending on the configuration of BS_CHECK_CAN_TIMING in file src\app\application\config\battery_system_cfg.c the state request message foxBMS_BmsStateRequest MUST be received periodically via CAN.

  3. STANDBY state MUST be requested via signal foxBMS_modeRequest in message foxBMS_BmsStateRequest.

8.1.9. How to recalibrate the SOC

The SOC is automatically recalibrated by the BMS in STANDBY state if the battery system is in a rest phase (BMS_AT_REST). This state is reached if for duration of BS_RELAXATION_PERIOD_10ms, the current drawn from or supplied to the battery system is below BS_REST_CURRENT_mA. The default values for these defines are 200 mA and 600000 ms. This means that with the default configuration, the battery system will enter the rest phase if for 10 minutes no current above 200 mA is drawn from or supplied to the battery system. Both defines are configured in file src\app\application\config\battery_system_cfg.c the system will begin the relaxation phase (BMS_RELAXATION).