Drone Battery Testing for Racing Drones: Replaying the Real Race Current Profile on a Pulse-Power Bench

Why a Steady-State C-Rating Lies for Racing Drones

My name is Karl Huang, Senior lithium battery Engineer at Horizon Power, and I have run several thousand racing packs through our bench over the last three seasons. The single mistake I see new engineers make is trusting the printed C-rating. A lab “45C” label is measured at a constant discharge current on a fresh cell at 25 °C. FPV racing is nothing like that. A qualifying lap is a violent burst waveform: three to eight-second full-throttle punches where a 1300–1500 mAh 6S pack pulls 100–200 A, which is 40–80C instantaneously, separated by partial-throttle corners where current drops to a fraction of that. The lap average might be only 25C, but the aircraft lives or dies on those 300-millisecond spikes.

A constant-current discharge test never sees the transient terminal-voltage sag or the per-cell divergence that happens in the first moment of a punch. A drone lithium battery that holds 3.7 V/cell cleanly at a steady 45C can still collapse below the 3.0 V/cell cutoff for 200 ms under a real burst — not because it lacks capacity, but because of equivalent-series-resistance (ESR) and busbar drop. If your test method only ever runs constant current, you will mis-rate every pack and your pilots will get mid-race cutouts you never predicted. That is why Horizon Power moved to a race-profile replay bench for every drone battery testing program on racing airframes.

Drone battery pulse-power testing bench with racing LiPo pack and oscilloscope burst waveform

Building the Race-Profile Pulse-Power Bench

The core idea is simple: instead of inventing a current, we replay the actual current waveform the aircraft drew in a real race. The bench has five parts. First, a programmable DC electronic load with arbitrary-waveform capability, or a scripted constant-current profile that can be stepped millisecond by millisecond. Second, a current shunt or Hall sensor logging at 100 Hz or faster. Third, a 12–16-bit voltage data-acquisition channel per cell, wired to the balance lead so we see every series cell, not just the pack total. Fourth, a thermal camera or IR probe to catch hot spots. Fifth, and most important, the source waveform itself.

We capture that waveform from flight telemetry: on a reference aircraft we log the ESC current at 100 Hz for a full qualifying lap, then replay that exact trace on the load. If a team has no telemetry yet, we start from a synthetic stepped burst — five-second punches at 20C, 40C, 60C and 80C with short recoveries — which is less accurate but still exposes the usable C and the divergence a flat discharge curve hides. Before any electrical characterization, the pack must pass the mechanical, thermal, and altitude abuse sequence of UN 38.3 (T.1–T.8) so we are never characterizing a pack that could vent on the bench. We characterize at the real race state of charge — 4.20 V/cell — not the 30% SoC band used for transport-class packs under IATA Section II. Cell-level safety context comes from IEC 62133-2. Calibration matters: we cross-check the shunt against the DAQ within ±0.5%, and we Kelvin-connect the voltage sense directly to the cell tabs so harness resistance never contaminates the reading. A sloppy sense lead can add 20–40 mV of error per cell at racing current, which is exactly the margin a close call depends on. That discipline is what makes a custom battery solution number trustworthy lap after lap.

Test 1 — Transient Terminal-Voltage Dip Under the Burst Profile

The first measurement is the pack terminal voltage while the qualifying-lap current trace plays. We record the minimum pack voltage and exactly how long it sat below the cutoff threshold. For a 6S pack the cell cutoff of 3.0 V translates to 18.0 V at the pack. A healthy lithium battery dips to 18.6–19.0 V and recovers within the corner; a weak pack spends more than 150 ms below 18.0 V, and the flight controller will arm a low-voltage cutoff mid-punch — the classic “ghost cutout” pilots blame on the ESC.

A worked example from our bench: a 6S 1300 mAh pack labelled 45C, replayed against a real qualifying trace, only sustained 41C before touching 18.0 V. The missing 4C is pure ESR plus busbar drop, not chemistry. Our acceptance gate is simple and posted on the spec sheet: pass if minimum pack voltage stays at or above 18.4 V during the worst one-second window of the replay. Anything below that goes back for cell matching, never to a pilot. We once caught a batch where the dip passed at constant current but fell to 17.9 V for 210 ms under the replay — the constant-current test had rated it fine, and three of those packs had already been flown by a customer who reported “random cutouts on the straight.” The replay bench found the cause in ninety seconds.

Test 2 — Per-Cell Voltage Divergence Under Burst

During the punch, the weakest series cell sags first, and a single cell hitting its low-voltage protection drops the entire pack. We tap every cell and record the maximum spread at peak current. Spread above 80 mV at peak current flags a mismatched or degraded group; we grade acceptance at 60 mV or tighter. This measurement is the direct counterpart to our cell-matching and grading work — a pack that diverges on the burst test is the same pack that will drift apart over a season. For Horizon Power race programs we feed the measured per-cell spread straight into the custom battery solution telemetry tag so the pilot sees the real margin, not the marketing margin.

Test 3 — Inter-Burst Recovery and C-Rating Verification

Between punches the pack must recover terminal voltage from the sag, or the next corner starts from a lower floor and the cutoff arrives earlier. We measure recovery directly: a healthy pack recovers roughly +140 mV in four seconds; a tired pack recovering less than 60 mV has its capacity reserve depleted and is a retirement candidate. Then we verify the label C-rating with a stepped constant-current burst — 20C, 40C, 60C, 80C for five seconds each — and find the highest rate at which terminal voltage still stays above the cutoff. Many packs printed as “60C” only sustain 48C before the floor drops out. That usable number, not the label, is what we print on the Horizon Power race spec sheet.

Test 4 — AC Impedance at ESC Switching Frequency and Thermal Signature

The ESC switches at 8–24 kHz, and the pack sees that ripple riding on top of the DC burst. We inject a small AC current sweep from 1 kHz to 100 kHz and measure pack ESR across the band. A pack with high 10–20 kHz ESR heats unevenly and loses punch late in a heat, exactly when the last lap matters. In one comparison we measured a 12 mΩ pack ESR at 15 kHz versus a 7 mΩ unit of the same label, and the high-ESR pack ran 9 °C hotter per heat and sagged an extra 0.4 V in the final punch. We also capture per-burst surface-temperature rise with the IR probe; our acceptance limit is under 6 °C of rise per four-second punch across a six-burst heat. This test is the bridge between bench rating and the thermal-envelope work we do on race-day performance — a pack that passes the dip test but fails the impedance-and-heat test still surprises pilots in the final lap.

From Bench Rating to Flight Qualification

The bench rating is not the end of drone battery testing — it is the input to the race-day go/no-go gate. Every Horizon Power drone battery we ship for racing carries its measured usable C and per-cell spread stamped into the data tag, so the pilot gets a real number instead of a label. We re-test after any hard crash or over-temperature event, and on a schedule of every 40–60 aggressive cycles, because ESR and per-cell spread climb while usable capacity stays flat — the pack looks healthy on a capacity check yet quietly loses punch. The loop is continuous: telemetry from actual races feeds new replay waveforms back to the bench, and the bench keeps calibrating to reality rather than to a catalogue. That closed loop is what lets a drone lithium battery program stay predictable across a full season of racing drones, where the difference between first and a mid-air cutoff is often 150 milliseconds of untested sag.

Frequently Asked Questions

Can I rate a racing pack with a normal constant-current discharge test?

You can get a rough capacity number, but you will not capture the transient sag, per-cell divergence, or recovery behaviour that actually causes race-day cutouts. A constant-current test measures chemistry; a race-profile replay measures the pack as it is flown. For competitive racing drones, the replay is the only rating that predicts the track.

What current waveform should I replay if I do not have telemetry yet?

Start with a stepped burst: several five-second punches at 20C, 40C, 60C and 80C with short recoveries between them, matching your pack’s cell count and typical lap length. It is less accurate than a logged qualifying lap, but it still reveals the usable C and the divergence that a flat discharge curve hides.

How often should I re-test a pack through a season?

Re-test after any hard crash or over-temperature event, and on a scheduled basis every 40–60 aggressive cycles, because ESR and per-cell spread drift upward while usable capacity stays flat. A pack that passed at 48C usable in round one may be at 40C by round six and is a silent retirement candidate.

Does busbar and connector resistance really matter at racing currents?

It dominates. At 150 A a 6 mΩ busbar alone drops 0.9 V across the pack — nearly half of a typical sag budget. Lapped nickel, welded connections, and short Kelvin-sensed sense leads are not optional details; they are the difference between a pack that hits 18.6 V and one that trips the cutoff.

How do I set a safe low-voltage cutoff from pulse-test data?

Set the flight-controller cutoff a comfortable margin above the minimum pack voltage your replay measured, not above the label. If your worst one-second window dipped to 18.4 V, a cutoff at 18.6–18.8 V gives protection without false trips, and it should be re-validated every time the replay waveform or the pack population changes.


Further Reading

References

Similar Posts