BATTERIES ARE OVERHEATING.... Please Help!

Hello Everyone.

I am implementing a basic battery monitoring system. I have 4 individual AA batteries that I am planning on monitoring INDIVIDUALLY (not the combined voltage of all of them). I have the positive side of one battery going into Analog0, and the negative side going to ground. The code works fine, reading the value of Analog0 every second. The voltage reading is accurate, and consistent to that of a standalone voltmeter.

THE PROBLEM IS, after about 10 minutes I started smelling something burning. I sniffed around and it was the AA battery. It was so hot I could hardly handle it to pull it out of its holder. Can anyone tell me why this battery is overheating and what I need to do (in terms of electronics) to eliminate this problem?? I have never really experimented with monitoring voltage, etc., so this is all new for me. Do I need an inline diode or something between the battery and the analog input?? Any insight, specs, etc., would be greatly appreciated!!

THANKS!

-Dave

A hot battery is the result of high current flow, either discharging or charging. There is no current flow to speak of through a Arduino analog input pin. Therefore you must have some kind of wiring error in you set-up. Only a schematic drawing or a clear picture would help us help you in this matter.

Lefty

That's just it.... I have no schematic or wiring or anything.... it is a very simple 2-wire connection from the battery holder to the Arduino. Just one wire from a AA battery (-) to gnd, and one wire from AA battery (+) to Analog0.

prosper50: That's just it.... I have no schematic or wiring or anything.... it is a very simple 2-wire connection from the battery holder to the Arduino. Just one wire from a AA battery (-) to gnd, and one wire from AA battery (+) to Analog0.

Such a wiring plan as that would not result in high current flow or a hot battery. Therefore there is something else going on ( bad battery socket?) which we cannot see. Sorry that's just the facts of life. ;)

Lefty

The battery+ must go to something else - if not, what is the purpose? Just to see how long the 4 batteries will hold a charge?

In essence, yes… just to see how long a battery holds a charge (in different environments, climates, weather conditions, etc.). It gives us a real-time monitor of how rapidly the batteries start to drain.

And the battery holder I’m using is similar to the following link.
http://www.solarbotics.com/assets/images/bholdaax4/bholdaa_4cell_pl.jpg

The exception is that mine has four solder tabs on each side (for the + and - of each battery).

Really, there is nothing to this at the current time. Just a battery holder and two wires.
I just can’t justify why this battery nearly melted on me.

Really, there is nothing to this at the current time. Just a battery holder and two wires. I just can't justify why this battery nearly melted on me.

It should be a straight forward electronics troubleshooting effort to figure it out. What tests have you tried to use so far? You don't need to 'justify' the reason for the high heat, just normal electronics troubleshoot will make the final answer very clear of the what and the why for the symptom you have.

Lefty

Unfortunately, Lefty, I'm not very experienced with electronics... I just kinda muddle through learning as I go. Likewise, I do not know the in-depth operation of the Arduino and what might possibly be feeding back to the battery causing it to overheat. In terms of troubleshooting, since it is only TWO wires, I am pretty much limited to removing one and reconnecting it, and then doing the same with the other. There are no electronics in play here, except for those of the Arduino. I'm not really sure what else I can do, which is why I'm reaching out to others more skilled than myself. The only thing I can think of is that I need some kind of current-limiting resistor between the (+) of the battery and the Analog input since current causes it to overheat?? I would have no idea of specs or anything. Likewise, I also considered the possibility of a diode inline so that the current can not feed back into the battery???? Am I warm??? I really have no idea.

Are these cells (or the entire battery) powering the Arduino in any way (that is, are you trying to monitor the battery which powers your Arduino)?

Am I warm??? I really have no idea.

No your not warm, only the battery is warm ;)

Next step would be to take your digital multimeter and take some measurements. First I would have you measure the voltage and polarity of what is being seen at the analog input pin relative to the arduino ground pin. If the polarity is backwards you would be turning on the internal pin's negative clamping diode and conducting high current.

If you don't own a digital multimeter it is not worth much time trying to think of the tests and measurement you need to conduct to troubleshoot your problem.

Lefty

And the battery holder I'm using is similar to the following link. http://www.solarbotics.com/assets/images/bholdaax4/bholdaa_4cell_pl.jpg

The exception is that mine has four solder tabs on each side (for the + and - of each battery).

Are you sure the cells are not internally connected within the holder? An actual picture would help us here.

For a burning smell there's got to be a short somewhere. What kind of battery? Be aware of the danger of hot lithium ion batteries (place them on a ceramic or metal surface outside just in case..) Other batteries (NiMH / alkaline) aren't a fire hazard.

@prosper50 There is no way what you describe can be happening it it is wired up like you describe. Therefore you are mistaken in how it is actually wired up.

I do not know the in-depth operation of the Arduino and what might possibly be feeding back to the battery causing it to overheat.

Quite simply there is not anything that feeds back something to the battery. Overheating is simply a symptom of drawing too much current.

The only thing I can think of is that I need some kind of current-limiting resistor between the (+) of the battery and the Analog input since current causes it to overheat??

No you don't. If you have it wired like you say then it would work. You have not got it wired like you think it is.

I'm not very experienced with electronics.

That is why you can't see the error you have made. Therefore it is vital that you post a clear photo of your circuit.

And the battery holder I'm using is similar to the following link.

Totally irrelevant, we need to know exactly what you are using not something similar. If you are as inexperienced as you say how do you know it is similar? It could electrically be very different.

By reading this tread… I am having a hard time to figure out what is wrong ? :~ No picture.

Let see… Warm / Hot battery… high current or a “short” somewhere…

You measure using an analog pin… no code.

The holder is a 4 X 1 1/2 AA. = 6 V. Did you by any chance put the red wire ← analog pin and the black wire ← gnd with 4 AA battery ?

If yes… 6 V into a analog pin is : BAD. May damage the chip and maybe cause a short inside the chip.

Anyway, I am just guessing here… no pics, no code… just guessing…

Note that you cannot generally monitor multiple series batteries as multiple taps each connected to ground and an analog pin, because this will short out the battery. Instead, you have to couple them in a cascade. The problem with that is that four batteries will give you 6V total output (even more when totally fresh), which is higher than the 5V you can measure with the analog in. So you have to use sense resistors for each battery.

Here's a possible circuit. The problem with THAT is that the circuit will actually draw some current -- about 0.5 milliamps -- from the batteries, so over a few days, they will get depleted.

If what you really want to do is to monitor batteries, perhaps a better approach is to get some circuit that's actually intended for that use...

As for why the first battery would get hot, I have no idea. Assuming you tied "-" to the "GND" and "+" to A0, and A0 is configured as an input, and there is no other short circuit, that probably shouldn't happen. You can try adding a 1 kOhm resistor between the battery and the A0 input to see if that helps -- if it does, something's going on with the A0. Else it's something outside the Arduino.

Hello All,

Thank you to everyone for your input and suggestions, and sorry for my delay in responding. By reading the tone of some of the responses that I received, it seems that there may be some stress trying to help answer trivial questions from people who are relatively new to the platform, so please understand that I thank you all for your time and your attempts to provide suggestions.

I will try to post a pic later on today, but the battery holder has NO INTERNAL CONNECTIONS between batteries. There are four solder tabs on each side of the holder and each battery is independent of one another. I ordered that specific holder because I had a good idea of what I wanted to accomplish (measuring voltage of each battery independently). And since I only inserted ONE AA battery to test whether this would even work in the first place, the voltage is limited to the 1.3ish volts of the single battery. The battery is not connected in any way to the Arduino (i.e. - to help power the Arduino)… it is totally isolated. Further, this was a rechargeable battery that I happened to have in my desk drawer. Would that make a difference??

Despite the fact of this being impossible, or improbable, etc., I truly have an Arduino Due with TWO wires entering it - one to Analog0 and one to gnd.

As far as the code, I kept it simple… There are some variable declarations above Main, and then literally three lines of code in the loop section to the effect of:

BatLevel1 = analogRead(bat1Pin);
Voltage1=BatLevel1*4.9/1000.0;
…and a line printing voltage1 to the LCD

Please don’t critique the code - it was just to test. I don’t have it sitting in front of me and I don’t recall exactly what was multiplied or divided, but it was close to that… and the result on the LCD matched the voltmeter reading of the battery +/- .01v or so.

Aside from the unlikeliness of this effect happening, and the ambiguity of my posts without having taken a photo or a code grab before I left the office, my MAIN concern was whether or not something had to be inline between the battery and the Analog0 pin, thinking that the battery might be overheating due to my omission of some important electronic component.

Thanks again!

-Dave

I truly have an Arduino Due

You probably meant to say you have an Arduino Uno. The Due is not available to the public yet.

Is the table you are working on metal or conductive? Could you have set the battery holder on anything that might have shorted it out while you were working with it?

Did this battery come fresh from the charger? Some chargers heat the batteries up, but the batteries are not supposed to be blistering hot.

With your readings being correct while having the battery connected to the Arduino, I have to believe that your connections are correct between battery and Arduino.

My apologies, I was simply abbreviating duemilanove.

No, it is a plastic work surface, and the battery has been sitting in my desk drawer for at least a week (so not fresh off the charger).

prosper50: My apologies, I was simply abbreviating duemilanove.

No, it is a plastic work surface, and the battery has been sitting in my desk drawer for at least a week (so not fresh off the charger).

So what measurements have you taken with a digital multimeter? If you truly want to solve this 'mystery' then you need to make a series of voltage and current reading while that battery is wired to the arduino.

Lefty

Lefty, the extent of my voltage readings related to the accuracy of the voltage on the LCD versus the actual voltage of the battery. They were very similar. I did not measure current, as it was not even a consideration in my mind (again, my lack of knowledge). I wouldn’t know what is suspect or what is the norm… nor would I really randomly think of where I should be metering with regard to current. Do you have any suggestions?? My background is in user interface design (high level), so aside from the half-dozen explorations I’ve done with the Arduino platform, I really haven’t gone too far, and I certainly don’t have an electronics background. I’m trying to learn though, project by project. I find it fascinating and I am enjoying the process, but trying to piece together decades old C programming knowledge, and basic electronics is tough… the whole old-dog-new-trick thing. :slight_smile: