Battery died while plugged in to high-power usb port.

Erik esw at alum.mit.edu
Mon Aug 6 06:15:12 CEST 2007


Thanks for all your responses; it's comforting to hear I'm not alone!
I'm responding to my own post with a summary of what I've found:

> 1. Has this happend to anyone else?

... Several yes's...  And just like theirs my phone did come back to
life.  Yay!  Maybe it's becoming limited to 100ma once the CPU is
asleep for some reason... and if other stuff, like BT and GSM aren't
shut down, then the battery drains.  I'm leaving mine plugged in and
on tonight!  Next time I turn it "off" i'm going to explicitly turn
bluetooth and gsm off first too.  I bet that'll help.

I'm also going to start continuously/automatically logging battery
voltage / charge statistics for forensics.  It'll be interesting to
make a voltage-vs- state-of-charge map, and then see what drop in
voltage results from being shut "off" for X hours, and figure out the
"off" draw that way.  I was planning on hooking my neo up to a nice
3.7v power supply with digital current draw readout ... but after the
not-turning-on-this-morning scare I'm feeling a little chicken!

> 2. Is there a way to double check the charging rate from software?

Yes.
cat /sys/devices/platform/s3c2410-i2c/i2c-0/0-0008/chgmode

also
cat /sys/devices/platform/s3c2410-i2c/i2c-0/0-0008/chgstate

and
cat /sys/devices/platform/s3c2410-i2c/i2c-0/0-0008/chgcur 

I'm especially intrigued by that last one.  When it was charging it
was between 2000 and 1500.  So I'm guessing it's the power draw in
10's of milliamps?  But now that it's fully charged its still saying
something on the order of 1000 [btwn 1200 and 900] so it seems like
this is really 'total power draw' rather than charging current.

> 3. Should a voltage always appear on the +/- terminals of the battery,
>    or does that third pin need tickled in some way to get a voltage
>    out?

After a couple hours of 'emergency recharge' I popped the battery out
and found that it had 3.6V on those terminals.

> 4. My battery reads 0 volts between +/-; is that battery toast?  I
>    know Lion's can be ruined if they're discharged below a certain
>    voltage per cell... because they may grow internal shorts and then
>    overheat/explode on recharge.  Unless they have a built-in
>    resettable low voltage disconnect [LVD].

Since I doubt my cell would have really come back from a zero volt
deep discharge, I'm guessing that it does have a builtin LVD.  It'd be
good if we had a hardware LVD at a higher voltage to be nicer to the
cell.


Once it had enough juice to turn on, I watched my battery charge with
the simple script:

while true; 
do 
   echo `date +%s` `cat \
         /sys/devices/platform/s3c2410-i2c/i2c-0/0-0008/battvolt`;
   sleep 60;
done |tee /media/card/powerlog

[actually, I had it all on one line, with no \, but i split it up over
multiple lines in hopes they don't get wrapped over email.]


It let me see a nice ramp up from 3.85 volts when I started it to 4.20
volts where it seems to have levelled off.  That voltage number
has a fair amount of noise on it... I presume from variable CPU and
GSM activity... but the average over a few minutes shows the relevant
trends.

Hmmm, how strange.  I just added the charge current to the little
script above, and then I unplugged the usb cord, but strangely the
'charge current' value did not become negative.  It's still positive
and between 300 and 600.  The battery is definitely not charging now.

Woah.  The charge current went down to 133 and then up to 17740 and
17660.  Hmm, I'm guessing that either I was pounding on the i2c read
too fast or that value has a bit-field packed into it.

The noise on the voltage reading seems to be largely related to the
charging stuff... the voltage value looks much much less noisy now
that it's discharging off battery.

So much to figure out, so little time left for sleep!

-erik



More information about the device-owners mailing list