SOC Stuck at 0%

Problem Description

  • Case #009
  • Fault Name: SOC Stuck at 0%
  • The battery was previously depleted to 0% and shut down. Now, the grid is back or the sun is shining, and the inverter is actively pushing charging current into the battery. The battery voltage is rising, but the SOC stays firmly stuck at 0% for hours. The battery refuses to discharge because the system still believes it is empty.

Symptoms

  • Inverter screen shows charging power (e.g., 500W), and battery voltage rises from 44V to 51V.
  • Battery SOC remains at 0% (or sometimes stuck at 1%).
  • The BMS ALM (Alarm) light might stay on, indicating "Under-Voltage Protection" is still active.
  • Restarting the battery does not update the SOC.

Possible Causes

  • Calibration Latch (Waiting for 100%): After hitting absolute 0%, the BMS Coulomb counter loses its reference. Some BMS firmware will deliberately "freeze" the SOC at 0% until the battery hits the high-voltage ceiling (e.g., 55.2V) to recalibrate directly to 100%.
  • Current Below Deadband: The charging current is too small (e.g., 1A from weak morning solar). It falls below the BMS "Zero-Current Deadband", so the BMS treats it as noise and doesn't count it.
  • UVP Recovery Threshold Not Met: The BMS will not unlatch the 0% status until the lowest cell recovers above a strict hardware voltage threshold (e.g., >3.1V).
  • Current Sensor Polarity Error: (Common in DIY/Repairs) The BMS sees charging current as a negative value, so it tries to subtract from 0%, remaining at 0%.

How to Verify

Connect a DC clamp meter to the battery cable to measure the physical charging current. Log in to the BMS PC software. Compare the physical current with the BMS "Real-time Current". Check if the BMS displays the current as a Positive (+) or Negative (-) value during charging.

Required Tools

  • DC Clamp Meter
  • BMS PC Software & Communication Cable
  • Grid power (to force a high-current charge)

Normal Values

  • Charging Current on BMS: Positive value (e.g., +30A)
  • Cell Voltage during charge: Rising steadily above 3.2V
  • BMS Zero-Current Deadband parameter: Typically 0.5A to 1.0A
  • Clamp meter shows +5A, but BMS shows 0.0A (Current is filtered out by deadband).
  • BMS reads +30A, voltage is 52V, but SOC is still 0% (Algorithm waiting for full calibration).

Diagnostic Procedure

  • Step 1: Verify the charging current. If the inverter is only pushing 1A due to bad weather, the BMS might be ignoring it. Force a grid charge at a high current (e.g., 30A).
  • Step 2: If high current is flowing but SOC doesn't move, check the BMS software. Is the current displayed correctly (positive)? If it shows 0A, the Hall sensor is broken.
  • Step 3: Look at the "Under-Voltage Protection" status. Has the flag disappeared? Some BMS models keep the SOC at 0% until this flag clears.
  • Step 4: Keep charging. If voltage approaches 54V-55V and the SOC suddenly jumps from 0% to 100%, you have confirmed it is a software calibration logic design, not a hardware fault.

Root Cause

When a Lithium battery hits 0%, the Coulomb Counter becomes "lost" because the actual chemical capacity can drift over time. To avoid displaying a false 30% or 40% when the battery might still be chemically severely imbalanced, many BMS engineers intentionally program the algorithm to "Hold at 0%". The BMS waits until the battery hits the upper voltage limit (e.g., 3.5V/cell), uses that as the absolute anchor point, and instantly recalibrates the SOC to 100%.

Corrective Actions

  • Patience & Force Charge: Instruct the user to set the inverter to "Grid Charge" at a moderate current (e.g., 30A) and let it charge continuously until it hits 100%. Do not interrupt the charge.
  • Lower the Deadband: If the system relies entirely on weak solar, log in to the BMS settings and lower the "Current Deadband" from 1A to 0.2A, so trickle charging is counted.
  • Reboot after partial charge: Sometimes, pausing the charge when the voltage reaches 51V and hard-rebooting the BMS forces the system to estimate the SOC based on the voltage curve (e.g., jumping to 40%).

⚠ ⚠️ Do not repeatedly drain the battery to 0% just to "test" this phenomenon. Deep discharging LFP cells below 2.5V causes irreversible capacity loss.

💡 💡 “0% is a mathematical prison; 100% is the only key out.” Explain to frustrated customers that the BMS is not broken; it is simply "lost in the dark" after a complete blackout. It refuses to guess the SOC until it hits the 100% finish line. A single, uninterrupted full grid charge will cure this issue completely.

SOC 卡在 0% 充不进去 / 电量死区锁定

故障描述

  • 故障名称: SOC 卡在 0% 充不进去 / 电量死区锁定
  • 电池之前被耗尽至 0% 并关机。现在,电网恢复或阳光充足,逆变器正在积极地向电池输送充电电流。电池的总电压正在稳步上升,但 SOC 却连续几个小时死死卡在 0%。由于系统仍然认为电池是空的,因此拒绝提供任何放电。

故障现象

  • 逆变器屏幕显示有充电功率(如 500W),电池电压从 44V 回升到了 51V。
  • 电池 SOC 始终停留在 0%(或卡在 1%)。
  • BMS 的 ALM(告警)灯可能常亮,提示“欠压保护”状态依然未解除。
  • 重新启动电池无法刷新 SOC 读数。

可能原因

  • 校准锁死 (等待 100% 满充): 跌至绝对 0% 后,BMS 的安时积分器丢失了参考基准。某些 BMS 固件会故意将 SOC“冻结”在 0%,直到电池触碰高压天花板(如 55.2V)时,再直接跳变校准为 100%。
  • 电流低于死区: 充电电流太小(例如清晨微弱光伏产生的 1A 电流)。它低于 BMS 的“零电流死区”阈值,BMS 将其视为环境噪音而不予累计。
  • 未达到欠压恢复阈值: 直到最低单体电芯的电压回升并跨越严格的硬件恢复阈值(如 >3.1V)之前,BMS 不会解除 0% 的锁定状态。
  • 电流传感器极性错误: (常见于组装/维修机)BMS 将充电电流读取为负值,所以它试图从 0% 继续往下减,结果只能停留在 0%。

如何验证

用直流钳形表夹在电池线上,测量物理充电电流。登录 BMS 上位机软件。对比物理电流与 BMS 读取的“实时电流”。检查 BMS 在充电时,是将电流显示为正值 (+) 还是负值 (-)。

所需工具

  • 直流钳形电流表
  • BMS 上位机软件及通讯线
  • 电网电源(用于强制大电流充电)

正常参考值

  • BMS 显示的充电电流:正值(如 +30A)
  • 充电时的单体电压:稳步上升至 3.2V 以上
  • BMS 零电流死区参数:通常为 0.5A 至 1.0A
  • 钳形表显示 +5A,但 BMS 显示 0.0A(电流被死区过滤掉了)。
  • BMS 准确读取到 +30A,电压已达 52V,但 SOC 依然为 0%(算法正在等待满充校准)。

排查步骤

  • 第一步: 验证充电电流。如果由于天气不好,逆变器只输出了 1A 的电流,BMS 可能直接忽略了它。强制使用市电(电网)进行大电流充电(如 30A)。
  • 第二步: 如果大电流正在流入但 SOC 还是不动,检查 BMS 软件。电流显示正确吗(正值)?如果软件里还是 0A,说明霍尔传感器坏了。
  • 第三步: 查看“欠压保护”状态。这个告警标志消失了吗?有些 BMS 会把 SOC 死死压在 0%,直到这个保护标志被彻底清除。
  • 第四步: 继续充电。如果电压逼近 54V-55V 时,SOC 突然从 0% 瞬间跳变到 100%,这就证实了它是底层软件的校准逻辑设计,而不是硬件故障。

根本原因

当锂电池跌至 0% 时,安时积分器就“迷路”了,因为实际的化学容量会随时间漂移。为了避免在电芯化学状态依然严重不平衡时错误地显示 30% 或 40%,许多 BMS 工程师故意将算法编程为“死守 0%”。BMS 会一直等待,直到电池触碰电压上限(如 3.5V/单体),将此作为绝对的锚点,然后瞬间将 SOC 重新校准为 100%。

解决步骤

  • 保持耐心并强制满充: 指导用户将逆变器设置为“市电充电 (Grid Charge)”,以中等电流(如 30A)持续充电,直到达到 100%。中途不要中断充电。
  • 调低电流死区: 如果系统完全依赖微弱的光伏充电,请登录 BMS 设置,将“电流死区”从 1A 调低至 0.2A,让涓流慢充也能被记录下来。
  • 半途重启: 有时,当电压充到 51V 时暂停充电并对 BMS 进行硬重启,可以迫使系统根据当前电压曲线重新估算 SOC(例如开机后直接显示 40%)。

⚠ ⚠️ 不要为了“测试”这个现象而反复将电池放空至 0%。将磷酸铁锂单体深度放电至 2.5V 以下会导致不可逆的容量衰减。

💡 💡 “0% 是一座数学的牢笼,只有 100% 满充才是逃脱的钥匙。” 请向焦躁的客户解释:BMS 并没有坏;它只是在彻底断电后“在黑暗中迷路了”。在触碰 100% 的终点线之前,它拒绝胡乱猜测电量。一次不间断的市电强制满充,就能彻底治愈这个问题。

Need on-site BESS or PV support?

Contact our Philippines or China hub — response within one business day.

Contact Us