Arduino based DIY LiPo storage discharger

by Axbri | October 29, 2014 | (0) Posted in Tips

 

When storing LiPo batteries for a long time, for example during the winter, they should be around half charged. Each cell should be at 3.85V. I have never really cared about this before. But since correct storage voltage can extend the life span of the batteries, I thought I would give it a try. Most chargers do have a special storage mode but mine does not, therefore I decided built my own Arduino based storage discharger.

This storage discharger assumes that the battery is close to fully charged when first connected. The Arduino and electronics is powered from the connected battery, therefore no external power is needed. When the battery is connected the voltage is measured and stored as a reference used to calculate the discharge progress. Only voltage of cell 1 is measured, I assume that all cells wave roughly the same voltage since I always balance charge my LiPos. This way I do not needs to use a voltage divider with two resistors that needs to be calibrated to measure the voltage. The Arduino then switches on a load with a solid state power switch (BTS133). In my case the load is a 30 ohm power resistor mounted to a heat sink, burning around 4W. The Arduino constantly monitors the battery voltage and shows discharge progress on a four LEDs. When 11.55V is reached, the load is switched off and a bright blue LED is turned on indicating is is done.

This is just a working prototype. It would be nice to mount it in an enclosure box and maybe add an LCD to show progress instead and a buzzer to sound when it is dune. Maybe I will do that later. Until then, it works very good as it is! I also need to add 2 cell support since have some of those batteries as well.

Remember, LiPos are DANGEROUS! Be sure you know what you are doing when trying this, and never leave something like this unatended wline in use.

Arduino code download: lipoDischarger (1KB)

 

COMMENTS

imalan54 on August 6, 2017
I built this and it seams to work as described. Is it ok to plug the Arduino USB cable into the computer to access the serial monitor while discharging a battery?
Log In to reply
Axbri on August 7, 2017
Yes. it is ok. It should not be a problem.
Log In to reply
imalan54 on August 9, 2017
Ok, Thank You. I built mine using a 50W 30 ohm Power resistor and it seamed to get hot enough you couldn't touch it. So I added a small 12v fan above the resistor and that worked great. I would include a picture of mine but I don't see anyway way to do that.
Log In to reply
imalan54 on August 9, 2017
PS thanks for sharing this project and the code. It was an easy build and worked great.
Alan
Log In to reply
imalan54 on August 11, 2017
Axbri,
what would it take to add the 2 cell support? I have several of these as well. Would you just have to add some code, or ad circuitry as well? Just curious.
Thanks Alan
Log In to reply
markfickett on August 26, 2017
I made a 1S-3S storage discharger and wrote up the details here: http://www.markfickett.com/stuff/artPage.php?id=395 . It's essentially 3 copies of the same circuit in parallel; you could build it with 2 copies of the circuit in parallel if you were only using it with 2S batteries. I used a cheaper Arduino-compatible chip (ATTiny85) so I didn't have to get 3 Arduinos, though it does require a little more knowledge to calibrate / upload the firmware.

For Axbri's design, my guess is the only change would be adjusting the target voltage in the Arduino sketch (but I haven't looked at the code). Adafruit lists the Uno's Vin as 6-20V (https://www.adafruit.com/product/50) , so at 3.85-4.2v/cell a 2S LiPo should be able to power the Arduino just fine; and all the LEDs are powered from 5V pins so that wouldn't need adjustment.
Log In to reply
Axbri on August 26, 2017
Amazing! I really like your design. I like that you made it modular and easy to adapt to batteries with different number of cells. Also, it is a good idea to use the internal 1.1V voltage reference. I didn't know about that when I designed my circuit over 2 years ago. You have definitely inspired me to build a new one. Hopefully, I will find the time to do that soon.
Log In to reply
Axbri on August 26, 2017
To make it work for 2 cell batteries, you just need to change how the Arduino is powered. In my design is powered from all 3 cells. But it should work if you power it from 2 cells as well. In my design, I only measure the voltage of cell number 1 and assumes that all cells are the same voltage. You just need to change the multiplier "3" to a "2" in the getVoltage()-function in the code.

Log In to reply
bluejets on January 15, 2021
https://www.flitetest.com/articles/arduino-based-diy-lipo-storage-discharger

Says code download cannot be safely completed and then requests the download be rejected.
Log In to reply

You need to log-in to comment on articles.


Arduino based DIY LiPo storage discharger