Cell grading and matching: why rack packs start from matched cells

A rack BBU is a 16S string of 21700 LFP cells, and a string delivers only what its weakest cell can deliver. Grading is the production step that decides which cells are allowed to share a string. It happens before the first weld, and firmware cannot undo it afterwards.

Why a 16S string is only as strong as its weakest cell

The VB-5125 shelf is sixteen 3.2 V cells in series at 100 Ah: 16 × 3.2 V = 51.2 V nominal, and 51.2 V × 100 Ah = 5,120 Wh, the 5.12 kWh on the datasheet. A series string has one current path, so every cell passes the same amperes. End-of-discharge arrives when the first cell reaches the cut-off, not when the average cell does.

That turns a capacity spread into a runtime loss. Take a 100 Ah string and a 1% capacity spread across the sixteen cells: the weakest cell grades at 99 Ah, so the shelf delivers 99 Ah and stops, even though most cells still hold charge. The arithmetic is 100 Ah × 0.01 = 1 Ah, which is 51.2 Wh at the nominal bus voltage, or 36 seconds at the 1C rate the platform is rated for (1 Ah ÷ 100 A = 0.01 h). At a 3% spread the weakest cell grades at 97 Ah, the loss rises to 3 Ah — about 154 Wh, roughly 108 seconds at 100 A — and the capacity you paid for exists on the invoice but not at the bus.

At 3% the BMS also starts working against the pack. During balancing it burns energy off the strong cells through bleed resistors drawing tens of milliamps: clearing a 3 Ah imbalance at 50 mA takes 60 hours of continuous balancing (3 Ah ÷ 0.05 A). The visible symptoms are heat inside the shelf, a longer absorption tail at the end of charge, and a pack that spends service life being levelled instead of being available.

Grading: the measurements taken before a cell is allowed into a string

Grading is the first of the six QC gates, and it decides what every later gate is working with. Incoming 21700 LFP cells are verified against datasheet limits, capacity-graded, and matched into groups so every pack starts from cells with aligned capacity and internal resistance. AC internal resistance is measured 4-wire at defined state-of-charge points. Outliers never reach welding: a cell outside the window is pulled while it is still a loose cell, not after it has been built into a string expected to last 6,000 cycles.

What is measuredMethodWhat the result controls
CapacityFull charge and discharge grading to a defined cut-offString capacity and the matching group a cell is assigned to
AC internal resistance4-wire measurement at defined SOC pointsCurrent sharing under load and the resistance band of the group
Open-circuit voltage and self-dischargeRest, then re-measure after a defined intervalScreens soft shorts and high self-discharge cells before assembly
Physical conditionVisual check of case, vent, wrap and terminalRejects mechanical damage that would surface in the field
Batch recordGrading data written against lot and groupBinds every cell to the lot and to later serial numbers

Why the matching window matters more than the average

An average is a purchasing number. A window is a build number. A supplier can report a mean capacity of 100 Ah while shipping cells spanning 97 to 103 Ah, and every string built from that population inherits the spread. A window of about 1% on capacity, with a tight band on AC internal resistance, is what keeps sixteen cells in a shelf behaving like one battery.

Resistance is the part buyers under-specify, because its effect is invisible at the terminals on day one. Wherever cells share a node, current divides inversely with resistance. Two paths at 50 mΩ and 55 mΩ — a 10% spread, well inside what unmatched cells deliver — split the current as 1/50 = 0.02000 and 1/55 = 0.01818, a total of 0.03818. The lower-resistance path carries 52.4% of the shared current and the higher-resistance path 47.6%. At the 46.2 A of the published telemetry snapshot, that is 24.2 A and 22.0 A.

The split is stable at t=0 and unstable over time. For every ampere it carries, the higher-resistance path dissipates 10% more heat (55 ÷ 50 = 1.10), so it runs hotter at the same throughput; a hotter cell ages faster and its resistance climbs further. As resistance climbs its share shrinks again, and the low-resistance cells absorb more of every bridge event where the load steps to full current. After a few hundred cycles the spread has widened rather than settled, and the cells that graded strongest at incoming inspection are the ones doing the most work.

Key takeaway

Matching is a build decision, not a firmware feature. A BMS can bleed milliamps, derate the pack and log the drift, but it cannot re-match a string. Match before you build, or pay for capacity the string will never deliver.

Drift over cycles: what the BMS sees and what it cannot fix

The BMS samples at 16 series-group resolution, so the string is watched as sixteen voltages and sixteen temperatures rather than one pack number. State of charge is estimated to 0.5%-class accuracy and state of health is trended against a per-cycle log. A healthy matched pack in service looks like the reference snapshot the site publishes: BUS 51.18 V, CUR −46.2 A, CELL delta-V 18 mV, delta-T 2.1 C, SOC 87.4%, SOH 99.2%, STATE BRIDGE-READY.

The operating ladder that goes with those readings is deliberately biased toward looking rather than acting:

  • Under 30 mV of group delta-V — normal for a matched string at mid-SOC. No action.
  • 30 to 50 mV — worth a look. Read the trend across cycles, not a single sample.
  • 50 mV — warning. The group is diverging faster than the rest of the string.
  • 100 mV — alarm. The hardware-enforced protection ladder escalates from warning to contactor drop, and the event is time-stamped in the log.

A single outlying group in a matched pack is usually a connection or a sense-lead problem rather than a cell: a high-resistance weld or a loose sense wire reads exactly like a weak group. That is why the first maintenance action is to check the harness and the weld before condemning a cell, and why a cell-level verdict needs the group's history instead of one reading.

What the BMS cannot do is restore capacity to a string built from a 3% spread. It can burn energy in the balance resistors, narrow the usable window through derating, and record what happened. All three are consequences of the build, not corrections to it.

Batch traceability: the paperwork that answers field questions

Grading data is only useful if it can be found again. Cells are sourced as one manufacturing lot per production run, and grading results are bound to that lot and to the serial numbers of the packs built from it. The record set that comes out of the line looks like this.

RecordWhat it holdsQuestion it answers
Lot assignmentCell lot number bound to the pack serial number at buildWhat cell lot is in rack 14?
Grading recordCapacity and AC internal resistance per cell, with matching groupWas this pack matched, and to what window?
Weld and torque recordSpot-weld inspection results and busbar torque valuesWas the interconnect verified before it shipped?
Formation and agingCharge and discharge curves with capacity retention and self-dischargeDid this module behave before it left the line?
End-of-line resultsProtection-response and telemetry checks bound to the serial numberWhat did this exact unit do on the bench?
OQC releaseOutgoing inspection result and certificate of conformanceWho released it, and against which checklist?

Records are retrievable by lot number and by serial number, which covers both directions of the question: a service engineer with a unit in hand, and a procurement auditor working back from a purchase order. The shipping document pack includes the certificate of conformance, the UN 38.3 Test Summary on request, the MSDS, Class 9 transport documentation for air and sea, and the drop test report. EU Battery Regulation 2023/1542 points the same way — its battery passport rules apply to batteries over 2 kWh from 2027 — so a per-unit record is becoming a market requirement rather than a vendor courtesy, and grading data is the raw material for it.

What a buyer should ask for

Six questions separate a graded pack from a pack that merely contains graded cells. Ask for the answers in writing, in the RFQ response rather than in a meeting.

  • What is the matching window on capacity, stated as a percentage of nameplate, and what is the resistance band in milliohms?
  • Does a single shelf come from one cell lot, or can a shipment mix lots across the order?
  • How is AC internal resistance measured, at which state-of-charge points, and with what instrument class?
  • What is the acceptance criterion for self-discharge, and over what rest interval is it measured?
  • How long are batch records retained, and do they cover the full five-year warranty term?
  • Can the records be pulled by the serial number printed on the unit, without a factory visit or a support ticket?

Field evidence: what good matching looks like after a year

Matching does not show up in a headline specification. It shows up in the trend. In a well-matched pack the group delta-V stays small and flat across the cycle count — the 18 mV class of the reference snapshot, not a figure that creeps by a few millivolts a month. SOH declines smoothly against the per-cycle log instead of stepping down when one group starts to dominate the string, which is how a pack tracks, or fails to track, the 6,000-cycle rating of the cell platform. Group current share stays even through a bridge event, and the pack reaches the generator window with the runtime it was sized for.

In a poorly matched pack the order of events is predictable. Delta-V widens first, quietly. Then one group reaches the discharge cut-off ahead of the rest, so the pack ends its discharge early and the reported state of charge turns optimistic — an SOC estimate is only as trustworthy as the group it tracks. Runtime is lost before any alarm fires, because the alarm sits at 100 mV and the loss started long before that. The buyer ends up with a pack that meets its nameplate on paper and misses its sizing calculation in service.

That is why grading sits in production rather than in purchasing. A tight window costs a longer grading step and a larger rejected population at incoming inspection. A loose window costs runtime in every rack, for the life of the deployment, with no field fix available.

Sources

  • UNECE Manual of Tests and Criteria, Section 38.3 — transport testing of lithium cells and batteries (T.1 to T.8 screened in-house as pre-compliance)
  • IEC 62619:2022 — safety requirements for industrial secondary lithium cells and batteries
  • ANSI/CAN/UL 1973 3rd edition — stationary battery certification path through accredited labs
  • EUR-Lex Regulation (EU) 2023/1542 — battery passport rules for batteries over 2 kWh from 2027
  • arXiv 2407.21783 — Llama 3 infrastructure: 466 interruptions over 54 days of pre-training, 419 unexpected

Put your matching window in the RFQ.

Name the capacity and resistance windows you need, and we will quote the grading step and the batch-record pack against them.