Arduino Universal Battery Charging Shield update
One of my most viewed projects ever (both on Instructables and Github) is my AVR Universal Battery Charger. It was also one of the very first projects I ever published, so there wasn’t a proper schematics or board layout (back then I simply didn’t care), my code was messy and the hardware had some flaws. Since then, I was getting a lot of requests, comments and questions about a new version, and after a long development, I will be releasing a new version on this site (designated as version 3.3 or 3.4 – yes, there were that many iterations between the original 1.0 and this version – so that’s what took me 3 years, if you’re asking). You can see a picture of the prototype above this article.
As of now, it consists of three Arduino UNO shields: the Power shield, the Balancing shield and the UI shield. The idea is that you can combine only the shields you really need – so if you do not need balancing, then do not include the balancing shield, just the Power & UI shields.
Biggest changes
Here I am summarizing the biggest changes to this project:
Balancing: yes, by a popular request, it is now capable of balancing up to 4S lithium batteries.
Arduino-compatible: I am not a big fan of using Arduino for a project like this, I’d rather make a dedicated board for it with custom software in AVR Studio). But so many people requested this to work with the Arduino environment that I decided to try doing this inside the Arduino IDE.
Just a note – this project is really stretching the capabilities of the 8-bit 16-MHz microcontroller, so there will be some compromises regarding accuracy and power. Maybe in the future, I will make a version using my favorite microcontroller, the STM32F103 (sometimes referred to as ‘the blue pill’ in the community).
Customisable: since it consists of three separate shields, each containing a separate system, you can use only the shields with functions relevant to you. Don’t want balancing? Don’t include the Balancing Shield. Don’t want the display and controls? Well don’t include the UI shield. This also means that in case of any future updates, you can swap only the outdated shield.
Firmware & hardware improvements.
Specs
- Charging:
- max input: 20 V DC
- max output: 18 V (charges 4S lipo just fine)
- max charging current: 2 – 3 A (depends mostly on quality of the inductor, cooling and ambient temperature)
- Discharging (battery test)
- max current: 2.5 A
- max heat dissipation without external cooling: 3 – 6 W
- Balancing
- balance resistor: 18 Ω per cell
- UI
- 84 x 48 monochrome display
- rotary encoder with button
- 2 LEDs
- Serial port
- Other
- analogue temperature sensor
Project status
As you’ve seen in the cover photo, I have a prototype of version 3.3, and I am currently in the phase of evaluating performance of the different shields. Based on that I will decide either to publish version 3.3 or skip to version 3.4 and publish that, as there are some changes I want to do to the overall concept. This post is aimed at giving you some information about the progress, since as I said in the begging, I am getting a lot of questions about the next version of this project.
Dear Martin,
any idea when you will release the latest version on Github including the PCB´s ?
Would highly appreciate this !
Thanks for the good and continious work !
Best regards
Michael from Germany
Hi,
I need to finish some priority projects first, but it will be out before the end of May. I have the hardware and 90 % of the firmware, but it still needs to be polished a lot & some important bugs solved…
Regards, M.
Publish, I can’t wait , Adam Henry Nigeria ..
Eeh I know the development is taking too long, but I am now prioritizing other projects, so I will be releasing the raw data (not finished) to GitHub in a few weeks, so anybody can finish it or use it as-is.
excellent project I look forward to seeing the end
Hi Martin,
I liked your project. It looks very good.
Have you put the files to download somewhere?
Thank you very much.
Hi, yeah, I forgot about that. Since I now consider the project abandoned, I’ll put what I have on my GitHUb in the next few days (but note that it is not finished!)…
Hi, Thanks for your reply.
Ok, I’ll check your GitHUb.
thanks.
Have a nice day.
OK, I’ve just uploaded it, https://github.com/MartinD-CZ/batteryCharger/tree/master/unfinished-arduino
Hi Martin,
I appreciate your attention. I downloaded the files but could not open the files in the softwere eagle. Was the layout done in eagle or another softwere? Do you know the version of softwere?
Thanks…
Hi
Please ignore my question. I already managed to open the files.
Thank you very much.
I have questions …
I have a 7.2V 6.5A cell.
How could high current charging be solved?
Thank you in advance for your reply!
Regards Oscar
Hi. Any further development on this project?
Hi.
Do you have this project Atmega328 based?