# PWM lithium-ion charger

I want to make a custom lithium-ion 18650 standard cell charger as I will be charging 100s of them (recycling old laptop batteries). Base on my research, lithium-ion cells use constant-current, constant-voltage charging. I'm thinking of using 5v and PWM using an Audrino with a feed back loop to maintain the constant current and voltage. Will the PWM ripple cause any damage to the Lithium ion cells? Is there any major short coming to my thinking?

• @IgnacioVazquez-Abrams thanks! Sorry I'm new to this. If I infer correctly from the document, I use would be able to use PWM through a buck converter to charge the Lithium ion cells. Would it be possible to use all 6 pwm pin outs at once? Or would it make the feed back loop too slow? – Melvin Foo Jun 12 '15 at 15:53
• In my opinion, this is an impractical project. If you just want to learn about charging, then go for it. But if you just want to get the job done, buy a charger (check the flashlight forums for recommendations) or build one using dedicated charger IC's. CC/CV is just the beginning, you also need pre-charge to recover deeply discharged cells, charge termination due to low acceptance (you cannot float Lion at CV), and then charge tiemout as a safety backup. And you need to measure cell temp, and suspend charging at high temperatures. – mkeith Jun 12 '15 at 18:54
• xtardirect.com/products/xp4-panzer-charger – mkeith Jun 12 '15 at 18:58
• Lithium cells are pretty touchy about the final charge voltage, go just a few tenths of a volt over and some of them become incindiary devices (18650s are more robust than the polymer pack cells found in many new slim laptops but anyway). You probably can do it with an arduino controlled buck (just be sure to carefully calibrate it), but it's probably easier, cheaper and faster to get an off-the-shelf charger. – Sam May 28 '16 at 5:42

For less than $2 you could get a good one which looks like this: For less than$6 you could get a fancier one which looks like this and which allows to monitor the charge better: