loading

As many of you may know, this Lazy Old Geek loves Arduinos. Many of my projects are portable that need a battery source:

https://www.instructables.com/id/Arduino-Pedometer/

https://www.instructables.com/id/Arduino-Nokia-LCD-Sensors/

https://www.instructables.com/id/Ultrasonic-Tape-Measure/

 

So, I’ve been using Adafruit 6 AA Battery holder $5.00

https://www.adafruit.com/products/248

with 6 AA rechargeable batteries. (See Picture)

Another choice would be Adafruit 9V Battery holder $3.95

https://www.adafruit.com/products/67 

 

My Complaint:

Here’s why I don’t like 9V alkaline batteries

Expensive ~$3

Low capacity ~600 mAh

One time use

 

In comparison, I bought 16 AA 3000mAh NiMH rechargeable batteries for $9.38 on ebay.

 

6 AA would cost $3.50 but would have 5x the capacity and are rechargeable.

 

My Complaint about AAs:

Okay, so I’m a Geek and I’m not really satisfied with the 6 AA battery setup.

  1. It’s pretty heavy and bulky.
  2. My battery chargers will only take four batteries at a time, so I either have to charge them in two stages or use two different chargers. But I’m Lazy.

 

So, naturally, I’ve been looking for an alternative.

 

Hark! I find out about the 18650. These are Li-Ion batteries nominally 3.7V.

Li-Ion batteries are like those used in most laptops. Now, I did some research on Li-Ion batteries and like them:

https://www.instructables.com/id/Rechargeable-Battery-Tips/

Step 1: 18650 Battery

I bought 6 18650 3200mAh batteries for $10.85 on ebay. I don’t think this is still available but you can find pricing pretty similar.

 

The 18650 battery is nice but it does have its own problems.

 

Problem: It is a little bigger than a AA battery so it needs its own holder.

Solution: You can buy a two battery holder for $1.08 on ebay. (See Picture)

http://www.ebay.com/itm/Black-Plastic-Battery-Storage-Case-Box-Holder-2-x-18650-6-Wire-Leads-/140652926896?pt=LH_DefaultDomain_0&hash=item20bf9157b0#ht_4068wt_902

The reason I selected two batteries in series is so that it will provide enough voltage for the Arduino.

Problem: It is not a standard battery type so needs its own charger.

Solution: I bought a charger for $3.46 on ebay. (See Picture)

http://www.ebay.com/itm/Battery-Charger-18650-Rechargeable-Li-Ion-3-6-3-7-/280638594652?pt=LH_DefaultDomain_0&hash=item41575d1e5c#ht_2522wt_952

 

Problem: A bigger problem is that the batteries I bought are ‘unprotected.’ This is a little different from NiMH rechargeable batteries which can be discharged down to about ½ a volt. If Li-Ion batteries are discharged too much they will not be rechargeable. The 18650 is nominally 3.7 volts, will charge to about 4.25 volts but should not be discharged below about 2.7 volts. I believe there are some other requirements about not charging incorrectly but I am (assuming) my charger is taking care of this. And not discharging too fast but hopefully my circuits will prevent this.

 

************************************************************************************************************

Warning: If appropriate charge and discharge methods are not used, there apparently is some danger of the 18650 batteries exploding.

************************************************************************************************************

Solutions: See next step

 

Step 2: 18650 Protection Circuit

Solution1: You can buy ‘protected’ 18650 batteries with the circuitry built in. However, they seem to be about twice the cost.

Solution2: You can buy individual battery protection circuits and add them to your batteries. I just found a protection circuit for $1.27@ from Deal Extreme.

http://www.dealextreme.com/p/charge-discharge-protective-circuit-board-for-rechargeable-li-ion-batteries-17-4mm-1-9mm-26112

Arduino: Since I am designing a battery for the Arduino, I will need to use two 18650 batteries in series. This will provide a nominal 7.4 Vdc and up to 8.5 Vdc when fully charged.

Solution3: You can buy battery protection circuits designed for two batteries. Here’s one for $4.49:

http://www.batteryjunction.com/pcb-7-2.html

Solution4: Now I am a Geek so I decided to build my own.

Step 3: My Protection Circuit

Design: My main concern was not allowing the 18650 batteries to discharge below about 6 Vdc or 3 Vdc apiece.

 
*************WARNING****************************************************************************************

So I was trying this circuit out with an experimental audio amplifier and, as expected, I forgot and left it connected. Well, something happened and my amplifier chip burned out and shorted.
Good news is that the my circuit disconnected the batteries when they got down to about 6Vdc total.
Bad news is that the batteries discharged unevenly. One battery was about 3.7Vdc and the other was about 2.2Vdc. This is below the recommended discharge limit.
The not so bad news is that both batteries seemed to recharge correctly.
Now my opinion is that this uneven discharge was caused by the shorted amplifier drawing too much current (unevenly).
But this is a WARNING that this design may not protect your batteries correctly. I have redesigned this circuit and am waiting for some 1.8V zener diodes to test and finalize Design2. Once I get it working, I will add it to this Instructable.
*************WARNING****************************************************************************************


Simple Solution: I could just keep an eye on them and charge them often. Li-Ions are usually not hurt by charging too often. But I am Old and may forget and leave them connected.

My Solution: So I decided to design a comparator that would shut off voltage to the Arduino when it drops to about 6 Vdc. So I use a comparator to disconnect power going to the Arduino.

 

For the Purists out there: Yes, I realize most Arduinos have 5 Volt regulators, many using the 7805 that suggest the input voltage is a minimum of 7 Vdc. Well, I’m pretty familiar with the Arduinos and most will work down to about 4 Vdc. One concern you may have is if you are measuring analog voltages and using 5 Vdc as the reference, then your measurements will be off. Well, for all of my analog circuits, I’ve been using 3.3Vdc as the Aref. One of the reasons is that when using the USB as a power source, most computer USB ports are not at 5 Vdc but can be around 4.7 Vdc anyway.

Alternative: My circuit can be altered so that it will switch off at 7 Vdc and 'guarantee the 5Vdc.

 

Theory of Operation: Originally, I wanted to design the circuit so that the comparator was also disconnected when the voltage was too low. Well, I couldn’t get that to work. So I left the comparator connected all the time.

See schematic. Z1 is a 5.1 Vdc zener diode. R1 supplies enough current to bias the diode. So pin 2 of the analog comparator, LM393 will have 5.1 Vdc on it. R2 and R3 form a voltage divider. When the battery voltage is above 6 Vdc, then pin 3 will be above 5.1 Vdc and the comparator output will be high. This will turn on the FET, Q1 a BS170 which will supply the ground for the output going to the Arduino. The positive voltage is passed directly from the batteries.

R5 and D1 are active when power is available so the LED will indicate power is going to the Arduino.

By the way, the high and low voltages on pins 6 and 5 are so that these inputs are not floating. I prefer not leaving unused inputs floating. Theoretically, the floating inputs could start an oscillation that would use up a lot of power and drain the batteries faster.

Alternatives: The LED doesn’t need to be in the circuit to reduce battery drain (~20mA)

For a different trip point, R2 and R3 can be changed.

For a different battery source, Z1, R2 and R3 can be changed.

 

For my circuit, I actually made some PCBs using toner transfer but will save details for another Instructable.

 

Protector Parts List

 

Prices:

http://www.taydaelectronics.com/

S&H not included

 

PCB

LM393                     $0.13

8 pin IC socket         $0.02

1N4733                    $0.03

Resistors 1/4W metal film

1.2K

2.7K

1M

2.4K

13K                 about $0.02@

LED 3mm               $0.02

FET BS170             $0.26   

2.1mm power plug  $0.20

 

Total cost is less than $0.70. I realize shipping charges are not included. If ordered all together, it’s probably an additional $3.99. I order a lot of parts from Tayda on ebay, e.g., often like 50 resistors for $0.99 shipping included. For big mixed orders, it’s probably cheaper to buy direct from TaydaElectronics.com.

Step 4: Comparison

So I pretty much explained why I didn’t use a 9V battery source. Here is a comparison of this 18650 system with AA NiMH batteries that I have.

 

18650 Cost

2 18650      $3.62

1 holder      $0.54

1 Protector $1.00

Total           $5.16

 

AA Cost

6 AA NiMH $3.87

1 Adafruit    $5.00

Total           $8.87

 

                     18650             AA       Comments

Batteries          2                    6

Voltage         8.5-6                8.4-6

Capacity        3200mAh       3000mAh  Discharge time is going to vary with load

Cost                $5.16              $8.87

Weight           ~2.5oz            ~6oz  I don’t have a scale but used my postal scale to see which was heavier (See Picture)
https://www.instructables.com/id/A-67-Cent-Postal-Scale/

Size                1.7”x3.5”         2.5”x4.5”

 

18650 wins for cost, weight and size.

 

Advantages and disadvantages: battery technology

AA NiMH: memory issue, higher self discharge rate

18650 Li-Ion: no memory issue, lower self discharge rate, aging issue

 

Complaint: Another of my complaints about AA NiMH batteries is if you don’t use them for a while, they will self discharge. The 18650s are supposed to have 10 times less self discharge rate.

Step 5: Conclusions

I haven’t done very much testing but this seems to work pretty good.

 

Technobabble: One test I did was measured the current with the protection circuit connected but no load. It was only 6.25mA even with the LED on. What this means is that when the protection circuit drops below about 6 Vdc and disconnects power to the Arduino, it will still be drawing current but it would take a long time for it to drop down to 2.7 Vdc, the danger voltage.

 

Concern: For the fellow Geeks, one of the things my circuit does not address is if the batteries discharge at different rates. Ideally, the battery protection circuit should be for each battery instead of for both at the same time. I am fairly certain the batteries will discharge fairly evenly since they are the same capacity and same age. But I will try to monitor this in use.

<p>Hi, newbie here. I do have a simple question, but it may be because I missed something obvious here. <br><br>In the above schematic, Vcc, the supply voltage, isn't specified, and I didn't see any reference to it in the article? Or maybe I just missed it? </p>
<p>Good question. Actually, in this case Vcc doesn't refer to anything and doesn't need to be in the schematic. The batteries are supplying the 'Vcc' to the circuit so it's not really a separate source. </p><p>By the way, I no longer use this circuit and just let my 18650s discharge until they stop working.</p><p>LOG</p>
Please get some better quality lithium batterys that are made by name brands such as samusung. An ultrafire stores much less and they have a major chance of being fakes or reused laptop cells.
<p>You are correct, these are fakes. I proved it to myself.</p><p><a href="https://www.instructables.com/id/18650-Battery-Capacitance-Tester/">https://www.instructables.com/id/18650-Battery-Capa...</a></p><p>However, I've been using them for several years and will probably use them until their capacity is less than 500mAH.</p><p>LOG</p>
Ok. Seems like you know your stuff. But be 2x as carefull with the fakes. They tend to leak and or catch fire.
I was testing one in a flashlight and had it vent.
<p>Very interesting.. I'm looking for a way to shut down power on my solar powered remote weather station to avoid battery damage. This article will definately help me in that pursuit</p>
<p>Hi, I'm looking to do exactly the same for a basic temp/hum sensor. I'm using an ESP8266 instead of an Arduino though.</p><p>I'd be interested to see what you come up with.</p>
<p>I tried a Lipo Battery Low Voltage Alarm purchased off ebay in hopes of replacing the buzzer with a bluetooth module to text me when the voltage became dangerously low but didn't get far. I could not get the alarm to activate when my low setting was reached.</p><p><a href="http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItemVersion&item=291548896287&view=all&tid=1218139044019">http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItemVersion&amp;item=291548896287&amp;view=all&amp;tid=1218139044019</a></p>
<p>I have some remote temp/humidity sensors that I added a voltage divider to send the battery voltage back to my weather station.</p><p><a href="https://www.instructables.com/id/LOG-Wireless-Temperature-Monitoring/">https://www.instructables.com/id/LOG-Wireless-Tempe...</a></p><p>However, in actual use, the remote Arduinos stop working when the 18650 batteries are about 3.8 volts and they don't draw any significant current when not working. So I just change out the batteries. My personal opinion is that about the only circuit that would drain a battery is like a flashlight. BUT that's just my opinion.</p><p>LOG</p>
<p>Hiya LOG,</p><p>Your wireless-temp project is really nicely done. that's the one that made me a follower of your brilliant work! Regarding 18650s - Their protection circuits should kick in and prevent over draining but my solar powered wireless weather data transmission station drained the 18650 powering it waaaayy down, so that is what started me looking into protection circuits (plus I'm as curious as your average monkey) I could build. I bought a Lipo Battery Low Voltage Alarm (http://www.ebay.com/itm/291548896287?_trksid=p2057872.m2749.l2649&amp;ssPageName=STRK%3AMEBIDX%3AIT) off of Ebay (thinking i could take off the buzzers and use the signal to send me a text when the voltage dropped to the set point but that hasn't panned out yet).</p>
<p>I guess my first concern would be why the solar power is not keeping the 18650 charged. One thing I think you have to do is put a diode in series with the solar panel output so that when there's no sun the solar panel doesn't drain the battery. Here's an Instructable explaining why you need it.</p><p><a href="https://www.instructables.com/id/Solar-Battery-Charging/">https://www.instructables.com/id/Solar-Battery-Char...</a></p><p>Then I would suggest you try 18650 protected batteries. I think once they get down to 2.4Vdc they're supposed to shut off. You can also buy 18650 battery protections circuits which do the same thing.</p><p><a href="http://www.ebay.com/itm/6X-3-5A18650-18500-Li-ion-battery-cell-protection-circuit-board-PCB-PCM-assemble-/121401853759?hash=item1c441d473f:g:NhYAAOSw9NxTt2Py">http://www.ebay.com/itm/6X-3-5A18650-18500-Li-ion-...</a></p><p>I would think this should fix your too low voltage. </p><p>But I guess mostly what in the design is draining the 18650. Is it the solar panel?</p><p>LOG</p>
<p>Hi msuzuki77,</p><p>My first attempt at a battery powered weather station used an 18650, an arduino mini 3.3v and an ESP8266. I had it running off a single 18650 battery to begin with and had the electronics to charge it as follows:</p><p>12v Solar Panel (Cheap at the time) &gt; 5v Step down convertor &gt; 18650 charger and protection circuit &gt; 18650 battery</p><p>18650 battery &gt; battery protection circuit &gt; Boast converter 5v &gt; 3.3v regulator &gt; Arduino/ESP8266/DHT22 etc</p><p>It would work but as you can imagine it was a bit of a pain and very inefficient.</p><p>The biggest annoyance was when the battery ran low enough to trigger the protection. It would then recharge from the solar panel or external source but the protection circuit did not re-enable power to the load. I found I have to short the negative contacts between load and battery to re-enable to power.</p><p>Obviously the inefficiency was a higher concern but the fact the protection wasn't re-enabling the power was very annoying!</p><p>What I have now is just the ESP8266 and the DHT running alone and have modified my Arduino code to run on the ESP8266. It works very well and so far has run from a single battery for more than a couple of days, way better than the ~12 hours I got with the Arduino combination.</p><p>My next issue is the protection circuit and charging though. Can I charge the battery and have a load on it through the same protection circuit? How can I get the protection circuit to re-enable to load when the battery reaches a safe charge level?</p>
<p>I am planning on doing something similar. I'm going to use a 6V solar panel connected to a USB-lion charger connected to an 18650 battery powering the circuit. The solar panel and charger will always be connected the the battery and weather station. I'm fairly certain it doesn't hurt the 18650 to be charged and discharged all the time as this is how they're used in laptops. The charger will not overcharge the 18650. And at night when the solar panel drops below 5V, the charger circuitry should block the solar panel from trying to discharge the battery. (Actually, I'll probably have an blocking diode in there anyway. </p><p>So actually, I'm not going to have a protection circuit in there. If the battery won't stay charged, I will probably add a second solar panel.</p><p>So I haven't tested this out yet but it might work for you.</p><p>LOG</p>
<p>I tried a Lipo Battery Low Voltage Alarm purchased off ebay in hopes of replacing the buzzer with a bluetooth module to text me when the voltage became dangerously low but didn't get far. I could not get the alarm to activate when my low setting was reached.</p><p><a href="http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItemVersion&item=291548896287&view=all&tid=1218139044019">http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItemVersion&amp;item=291548896287&amp;view=all&amp;tid=1218139044019</a></p>
<p>Hey,</p><p>I have one request here.</p><p>How can I modify it to use only one 18650 battery ?</p>
<p>Since I wrote this article, I have decided not to use protection circuits. All of the 18650 chargers I have seen will not let you overcharge your battery and I haven't seen any circuit that will drain the battery too much.</p><p>However, if you do want a protect circuit, My design cannot be easily modified for one 18650. What I would suggest it that you either buy protected 18650s or by a protect circuit such as: </p><p><a href="http://www.dx.com/p/charge-discharge-protective-circuit-board-for-rechargeable-li-ion-batteries-17-4mm-1-9mm-26112#.VeistflVhBc" rel="nofollow">http://www.dx.com/p/charge-discharge-protective-ci...</a></p><p>LOG</p>
<p>Thanks...</p>
<p>excelent!! do you have a full circuit to make a power bank??? because i have some 18650 batteries recoverend from an old laptop battery.</p>
Do you think that dual battery holder + circuitry will fit in an Altoids tin?
<p>I don't have an Altoid tin so can't tell you exactly. And I can't find this adapter. I took some measurements and it should be about 1.63&quot; x 3.5&quot; x 0.83&quot;.</p><p>LOG</p>
Thank you. looks like the .83&quot; could be a problem. The tin is only .75&quot; high.
<p>Too bad. Actually, I no longer use a protection circuit for any of my 18650 projects but that won'l help you. There are probably some Li Ion smartphone batteries that might fit in an Altoid tin.</p><p>LOG</p>
<p>Im trying to find a company that makes a 9v battery charging protective circuit do you have any tips? My company Is creating a new product that needs this device. </p>
<p>I don't know of anybody making 9V battery charging protective circuits and I haven't heard of any 9V rechargeable batteries that really work. The type of battery chemistry of a rechargeable battery limits the voltage and I believe 9V requires multiple cells in series. </p><p>I think Texas Instruments has a lot of ICs specifically designed for battery charging and protection but don't know of anything for 9V batteries.</p><p>LOG</p>
What do you need to change in the circuit for a single 18650 or a two 18650 in parallel?

About This Instructable

55,863views

55favorites

License:

Bio: Lazy Old Geek
More by msuzuki777:Senior Moments Weather Station 5 IP Time Clock Part 2 
Add instructable to: