Battery Performance Tracker with Bee Data Logger
Use the Bee Data Logger's built-in battery voltage monitoring and ADC channels to track LiPo battery discharge curves over time. Log voltage readings to SD card for analyzing battery health and capacity degradation.
Overview
The Bee Data Logger has built-in voltage dividers for monitoring battery voltage and 7 ADC channels for reading external voltages. This project uses those features to create a long-term battery performance tracker that logs discharge curves, charging profiles, and capacity degradation over multiple charge cycles.
How It Works
- The
getBatteryVoltage()function from the Arduino Helper library reads the LiPo voltage via the built-in voltage divider - Additional batteries under test can be connected to ADC channels 3-9 via the header pins
- The ESP32-S3 wakes from deep sleep at regular intervals to sample all voltages
- Readings are timestamped with the DS3231 RTC and logged to the SD card
- The
getVbusPresent()function detects when USB power is connected (charging state)
Hardware Required
- Bee Data Logger (ESP32-S3)
- microSD card
- LiPo battery (powers the logger itself)
- Battery or batteries under test (connected to ADC pins via voltage dividers if needed)
Software
The Arduino Helper library provides the Battery.ino and Read-ADC-Voltages.ino examples as starting points. Combine with the Save-RTC-to-SD example for timestamped logging.
Data Analysis
The resulting CSV files can be imported into spreadsheet software or Python/Matplotlib to plot discharge curves, compare battery aging, and calculate effective capacity.






