Hardware · TIPE · ENSEEIHT · Level 2
Battery Test Bench & Smart Charging PCB
Designed and built an automated battery testing platform for Ni-MH and Li-Ion cells. PCB design, embedded smart charging logic, continuous data acquisition, and Python signal processing, all running for months without interruption.
The Problem
Testing a battery properly is not reading its voltage once.
Useful characterization requires repeatable charge and discharge cycles, reliable end-of-charge detection, continuous synchronized measurements, and data you can interpret. Manual testing misses all of this: errors accumulate, results drift, and every repetition introduces new variability.
Challenge 01
Repeatability
Manual setups introduce variability between cycles. Any inconsistency in timing, thresholds, or measurement points corrupts the comparison.
Challenge 02
End-of-charge detection
Simple voltage cutoffs are not enough. A reliable system needs multiple complementary stopping conditions to handle different battery chemistries and charge states.
Challenge 03
Data usability
Raw acquisition is just numbers. The goal was to produce filtered, comparable curves, not just logs, for each cycle, automatically.
What I Built
Three layers: hardware, embedded control, signal analysis.
01 - Hardware
PCB & Test Bench
- Schematic design and 2-layer PCB routing in KiCad
- Battery holder, sensing circuit, and instrumentation wiring
- Mechanically stable bench for months of unattended operation
02 - Embedded
Smart Charging Controller
- State machine: charge → pause → discharge → repeat
- Five complementary end-of-charge stopping conditions
- Continuous measurement loop with synchronized logging
03 - Analysis
Python Signal Processing
- Automated data ingestion from continuous acquisition
- Filtering and smoothing to separate signal from noise
- Cycle-by-cycle comparison and efficiency tracking
Embedded Logic
Smart charging in 5 stopping conditions.
Five complementary checks, so charge stops at the right time across battery states and chemistries.
Maximum charge timer
Hard stop after a fixed duration, a last-resort ceiling that prevents overcharge when other conditions fail.
Absolute voltage threshold
Charge terminates when terminal voltage exceeds the safe upper limit for the cell chemistry.
Sustained low current
When current drops and stays below a threshold for a defined period, the cell is considered full.
Negative delta-V detection
Monitors the characteristic voltage drop that signals full charge in Ni-MH cells, validated across many cycles.
Voltage plateau detection
Identifies stagnation, when voltage stops rising meaningfully, and terminates charge cleanly.
Results
Results
Instrumentation schematic
2-layer PCB routing
Cycle response
Signal processing
Smart charge logic
Automated setup
Lessons Learned
Lessons learned
01
How to design a complete electrochemical test workflow that runs without supervision, from hardware reliability to embedded robustness.
02
How to bridge embedded control logic with experimental measurement requirements, two different domains that must agree precisely.
03
How to go from raw acquisition to filtered, comparable, interpretable curves, and what gets lost at each step if you are not careful.
Tech Stack