At 10:34 PM -0700 1999/05/10, Mike Bitz wrote:
>Palm OS 3.x's SysBatteryInfo function seems to report an accurate 
>"percent remaining" value on Palm III and IIIx units.  However, I am 
>experiencing some strangeness on a Palm V.  When the unit is fully 
>charged in the cradle, the percentage is reported as 100%.  As soon as 
>the unit is removed from the charger the percentage is reported as 88%.
>...
>Is there something special I need to code when dealing with a Palm V?

Nope.


>Shouldn't the OS handle any differences?

Yes, and it does (to the best of its ability...)


The Palm V uses LiIon battery technology. The discharge curve for this type of cell 
under a Palm V load is extremely flat right up until the battery is empty, at which 
point the voltage dropoff is dramatic. It looks something like this (pardon the ASCII 
graphics):

  v 5  -------------------------_
  o 4                            |
  l 3                            |
  t 2                            |
  s 1                            |
    0  time while under load --> |

As a result, using the voltage to measure the battery capacity is unrealistic. The 
difference between 'fully charged' and 'heading south' is a few millivolts; nearly 
within the normal error of the analog to digital converter.

To solve this problem and still provide the user with a usable low-battery warning, 
the Palm V OS estimates the amount of energy remaining in the cell using a 
load-over-time function. It calculates this estimate by tracking how long the 
backlight is on, how long the OS is awake and processing, et cetera.

I would guess that you're probably just seeing the normal result of the averaging 
function doing its thing (albeit rather slowly). On the other hand, it's possible 
(though unlikely) that your factory-set calibration data is inaccurate or has somehow 
become corrupted, thus the internal (raw A->D) voltage reading is so far off it's 
having a majority impact on the averaging function.

Has the unit had this 100% -> 88% behavior since day one? Or does it seem like a 
degenerative behavior similar to the 'memory effect' of NiCd batteries where frequent 
recharge cycles without full discharge cycles reduces the battery's maximum capacity? 
Does the battery seem to discharge 'faster' than 'normal' or does the 88% calculation 
stay pretty much constant for a very long time during use? How long were you charging 
the unit in the cradle before you removed it and noticed the 88% level?

Regards,

Jim Schram
3Com/Palm Computing
Partner Engineering

Reply via email to