Blog Home

Predicting a lithium-ion battery’s life cycle with tinyML

Arduino TeamAugust 24th, 2021

Nothing is perhaps more frustrating than suddenly discovering your favorite battery-powered device has shut down due to a lack of charge, and because almost no one finds joy in calculating how long it will live based on current consumption levels/time used, there must be a better way. This problem is what inspired Manivannan S. to create a small project that can predict when a battery is about to go flat using the “magic” of machine learning and a voltage sensor.

The circuit for the project is quite basic, consisting of an Arduino Nano 33 BLE Sense, a 125 ohm rheostat, a voltage sensing module, and finally the rechargeable 18650 Li-ion cell. The discharge current of the battery was set at 1 ampere with the rheostat, at which time the voltage output was sampled continuously for 30 minutes at a rate of one reading per minute. This data was imported into Edge Impulse’s Studio and used to train a regression model that can predict the estimated voltage and therefore also the capacity remaining.

Once tested, the model proved very successful in determining the battery’s voltage after an hour of use, after which Manivannan went onto explain how this data could be further extrapolated to estimate the complete life cycle. By incorporating machine learning into smart battery technology, power management can become more approachable and increasingly efficient.