ESP32 Controlled Li-ion Battery Tester
Budget: $250 – $750 AUD
Goal: 1-board, 4-channel Li-ion (3.7 V) tester that charges, discharges (~1 A), logs capacity, spits JSON over USB, shows status on RGBs.
Brains: Single ESP32 (Arduino/PlatformIO).
Power: 5 V in (USB-C or barrel) + always-on 2-pin fan header.
Per channel
Function Parts & targets
Charge TP4056 or MCP73831 @ 1–1.2 A, CC/CV to 4.2 V
Discharge 3R9 10 W non-inductive resistor + N-MOSFET (AO3400/IRLZ44N) ≈1 A
Sense INA219/228/260 on I²C (addrs 0x40-0x43)
Protection 1.5–2 A polyfuse, TVS/Schottky, clear polarity silk
UI 1 × WS2812 RGB (in series chain, 4 total)
Firmware sketch
Detect cell > 3 V → charge → rest → discharge to 3 V → JSON summary
Sample INA every 1-2 s, integrate mAh, calc duration.
LED colours: off/ red/ yellow/ green/ blue = idle/charging/discharging/pass/fail.
PCB
≤ 100 × 150 mm, components one side if possible.
JST-PH on front edge, silks for every header.
4× mounting holes, leave copper under load resistors.
Deliverables
Schematic + PCB (Fusion 360 or KiCad)
Gerbers + BOM
Firmware with commented state-machine + build instructions
README: hookup, flash, test
Brains: Single ESP32 (Arduino/PlatformIO).
Power: 5 V in (USB-C or barrel) + always-on 2-pin fan header.
Per channel
Function Parts & targets
Charge TP4056 or MCP73831 @ 1–1.2 A, CC/CV to 4.2 V
Discharge 3R9 10 W non-inductive resistor + N-MOSFET (AO3400/IRLZ44N) ≈1 A
Sense INA219/228/260 on I²C (addrs 0x40-0x43)
Protection 1.5–2 A polyfuse, TVS/Schottky, clear polarity silk
UI 1 × WS2812 RGB (in series chain, 4 total)
Firmware sketch
Detect cell > 3 V → charge → rest → discharge to 3 V → JSON summary
Sample INA every 1-2 s, integrate mAh, calc duration.
LED colours: off/ red/ yellow/ green/ blue = idle/charging/discharging/pass/fail.
PCB
≤ 100 × 150 mm, components one side if possible.
JST-PH on front edge, silks for every header.
4× mounting holes, leave copper under load resistors.
Deliverables
Schematic + PCB (Fusion 360 or KiCad)
Gerbers + BOM
Firmware with commented state-machine + build instructions
README: hookup, flash, test
Related categories:
Electronics
Electrical Engineering
PCB Layout
Arduino
Circuit Design
JSON
Embedded Systems
Fusion 360