Cell voltage limitation
In folder /driver/balancing you can find cell voltages.
More about protection and limitation
Protection
Undervoltage:
If the voltage of the cell with the lowest voltage is below the cellMinVoltage parameter for more than 1 second, the BMS will turn off both ports and enter UNDERVOLTAGE state (protectLog value 0x4000). If you connect the charger and turn the ports on, the BMS will allow it.
The undervoltage state is left when the cell voltage rises above cellMinVoltage + uv_hyst for at least 1 second.
Overvoltage:
If the voltage of the cell with the highest voltage is above the cellMaxVoltage parameter for more than 2 seconds, the BMS will turn off the CHG port and enter OVERVOLTAGE state (protectLog value 0x8000). In the OVERVOLTAGE state, balancing is forced to discharge the highest cells.
The overvoltage state is left when the cell voltage drops below cellMaxVoltage - ov_hyst for at least 2 seconds.
If the current is flowing into the DSC port, the BMS does not have the ability to stop the current. (The current will flow through diodes inside MOSFETS.) If a cell is in overvoltage and charging current keeps flowing into the DSC port for more than 20 seconds, the BMS enters the permanent ERROR state with the "Panic" reason (value 10 in errorLog).
Critical undervoltage:
If any cell voltage is below the CritUnderVoltage parameter for more than 10 minutes, the BMS will enter the FAIL state with the "Critical undervoltage" reason (value 104 in errorLog) and go to sleep to prevent further discharge of the battery.
If the ports are turned off due to the UV/OV limitation, the BMS will enter PROTECT state.
Limitation configuration
Limitation parameters are located in the /driver/balancing/limiter folder.
| Parameter | Unit | Description |
|---|---|---|
cellMaxVoltage | mV | Maximum voltage for the cell. If the cell voltage is above this value for more than 2 s, the BMS will enter OVERVOLTAGE state. |
cellMinVoltage | mV | Minimum voltage for the cell. If the cell voltage is below this value for more than 1 s, the BMS will enter UNDERVOLTAGE state. |
cellMaxMargin | mV | Zone below cellMaxVoltage where recuperation (charging) is disabled - totalLimitNeg is 0. Sets limit bit 32. |
cellMaxDec | mV | Zone below the margin where recuperation (charging) is linearly reduced. Sets limit bit 32. |
cellMinMargin | mV | Zone above cellMinVoltage where discharge is disabled - totalLimitPos is 0. Sets limit bit 16. |
cellMinDec | mV | Zone above the margin where discharge is linearly reduced. Sets limit bit 16. |
uv_hyst | mV | Hysteresis for leaving the undervoltage state |
ov_hyst | mV | Hysteresis for leaving the overvoltage state |
CritUnderVoltage | mV | Critical undervoltage: If the cell voltage is below this value for 10 minutes, the BMS will enter FAIL/ERROR state (and immediately sleep) |

- First, configure the
cellMaxVoltageandcellMinVoltageparameters, after that tune the limitation parameters