Drogheda/03-Architecture-Hardware/2026-09-09_Drogheda_Battery-Chemistry-HighTemp_v1.0.md

7.0 KiB
Raw Permalink Blame History

tags project author date status
project-drogheda
hardware
battery
thermal
power
Project Drogheda Helgen CTO 2026-09-09 Draft — decision input

Backup cell at 45 °C: why Li-ion is failing, and what replaces it

Bottom line: LiPo is not an upgrade — a LiPo pouch is Li-ion, in a worse package. And before changing any cell: RNTB = 10 k makes the LTC4040 stop charging at +40…+42 °C. At a 45 °C port the pack essentially never charges. That is a resistor, not a chemistry. The chemistry that then lets you raise that limit is high-temperature LiFePO4, which the LTC4040 already supports — JP2 re-strap, no respin.


1. LiPo is the wrong direction

A "LiPo" pouch is lithium-ion (LCO or NMC) in a soft laminate bag. Same 0–45 °C charge window, same calendar aging, and worse in a hot sealed box: no vent, no CID, and it swells. The 2000 mAh cells are bench hardware. Keep them on the bench.


2. 🔴 The charger is refusing to charge — and it is our resistor

RNTB (10 k 1 %) biases the pack NTC (RT1, 10 k, on the cell via P4.3). The LTC4040 pauses charging when the NTC falls to 53.6 % of RBIAS and resumes below 325 %. With RBIAS = 10 k that puts the charge window at:

NTC β Charge window today
B3380 −3.1 °C … +42.4 °C
B3950 +0.6 °C … +39.7 °C

Port operating temperature is ~45 °C. The pack sits above the hot-pause threshold for most of the working day, so it never reaches full charge and the backup is not there when the power drops. The MCU's own CHRG_EN hot-cut sits on top of this.

This is very likely most of the "poor performance" — and it is not the cell's fault. Note the earlier fleet finding blamed no-charge on the LTC4040 safety-timer latch; a pack that is repeatedly hot-paused mid-charge is exactly how you reach that latch.

Re-scaling RNTB

You cannot simply raise this on the current cell — an NMC/LCO 18650 must not be charged at 55 °C. Raise it together with the chemistry change:

Target hot pause β New RNTB Resulting window
+55 °C B3380 6.62 k +6.1 … +55 °C
+55 °C B3950 5.56 k +12.3 … +55 °C
+60 °C B3380 5.67 k → 5.6 k E24 +9.7 … +60 °C
+60 °C B3950 4.64 k +16.0 … +60 °C

RBIAS sets both ends, so raising the hot limit raises the cold one. Specify the B3380 NTC (the delta doc already calls B3380 "ideal", B3950 "acceptable") — with B3950 you would refuse to charge below +16 °C, which is a real winter night in Ensenada.

⚠ Computed from the datasheet's 53.6 % / 325 % ratios and a β model with R25 = 10 k. Check against the actual NTC part's R/T table before cutting the BOM.


3. The cell: high-temperature LiFePO4 26650

Today — NMC/LCO 18650 High-temp LFP 26650
Charge temp 0…45 °C −20…60 °C (Topwell 3600 mAh) · 0…75 °C (JGNE 4000 mAh)
Discharge temp −20…60 °C −50…80 °C · −30…75 °C
Nominal 3.6 V 3.2 V
Cell energy ~11 Wh (3 Ah) 11.5 Wh (3.6 Ah) · 12.8 Wh (4 Ah)
Cycle life 300–500 ≥ 2000 to 80 %
Thermal runaway onset ~150–200 °C ~270 °C (olivine) — does not propagate
Calendar aging at 45 °C fast far slower

4P of the 3.6 Ah cell = 46 Wh; 4P of the 4 Ah = 51 Wh — both at or above today's ~43 Wh. Even 3P clears 38 Wh.

The board already supports it — one jumper

LTC4040 F2 selects chemistry: high = Li-Ion, low = LiFePO4. Float table:

F1 F0 F2 = 1 (Li-Ion) F2 = 0 (LiFePO4)
0 0 3.95 V 3.45 V
0 1 4.00 V ← we are here 3.50 V ← we land here
1 0 4.05 V 3.55 V
1 1 4.10 V 3.60 V

Current straps are F2=1 / F1=0 / F0=1. Flip JP2 (F2) only → 3.50 V LFP float. The 2026-07-06 pre-fab audit already recorded this path as preserved. No schematic change, no respin. 3.50 V on LFP is ~90 % SoC — deliberately shy of 3.65 V, which is exactly what you want for calendar life at temperature. JP3 to F1=1 gives 3.60 V if you later want the last few percent.

What else must change

  1. RNTB → 5.6 k (§2) — without this the swap changes nothing; the charger still pauses at 42 °C.
  2. Firmware BAT_CRITICAL / BAT_RECOVERY. LFP's discharge curve is flat at ~3.2 V from 90 % to 15 % SoC. Voltage-based SoC stops working. Re-derive the thresholds against the knee (~2.9 V), and expect the gauge to be near-useless mid-band — coulomb-count or accept a three-state indicator. The firmware review already flagged these thresholds as bench-tune items for the 4.00 V pack; this makes it mandatory.
  3. MCU CHRG_EN hot-cut threshold — raise in step with RNTB, or it becomes the new binding limit.
  4. LTC4040 boost current. 3.2 V nominal instead of 3.6 V ⇒ ~12 % more pack current for the same backup watts. Re-check against the boost limit and the RS1 errata fix.
  5. Mechanical. 26650 is 26.5 mm vs 18.5 mm and ~85 g/cell. New ASA battery-case print, and re-check the 4P footprint inside the HBOX.
  6. Sourcing. The high-temp grades are Chinese-supplier parts (JGNE, Topwell class), not a shelf item in MX. Check MOQ, lead time and whether they will give a real R/T and cycle-at-temperature spec before this goes on the 30-unit BOM.

4. Alternatives, briefly

Option Verdict
High-temp LFP 26650 ✅ Recommended. Solves charge-at-temperature, board already supports it, cost/Wh comparable
Supercap / LIC hold-up −40…+65/85 °C, no charge-temperature window at all, effectively infinite cycles — but ~1/20 the energy. The right answer if the real requirement is "report a power-loss alarm and shut down cleanly" rather than "run for hours". Pin the requirement before dismissing it again
Smaller pack, better cell Nobody has pulled this lever. 43 Wh is a lot for a parked machine. Halve the requirement and the thermal problem halves with it
LTO Best temperature range and cycle life, but 2.4 V nominal breaks the LTC4040's 1S window entirely — new charger. Low energy density, expensive, hard to source. Out
High-temp-rated NMC 18650 Keeps the form factor, but you are still fighting the same chemistry for a few °C. Marginal
NiMH High self-discharge at temperature, and trickle-charging hot is its own failure mode. Out

5. Do this first — you already have the data

Do not buy cells on an assumption. tbat (TMP102 on the pack) and tntc are already in $PHLG and already landing in htracker. Pull the fleet histogram and answer:

  1. What is the actual pack temperature distribution, by unit and by hour?
  2. What fraction of the day does it sit above the current ~40–42 °C hot pause?
  3. Does cflt / charge-fault correlate with those windows?

Question 2 is the number that decides whether this is a resistor change, a chemistry change, or both. It is one query against data we are already collecting.