Understanding Your Zero's Battery
Learn how lithium-ion batteries work, what the BMS does, and how to interpret battery-related data in your logs.
TL;DR
Zero's street and FX-family packs are 28 lithium-ion cells in series — about 102 V nominal, 117.6 V at a full 4.2 V per cell. (The 2026 light line breaks that pattern: the XB and XE run a 74 V pack.) The BMS monitors each cell's voltage and temperature, manages charging, and protects against damage. On a healthy pack the cell spread B sits at or under 40 mV, and our diagnosis engine still treats anything up to 80 mV as normal.
Where the 28S figure holds: every FX-family and street pack from the 2012 ZF6 to the 2026 DSR/X is 28 cells in series, and we can see it in the data — the ratio of logged pack voltage to lowest cell voltage is 28.02 across 2,162 Gen3 BMS telemetry rows. The 2026 LS1 / XE / XB light line is the exception: those run 74 V packs. Pack size, module construction and BMS features all vary by model and year.
Lithium-Ion Battery Basics
Zero Motorcycles use lithium-ion batteries. The owner manuals name the chemistry only as “Z-Force Li-Ion” or plain “Lithium-Ion”; none of the 90 model-year spec sheets we hold names a cathode chemistry or a cell supplier, so we do not assert one. What the manuals and the logs do settle is the electrical shape of the pack, and that is what the numbers below are.
Per cell
- Full charge:4.20 V
- Nominal (as Zero quotes the pack):~3.64 V
- Storage:3.7-3.8 V
- Our low-cell warning / critical:3300 / 3100 mV
- Flagged as deep discharge:< 2900 mV
Pack (28S — every street and FX pack)
- Cells in series:28
- Nominal:~102 V
- Full charge (28 × 4.20):117.6 V
- Highest cell we have ever logged:4168 mV
- Lowest cell we have ever logged:3132 mV
The two “logged” rows are measured, not modelled: they are the extremes of 10,555 real BMS discharge rows plus 2,292 Gen3 BMS telemetry rows from the log corpus behind this site. Note that no real pack ever reached 4.20 V per cell in that data — the BMS stops short.
Battery Management System (BMS)
The BMS is the brain of your battery pack. It monitors every cell, manages charging, and protects against conditions that could damage the battery or create safety hazards.
BMS Functions
- • Monitor individual cell voltages
- • Track pack and cell temperatures
- • Calculate State of Charge (SOC)
- • Balance cells during charging
- • Control charge current limits
- • Log events and diagnostics
BMS Protections
- • Over-voltage (cell >4.2V)
- • Under-voltage (cell <3.0V)
- • Over-temperature
- • Under-temperature (no charge <0°C)
- • Over-current protection
- • Short circuit protection
State of Charge (SOC)
State of Charge represents the remaining capacity as a percentage. The BMS calculates this using a combination of voltage measurement and coulomb counting (tracking current flow).
SOC vs Voltage (Approximate)
Pack volts are simply 28 × the cell figure. The relationship to SOC is not linear — Li-ion cells have a relatively flat voltage curve in the middle range, which is why the BMS combines voltage with coulomb counting instead of reading SOC off the voltage alone. The bottom row is the textbook cell floor, not a place your bike goes: the lowest cell voltage anywhere in our log corpus is 3132 mV (~88 V pack), and our diagnosis engine raises a deep-discharge finding below 2900 mV.
Key Battery Log Fields
These fields appear in BMS log entries. The thresholds below are the ones this site actually applies — they come from the field dictionary the log viewer annotates with and from the diagnosis engine that raises findings, not from a separate editorial table:
| Field | What it actually is | Normal | Flagged at |
|---|---|---|---|
| PackSOC / SOC | State of charge, % | 20-80% for daily use | Nothing is raised on SOC alone — a charge ending at 99%+ is a positive signal here, it is how we detect that a charger reached full |
| Vpack / PV | Total pack voltage — 28 × the cell figure | 88-117 V | Judged through the cell fields below, not directly |
| L | Lowest cell voltage right now, under whatever load is present. A live reading, not a configured limit | > 3300 mV | warning 3300 mV · critical 3100 mV · deep discharge below 2900 mV |
| l | Unloaded (open-circuit) cell voltage — an independent reading with the load taken out. It sits above H while discharging and below L while charging | > 3300 mV | Same bands as L. Never subtract it to get the spread — it is not part of the H/L pair |
| H | Highest cell voltage right now, under the same load as L | < 4150 mV | warning 4150 mV · critical 4200 mV |
| B | Cell spread — H − L, reported by the BMS | ≤ 40 mV excellent 41-80 mV still normal | 81-120 mV moderate · > 120 mV significant |
| PT | Pack temperature, °C | 15-35 °C ideal | Our engine only raises above 55 °C; 48-55 °C is noted as normal in summer or during a fast charge |
| BT | BMS board temperature — the electronics, which run hotter than the cells | < 60 °C | warning 60 °C · critical 75 °C |
The three that get confused. L and l look like a threshold-and-reading pair and are not: both are live measurements, and the one in lower case is the open-circuit reading. B is derived from the other two as H − L — which is not a guess, it holds on 54,858 of 54,858 real BMS discharge rows decoded from 27 dumps in our corpus, while H − l matches on only 15.6% and goes negative on 47.6% of them, which no spread can do.
Zero Battery Pack Options
Every row below comes from the same pack catalogue the rest of this site runs on, so it cannot drift away from what the app tells you about your own bike. Two numbers matter and they are not the same thing: the ZF badge is the pack maximum, and Zero's published nominal is the usable energy — between 87.5% and 89.3% of the badge on every pack Zero has shipped. Each designation links to its full page in the battery catalogue.
FX family — modular power packs
| Pack | Badge (max) | Usable | Construction | Years | Models |
|---|---|---|---|---|---|
| ZF2.8 | 2.8 kWh | 2.5 kWh | 1 × 2.8 kWh removable module | 2013-2015 | FX, XU, MX |
| ZF5.7 | 5.7 kWh | 5.0 kWh | 2 × 2.8 kWh modules | 2013-2015 | FX, XU, MX |
| ZF3.3 | 3.3 kWh | 2.9 kWh | 1 × 3.3 kWh removable module | 2016-2017 | FX, FXS |
| ZF6.5 | 6.5 kWh | 5.7 kWh | 2 × ~3.25 kWh removable modules — observed in our logs | 2016-2018 | FX, FXS |
| ZF6.5 (integrated) | 6.5 kWh | 5.7 kWh | 1 integrated brick — reported, not observed | 2016-2018 | FX, FXS |
| ZF3.6 | 3.6 kWh | 3.2 kWh | 1 × 3.6 kWh removable module | 2019-2023 | FX |
| ZF7.2 | 7.2 kWh | 6.3 kWh | 2 × 3.6 kWh removable modules — documented, no such bike in our corpus | 2018-2023 | FX, S, DS |
| ZF7.2 (integrated) | 7.2 kWh | 6.3 kWh | 1 fixed brick, not user-swappable — observed in our logs | 2022-2025 | FXE |
| Power Pack Module | +3.6 kWh | +3.2 kWh | The removable second FX brick — an addition, not a different pack | 2013-2023 | FX, FXS |
One badge, two different motorcycles — and how to tell which one you have
ZF6.5 and ZF7.2 each name two physically different packs. The same badge is either a pair of removable modules or a single integrated brick, and no spec sheet distinguishes them. Your logs do. Each battery module runs its own BMS and dumps its own log file, so the file names give it away:
- • …_BMS0_….bin and …_BMS1_….bin from the same export → two modules
- • only …_BMS0_….bin → one pack
In our own corpus a 2016 FXS with a ZF6.5 emits 61 BMS0 files and 61 BMS1 files — same dates, different contents — so the two-module ZF6.5 is measured, not assumed. A second 2016 FXS does the same. Meanwhile the 2023 FXE with its ZF7.2 emits a single BMS0, which is what an integrated pack looks like. The monolithic ZF6.5 is the one construction on this page we have not seen: it comes from vendor literature and appears in none of our 352 log files, and we label it that way rather than dropping it or asserting it.
One caveat before you count: this signal is only valid on the FX family. The Gen3 FST bikes (SR/F, SR/S, DSR/X) emit a file named BMS1 with no BMS0 at all — their index is not zero-based, and they are single-pack machines regardless.
Street packs — one bonded monolith
| Pack | Badge (max) | Usable | Years | Models |
|---|---|---|---|---|
| ZF6 | 6.0 kWh | 5.3 kWh | 2012 | S, DS |
| ZF9 | 9.0 kWh | 7.9 kWh | 2012 | S, DS |
| ZF8.5 | 8.5 kWh | 7.5 kWh | 2013-2014 | S, DS |
| ZF11.4 | 11.4 kWh | 10.0 kWh | 2013-2014 | S, DS, SR |
| ZF9.4 | 9.4 kWh | 8.3 kWh | 2015 | S, DS |
| ZF12.5 | 12.5 kWh | 11.0 kWh | 2015 | S, SR, DS |
| ZF9.8 | 9.8 kWh | 8.6 kWh | 2016 | S, DS |
| ZF13.0 | 13.0 kWh | 11.4 kWh | 2016-2017 | S, SR, DS, DSR |
| ZF14.4 | 14.4 kWh | 12.6 kWh | 2018-2021 | S, SR, DS, DSR, SR/F, SR/S |
| ZF15.6 | 15.6 kWh | 13.7 kWh | 2022-2025 | S/F, SR/F, SR/S, SR |
| ZF17.3 | 17.3 kWh | 15.2 kWh | 2022-2025 | S/F, SR/F, SR/S, DSR/X, DSR, DS |
| Power Tank 2.8 | +2.8 kWh | +2.5 kWh | 2014-2017 | S, SR, DS, DSR |
| Power Tank ZF3.6 | +3.6 kWh | +3.2 kWh | 2018-2025 | S, SR, DS, DSR, S/F, SR/F, SR/S, DSR/X |
A Power Tank is additive: it stacks onto the main pack and never renames it, so a ZF14.4 with a Power Tank is a ZF14.4 bike carrying 18.0 kWh of badge, not a “ZF18”. Three footnotes where the owner manuals are ahead of the catalogue above: from model year 2024 they quote the ZF15.6 as 13.6 kWh usable and the ZF17.3 as 15.1 kWh, 0.1 kWh below the 2022-2023 figures shown; the DSR/X carries the ZF17.3 through 2026; and the 2024-2025 DSR ships the ZF15.6, which its row does not list.
Which pack is on which bike today
| Model and years | Pack (max → usable) | Onboard charger | City range (manual) |
|---|---|---|---|
| SR/F, SR/S 2020-2022 | 14.4 → 12.6 kWh | 3.0 kW | SR/S 2020: 259 km |
| SR/F, SR/S 2023 | 17.3 → 15.2 kWh | 6.0 kW | not quoted |
| SR/F 2024-2026 · SR/S 2024-2025 | 17.3 → 15.1 kWh | 6.6 kW | SR/F 283 km · SR/S 275 km |
| DSR/X 2023-2026 | 17.3 → 15.2 kWh (15.1 from 2024) | 6.6 kW | 290 km (2023) · 288 km (2024-2026) |
| SR 2023-2025 | 15.6 → 13.7 kWh (13.6 from 2024) | 3.0 kW → 3.3 kW (2024) | 253 km |
| DSR 2024-2025 | 15.6 → 13.6 kWh | 3.3 kW | 249 km |
| S, DS 2024-2026 | 14.4 → 12.6 kWh | 3.0 kW → 3.3 kW (2026) | S 248 km · DS 232 km |
| FX, FXE 2024-2025 | 7.2 → 6.3 kWh | 0.65 kW | FX 164 km · FXE 169 km |
| LS1, XE, XB 2026 | LS1 4.4 → 3.7 · XE 4.3 · XB 2.4 kWh | 0.8 kW off-board | LS1 115 km |
Ranges are the owner manuals' own city figures, and vary heavily with riding style, terrain, temperature and speed; the same sheets put highway range at roughly 60-68% of city on the current models, and near 42% on the 2015-2016 FX. Blank cells mean the manual for those years does not quote a range — we leave them blank rather than interpolate. Per-model detail lives in the model catalogue, and pack detail in the battery catalogue.
Battery Pack Visualizer
A 28S pack drawn cell by cell, with colour standing in for cell voltage. Toggle between a balanced and an unbalanced pack to see what imbalance looks like when it is spread across 28 cells rather than compressed into a single B number.
This is a simulation, not your bike. The cell values are generated for the illustration. No Zero log of any generation contains per-cell voltages — the BMS reports only the highest cell, the lowest cell and the spread between them, which is exactly why a single weak cell is hard to localise from a log.
Sources:
This is an educational resource. For official battery specifications and safety information, consult your Zero Owner's Manual.