BMS Gen 1 & 2 Firmware Log

BMS Gen 1 & 2 Firmware Log

Version 3022 — BMS 2.0 | 13-06-2025

  1. Optimise issue where SOC does not drop from 100% after a minor overvoltage alarm.
  2. Optimise balance activation conditions: passive balancing is disabled when a battery cell detection fault is present.

Version 3021 — BMS 2.0 | 25-04-2025 (Internal Testing)

  1. Add AI heating processes.
  2. Optimise data processing during reset and start-up.
  3. Improve self-calibration logic.
  4. Fix restricted current issue when combining 9.5 kWh and 2.6 kWh batteries in cold conditions.

Version 3020 — BMS 2.0 | 05-03-2025 (Public Release)

  1. Fix rare issue where full capacity resets to 0 after battery restart.
  2. Optimise internal resistance abnormal detection logic and fix dynamic lower self-calibration error.
  3. Optimise upper calibration logic above 80% where OCV incorrectly reduced SOC.
  4. Add modified cell maps to support higher charge currents at lower temperatures.
  5. Fix short-circuit detection logic that caused rare false BMS short-circuit errors on restart.
  6. Update pre-charge policy in conjunction with short-circuit logic changes.

Version 3019 — BMS 2.0 | 03-01-2025 (Beta & Internal Use)

  1. Optimise shutdown and start-up; resolve rare battery hibernation on reboot.
  2. Add hibernation protection below 0 °C at very low SOC to prevent self-discharge; battery can wake at ≥1 °C for charging.
  3. Optimise internal floating-point operations.
  4. Modify charge profile vs temperature: full rate above 10 °C, 2/3 rate below 10 °C, no charging at ≤0 °C.
  5. Optimise SOC display.
  6. Improve parallel battery performance.
  7. Add internal resistance checks.

Version 3018 — BMS 2.0 | 29-09-2024 (Internal Use Only)

  1. Improve cell balancing accounting for line losses during charge and discharge.
  2. Add protection and recovery conditions for cell overvoltage and undervoltage alarms.
  3. Add mandatory charge register when SOC is not full, instructing inverter to continue charging.
  4. Improve top-end calibration: continue reduced-rate charging (1/3C) when SOC reads 99% but cells are not full.
  5. Improve cell voltage sampling accuracy.
  6. Add current limit conditions for continued charging as per top-end calibration logic.
  7. Optimise current limits for temperature variation.
  8. Change overcurrent behaviour from shutdown to restart.
  9. Increase conditional checks to improve tolerance for parallel battery connection.
  10. Optimise OCV behaviour: adjust SOC speed based on current and update dynamic OCV tables.
  11. General charging optimisation.
  12. Improve shutdown detection logic.
  13. Parallel optimisation.

Version 3017 — BMS 2.0 | 28-05-2024

  1. Fix restricted current issue when mixing 9.5 kWh and 2.6 kWh batteries.
  2. Add mixed battery generation support (G3 and G1 in any master/slave configuration).
  3. Modify dynamic SOC calibration speed.
  4. Increase and compensate for 30 mA static current loss to improve SOC accuracy over long idle periods.
  5. Add firmware lock to ensure only compatible generations accept firmware; allow mixed-generation loads.
  6. Fix issue where multi-battery voltage difference tolerance was limited to 0.5 V.

Version 3016 | 25-04-2024 (Not Issued)

  1. Migrate BMS3 logic to BMS2.
  2. Add dynamic SOC calibration function.
  3. Modify SOC follow-up calibration method.

Version 3015 | 27-10-2023 (Final)

  1. Fix bug where charge/discharge current becomes 0 when battery parallel fails.
  2. Fix buffer overflow error causing BMS crashes.

Version 3014 | Beta (15 Iterations)

  1. Modify alarm recovery logic for overvoltage and undervoltage alarms.
  2. Add overvoltage recovery discharge routine.
  3. Add internal charge/discharge routines independent of inverter control.
  4. Increase voltage difference threshold to 2 V with optional slave pack disconnection.
  5. Prevent SOC resetting to 0% on parallel failure.
  6. Optimise inverter data transmission timing after boot.
  7. Improve current calibration and SOC tracking.
  8. Increase SOC display resolution.
  9. Adjust cell voltage thresholds for calibration.
  10. Fix INT10 interrupt handling to prevent BMS crashes.
  11. Add undervoltage shutdown after 1 hour if not self-recovered.

Version 3013 | 03-07-2023

  1. Remove backup upgrade file after BMS upgrade.
  2. Fix BMS hang on reboot.
  3. Remove requirement for parallel SOC to be below 20%.
  4. Widen SOC calibration range from 50% to 80%.

Version 3012 | 04-05-2023 (Final Beta Release)

  1. Modify OCV offset during charge and discharge.
  2. Fix capacity issues for 8.2 kWh and 9.5 kWh batteries.
  3. Add MCU and AFE current zero-offset calibration.
  4. Use converted AFE current for Ah integration.
  5. Set overvoltage alarm at 57 V with current limiting.
  6. Update discharge calibration tables for ageing batteries.
  7. Set undervoltage threshold at 46 V.
  8. Introduce temperature-based calibration thresholds.
  9. Modify discharge voltage and recovery behaviour.
  10. Change OCV calibration logic to operate below 50% SOC.
  11. Allow calibration when current is below 0.8 A without 24-hour timer.
  12. Improve charge and discharge calibration mapping.
  13. Allow OCV recalibration above 20% if previous attempt failed.
  14. Apply default Penghui MAP table during OCV calibration while charging or discharging.