PDA

View Full Version : Battery problem or Reporting problem?


kaz911
2010-01-20, 05:19
I have now monitored the battery settings on the N900 over the last 2-3 weeks using lshal | grep bat. (Behaviour has not changed with PR1.1)

But seems like the battery reporting is all over the place

1. battery.reporting.design (which I assume i what N900 sees as design capacity of the battery) fluctuates on my device from 1258 to 1253 to 1247 - up and down all the time. Seems like no logic behind it.

2. I charge phone overnight - checks battery.reporting.current - says 1224. I take the phone out of the charger, reboots immediately and plug back into the charger. Battery.reporting.current shows 1118 (so more than 100 ma drop from a reboot - and device has been off charger for less than 60 seconds) - and N900 starts charging again.

So point 1 I do not understand. Looks like a "bug" - do you agree?

Point 2 - if phone is plugged in - and reaches maximum charge - does it start to drain battery until battery level reaches a level low enough for charge to start again? Or is the Battery.reporting/charging system a bit out of sync?

I hope if we can nail this and make it "better"/"more stable" we can get a better battery performance from the N900.

I'm now up to 12-14 hours of battery using SIP profile - but absolutely NO widgets. I run a pretty clean phone (extra installed apps are only Conky, cpumem-applet and Simple FMTX, eCoach, Backgammon)

shadowjk
2010-01-20, 05:47
Point 1:
The battery has a resistor in it, the device measures the resistance and converts that into a design capacity. An analog measurement, it's not very accurate, and varies probably due to electric noise and temperature..

Point 2: both
The N900 always runs from battery, it can't run on power from the charger. When the battery is full, the charger is disconnected until the battery has been drained a bit, at which point a topping-up charge is done. (But it doesn't confuse the user with details like this and just says Battery Full) One could keep the charger charging all the time, but it's a very bad thing to do to a Li-Ion battery.

Rebooting has the side effect of resetting the fuel gauge, so it just makes a guess based on voltage on startup. While you usually can make a 10-20% accurage guess based on the unloaded open circuit voltage of a Li-Ion battery, the N900 battery is obviously not unloaded, it's running the device. Some fuel gauge chips can take load into account, and can estimate the battery's internal resistance to improve the result, but it's pretty close to voodoo magic really ;-)

My SIP provider seems to have a 10s keep-alive. I haven't tested it with N900, but I'd estimate that would give me 10 hour battery life on 3g...

kaz911
2010-01-20, 05:56
Point 1: thanks - I mistakenly thought that was communicated through some sort of intelligence like on many notebooks.

Point 2: That seems to be the wrong way to keep Li-Ion at peak performance. If that behaviour is correct - it is actually decremental for battery life.

Normal Li-Ion chemistry dictates you should not full charge the battery on every charge since you will be destroying cells. You should not start charging unless battery is LESS than fx. 92-93% - but N900 starts charging at about 1208ma - less than 2.5% less than design capacity and less than 1.1% from peak charge level.

But why the N900 cant run on charger power I do not understand. Charge the battery - then run on USB the charger power until disconnected?

ndi
2010-01-20, 14:00
a) It is intelligent.

b) There is not a straight line between voltage and capacity. First of all, a battery rated 1200 doesn't mean that's its 100%, that means that 80% of users get a lower capacity. So, 100% charge not the same as fully load battery

Also, a fully loaded battery is over the voltage presented here,

Also, It's never fully charged. Depending on load, voltage droops and there is an error in measurement. Same with heat.

Cast your eyes on this (https://bugs.maemo.org/show_bug.cgi?id=7636).

There are tons of info on the subject, both here and on bugzilla. Searching would yield loads of stuff.

shadowjk
2010-01-21, 06:11
Atleast on the previous N8x0, the charge goes up to 100% (4200mV and <=100mA current), then it sits a long time, the voltage will be below 4100mV when it initiates charging again, bringing it up to no more than 4100mV, and disconnects again until voltage has dropped. After the first peak of 4200mV, it never goes back there unless you disconnect it from the charger and use it (and just cycling the charger cable doesn't seem to make it charge to full 4.2V either).

Also, on the N8x0, the charger was software controlled and used a slow PWM to regulate the charging. That is, pulsed charging. Without the battery installed to soak up the excess voltage coming from the charger, the device crashes/shuts down almost instantly.. I suspect they haven't changed their setup much, if at all for N900.
A not so fun side effect I noticed is that when the battery has aged alot, and the internal resistance has increased dramatically, the voltage over the battery will rise much higher than you'd feel comfortable with during the "on" cycle of the PWM. I discovered there's a safeguard in it though, if the voltage goes over 4.5-something, the battery management software panics and aborts, dsme notices the battery management entity is no longer running, and reboots the device. Reboot loop ensues until user either replaces the battery with a newer one, or uses a lower rated charger :)

As far as I can tell, the 2mm charging system made it possible to accept a wide range of voltages and types of chargers with the bare minimum of components and heat generation, while sacrificing battery hotswap capability. The 2mm charging spec has a voltage and current windows extending from 4.2V to about 10V, with 5V+-0.2V marked as not allowed. This is from memory, so the exact figures might be different :) What the advantage with N900 that only does USB voltages is I'm not sure..