Reply
Thread Tools
NotTheMessiah's Avatar
Posts: 373 | Thanked: 40 times | Joined on Nov 2009 @ Norwich
#1
Ok, so this is really quite puzzling. A little while back my N900 (Now two years old) started discharging the battery in a matter of around 5 to 6 hours just in standby! Thinking this was the battery i bought a replacement but this has not helped even though it has now been cycled several times (tho as far as i understood Li-Ions don't really benefit from cycling)

I tried reflashing but the problem still exists!

BatteryGraph reports that the battery is reaching full capacity when charged but as soon as the charger is removed the amount of charge starts to decline rapidly. Today i removed the phone from charge 2 hours ago fully chraged (BatteryGraph reported 1221mAh) and have only used the phone to send a few texts, it has received only a few texts also, so not exactly anything heavy! Yet already now after only 2 hours of being removed from charge at full capacity the battery is down to 67% and is holding 861mAh. It's never done this before a couple of weeks ago but now it does it constantly.

Further to this looking at the cpu usage history there is nothing eating an abnormal amount of cpu cycles either so now i'm stumped as to what could be the problem other than perhaps some hardware failure.

The thing seems to be dying!
__________________
i finally have the device and its even better than i could have ever possibley imagined! well done nokia, very well done indeed!
 
ammyt's Avatar
Posts: 1,918 | Thanked: 3,118 times | Joined on Oct 2010 @ My pants
#2
What is the frequency you've set the CPU to?
 
NotTheMessiah's Avatar
Posts: 373 | Thanked: 40 times | Joined on Nov 2009 @ Norwich
#3
The cpu is running at stock at the moment, ie 250 - 600MHz.
It has been OC'd in the past but never for more than 20 minutes or so and never particularly often. It's probably only been overclocked about 10 times or so in the entire two years i've had it.

Oh and when on the rare occasion it has been over clocked, it was only taken up to 950MHz max.
__________________
i finally have the device and its even better than i could have ever possibley imagined! well done nokia, very well done indeed!

Last edited by NotTheMessiah; 2012-01-06 at 12:17.
 
ammyt's Avatar
Posts: 1,918 | Thanked: 3,118 times | Joined on Oct 2010 @ My pants
#4
Originally Posted by NotTheMessiah View Post
The cpu is running at stock at the moment, ie 250 - 600MHz.
It has been OC'd in the past but never for more than 20 minutes or so and never particularly often. It's probably only been overclocked about 10 times or so in the entire two years i've had it.

Oh and when on the rare occasion it has been over clocked, it was only taken up to 950MHz max.
Well you may not believe it, but I am getting better battery life after installing KP49, using a custom profile I built (lowest voltages possible) and enabling Smart Reflex.The frequencies of my profile is 250 900.
So, I advice you to install KP.
 
NotTheMessiah's Avatar
Posts: 373 | Thanked: 40 times | Joined on Nov 2009 @ Norwich
#5
I have installed KP-49, and have been running with the low voltage profile but this didn't seem to help. I had also tried this with KP-46 which i was running before the reflash. Wifi is disabled via wifi switcher as well. The device when just sitting at the desktop is running with the usual 0 - 2% cpu load.
__________________
i finally have the device and its even better than i could have ever possibley imagined! well done nokia, very well done indeed!
 
Posts: 1,680 | Thanked: 3,685 times | Joined on Jan 2011
#6
Originally Posted by NotTheMessiah View Post
I have installed KP-49, and have been running with the low voltage profile but this didn't seem to help. I had also tried this with KP-46 which i was running before the reflash. Wifi is disabled via wifi switcher as well. The device when just sitting at the desktop is running with the usual 0 - 2% cpu load.
Well clearly something is amiss. Install 'powertop'. Put the phone in offline mode, run powertop then paste the output here.
__________________
N900: One of God's own prototypes. A high-powered mutant of some kind never even considered for mass production. Too weird to live, and too rare to die.
 
panjgoori's Avatar
Posts: 1,236 | Thanked: 1,278 times | Joined on Aug 2011 @ Balochistan
#7
Originally Posted by ammyt View Post
Well you may not believe it, but I am getting better battery life after installing KP49, using a custom profile I built (lowest voltages possible) and enabling Smart Reflex.The frequencies of my profile is 250 900.
So, I advice you to install KP.
can you post ur custom profile here. with voltages and frequency details.
 
NotTheMessiah's Avatar
Posts: 373 | Thanked: 40 times | Joined on Nov 2009 @ Norwich
#8
Originally Posted by vi_ View Post
Well clearly something is amiss. Install 'powertop'. Put the phone in offline mode, run powertop then paste the output here.
I shall do that in a little while. I'm currently leaving the phone idle with the sim removed to completely illiminate any issues regarding network communication. The reason i removed the sim rather than just enter offline mode was because i read of another case where the sim was in fact causing battery drain, as crazy as that sounds!
__________________
i finally have the device and its even better than i could have ever possibley imagined! well done nokia, very well done indeed!
 
NotTheMessiah's Avatar
Posts: 373 | Thanked: 40 times | Joined on Nov 2009 @ Norwich
#9
Ok, so after playing around some more i'm still having the same problem. It still happens when in offline mode, and it still happens with the sim removed. The device has now since been reflashed a further two times and is currently running PR1.2 as i had read about severe battery drain in PR1.3 but this has not helped.


Here is powertop's output when the phone is both offline and idle...
Code:
Powertop 1.13.3 
status: Unknown job: pmtrackerdaemon 
Sleeping for 11 seconds before sampling 
Collecting data for 30 seconds 
Sample interval was 00m 30s 16693us 

C# | Ratio | Avg/dura | Frequency | Ratio 
--------+--------+----------+-----------+--------+ 
C0 | 1.9% | | 600 MHz | 1.8% | 
C1 | 1.0% | 4.8ms | 550 MHz | 0.0% | 
C2 | 13.2% | 22.3ms | 500 MHz | 1.3% | 
C3 | 4.8% | 89.2ms | 250 MHz | 96.8% | 
C4 | 79.1% | 1825.3ms | 

IRQ# | Activity | Type | Name 
--------+------------+----------------+--------------------------- 
61 | 204 | INTC | i2c_omap 
37 | 197 | INTC | gp 
56 | 174 | INTC | i2c_omap 
11 | 123 | INTC | prcm 
57 | 104 | INTC | i2c_omap 
86 | 35 | INTC | mmc1 
273 | 23 | GPIO | kb_lock 
21 | 18 | INTC | SGX 
12 | 4 | INTC | DMA 

PID# | Activity | Name | Function Entry (Expire) 
--------+------------+----------------+--------------------------- 
0 | 130 | <kernel core> | tick_nohz_restart_sched_tick (tick_sched_timer) 
37 | 29D| awk | cpufreq_governor_dbs (delayed_work_timer_fn) 
1691 | 19 | osso-xterm | schedule_hrtimeout_range (hrtimer_wakeup) 
731 | 16 | mce | schedule_hrtimeout_range (hrtimer_wakeup) 
0 | 14 | <kernel core> | hrtimer_start (tick_sched_timer) 
696 | 10 | bme_RX-51 | sys_timer_settime (posix_timer_fn) 
509 | 7 | mmcqd | schedule_timeout (process_timeout) 
696 | 6 | bme_RX-51 | schedule_timeout (process_timeout) 
509 | 4 | mmcqd | queue_delayed_work (delayed_work_timer_fn) 
685 | 4 | dsme | __enqueue_rt_entity (sched_rt_period_timer) 
814 | 3 | Xorg | hrtimer_start (it_real_fn) 
1 | 3D| <kernel core> | queue_delayed_work (delayed_work_timer_fn) 
787 | 2 | sgx_perf | queue_delayed_work (delayed_work_timer_fn) 
696 | 2 | bme_RX-51 | sys_timer_settime (posix_timer_fn) 
696 | 2 | bme_RX-51 | do_nanosleep (hrtimer_wakeup) 
685 | 2 | dsme | do_nanosleep (hrtimer_wakeup) 
1441 | 2 | browserd | futex_wait (hrtimer_wakeup) 
0 | 2 | <kernel core> | gpio_sw_irq_handler (gpio_sw_timer) 
731 | 2 | mce | schedule_timeout (process_timeout) 
731 | 2 | mce | schedule_timeout (process_timeout) 
29 | 1 | mount | setup_wb_timer (wb_timer_fn) 
13 | 1 | pdflush | blk_plug_device (blk_unplug_timeout) 
509 | 1 | mmcqd | schedule_timeout (process_timeout) 
814 | 1 | Xorg | queue_delayed_work (delayed_work_timer_fn) 
1700 | 1 | powertop | do_nanosleep (hrtimer_wakeup) 

Power domain activity breakdown 
Domain | % of time spent in states 
--------+---------+---------+---------+---------+---------- 
usbhost |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 
sgx |OFF: 96%|RET: 0%|INA: 0%| ON: 3%| now:(OFF) 
per |OFF: 83%|RET: 13%|INA: 0%| ON: 3%| now:(ON) 
dss |OFF: 85%|RET: 0%|INA: 0%| ON: 14%| now:(ON) 
cam |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 
core |OFF: 79%|RET: 1%|INA: 12%| ON: 7%| now:(ON) 
neon |OFF: 79%|RET: 4%|INA: 13%| ON: 3%| now:(ON) 
mpu |OFF: 79%|RET: 4%|INA: 13%| ON: 3%| now:(ON) 
iva2 |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 

Clock activity breakdown at end of period 
Domain | Active clocks 
--------+---------------+---------------+------------------ 
core | SDRC | HSOTGUSB_IDLE | OMAPCTRL 
| MAILBOXES | 
wkup | GPT1 | 32KSYNC | GPIO1 
| WDT1 | 
ckgen | CORE | PERI | 96M 
| 48M | 12M | 54M 
| EMU_CORE | 
dss | DSS_IDLE 
per | GPIO2 | GPIO3 | GPIO4 
| GPIO5 | GPIO6 | 

Total wakeups 1148, 38.3/s | IRQ 882, 29.4/s | Timers 266, 8.9/s 
HW wakeups 123, 4.1/s | Real gp_timers expired 197, 6.6/s

Here is powertop's output when the phone is online and idle...
Code:
Powertop 1.13.3 
status: Unknown job: pmtrackerdaemon 
Sleeping for 11 seconds before sampling 
Collecting data for 30 seconds 
Sample interval was 00m 30s 32440us 

C# | Ratio | Avg/dura | Frequency | Ratio 
--------+--------+----------+-----------+--------+ 
C0 | 0.9% | | 600 MHz | 0.0% | 
C1 | 0.0% | 0.3ms | 550 MHz | 0.0% | 
C2 | 0.9% | 4.9ms | 500 MHz | 1.3% | 
C3 | 5.0% | 88.3ms | 250 MHz | 98.7% | 
C4 | 93.2% | 1748.8ms | 

IRQ# | Activity | Type | Name 
--------+------------+----------------+--------------------------- 
56 | 269 | INTC | i2c_omap 
37 | 75 | INTC | gp 
57 | 58 | INTC | i2c_omap 
11 | 49 | INTC | prcm 
86 | 31 | INTC | mmc1 
21 | 9 | INTC | SGX 
12 | 4 | INTC | DMA 

PID# | Activity | Name | Function Entry (Expire) 
--------+------------+----------------+--------------------------- 
0 | 33 | <kernel core> | tick_nohz_restart_sched_tick (tick_sched_timer) 
1691 | 18 | osso-xterm | schedule_hrtimeout_range (hrtimer_wakeup) 
37 | 13D| awk | cpufreq_governor_dbs (delayed_work_timer_fn) 
696 | 13 | bme_RX-51 | sys_timer_settime (posix_timer_fn) 
696 | 6 | bme_RX-51 | sys_timer_settime (posix_timer_fn) 
696 | 6 | bme_RX-51 | schedule_timeout (process_timeout) 
509 | 5 | mmcqd | schedule_timeout (process_timeout) 
509 | 3 | mmcqd | queue_delayed_work (delayed_work_timer_fn) 
0 | 3 | <kernel core> | hrtimer_start (tick_sched_timer) 
685 | 3 | dsme | do_nanosleep (hrtimer_wakeup) 
685 | 3 | dsme | __enqueue_rt_entity (sched_rt_period_timer) 
814 | 2 | Xorg | hrtimer_start (it_real_fn) 
787 | 2 | sgx_perf | queue_delayed_work (delayed_work_timer_fn) 
1 | 2D| <kernel core> | queue_delayed_work (delayed_work_timer_fn) 
696 | 2 | bme_RX-51 | do_nanosleep (hrtimer_wakeup) 
814 | 1 | Xorg | queue_delayed_work (delayed_work_timer_fn) 
1389 | 1 | Calendar | schedule_hrtimeout_range (hrtimer_wakeup) 
731 | 1 | mce | schedule_hrtimeout_range (hrtimer_wakeup) 
1441 | 1 | browserd | futex_wait (hrtimer_wakeup) 
1010 | 1 | iphbd | schedule_hrtimeout_range (hrtimer_wakeup) 
1719 | 1 | powertop | do_nanosleep (hrtimer_wakeup) 

Power domain activity breakdown 
Domain | % of time spent in states 
--------+---------+---------+---------+---------+---------- 
usbhost |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 
sgx |OFF: 97%|RET: 0%|INA: 0%| ON: 2%| now:(OFF) 
per |OFF: 97%|RET: 1%|INA: 0%| ON: 0%| now:(ON) 
dss |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 
cam |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 
core |OFF: 93%|RET: 2%|INA: 0%| ON: 3%| now:(ON) 
neon |OFF: 93%|RET: 4%|INA: 0%| ON: 0%| now:(ON) 
mpu |OFF: 93%|RET: 4%|INA: 0%| ON: 0%| now:(ON) 
iva2 |OFF: 100%|RET: 0%|INA: 0%| ON: 0%| now:(OFF) 

Clock activity breakdown at end of period 
Domain | Active clocks 
--------+---------------+---------------+------------------ 
core | SDRC | HSOTGUSB_IDLE | OMAPCTRL 
| MAILBOXES | 
wkup | GPT1 | 32KSYNC | GPIO1 
| WDT1 | 
ckgen | CORE | PERI | 96M 
| 48M | 12M | 54M 
| EMU_CORE | 
per | GPIO2 | GPIO3 | GPIO4 
| GPIO5 | GPIO6 | 

Total wakeups 615, 20.5/s | IRQ 495, 16.5/s | Timers 120, 4.0/s 
HW wakeups 49, 1.6/s | Real gp_timers expired 75, 2.5/s 
~ $
Looking at those it seems that the phone isn't doing much with the processor, at least not that it would seem to me on first inspection.

So i ran powerscript and found that even despite this low cpu usage there is very high current draw for idle mode!

Below is the current draw for offline mode with the sim in place still...
Note that the phone is idle when the number of events is shown as approx 60 to 70
Code:
Using I2C to read charge meter directly 
Sat Jan 7 16:46:58 GMT 2012 333mA 182 total events, 36.103 events/sec 
Sat Jan 7 16:47:03 GMT 2012 317mA 218 total events, 43.512 events/sec 
Sat Jan 7 16:47:08 GMT 2012 303mA 186 total events, 37.110 events/sec 
Sat Jan 7 16:47:13 GMT 2012 304mA 235 total events, 46.896 events/sec 
Sat Jan 7 16:47:18 GMT 2012 250mA 70 total events, 13.952 events/sec 
Sat Jan 7 16:47:23 GMT 2012 203mA 61 total events, 12.182 events/sec 
Sat Jan 7 16:47:28 GMT 2012 200mA 62 total events, 12.353 events/sec 
Sat Jan 7 16:47:33 GMT 2012 200mA 138 total events, 27.522 events/sec
And here again with the sim removed, same applies as above about the phone being idle.
Code:
Using I2C to read charge meter directly 
Sat Jan 7 16:55:05 GMT 2012 407mA 197 total events, 39.329 events/sec 
Sat Jan 7 16:55:10 GMT 2012 300mA 220 total events, 43.903 events/sec 
Sat Jan 7 16:55:15 GMT 2012 295mA 187 total events, 37.303 events/sec 
Sat Jan 7 16:55:20 GMT 2012 292mA 324 total events, 64.670 events/sec 
Sat Jan 7 16:55:25 GMT 2012 307mA 81 total events, 16.174 events/sec 
Sat Jan 7 16:55:30 GMT 2012 178mA 73 total events, 14.582 events/sec 
Sat Jan 7 16:55:35 GMT 2012 184mA 86 total events, 17.151 events/sec 
Sat Jan 7 16:55:40 GMT 2012 211mA 183 total events, 36.512 events/sec
drawing 180mA when idle is stupidly high, and these results must be accurate as well since the battery is lasting only ~7 hours in idle mode and this makes sense with the maths as 1221mAh (the max my battery charges to) divided by 180 gives us approx 6.7 hours battery life.

So given that, it looks to me like i have a hardware issue, some fault in the power circuit, maybe a bad voltage regulator or something, or at least some other kind of partial short.

Any ideas anyone? I'd love to be proven wrong about it being a hardware fault as i'm not quite ready to part with the device but 6 hours standby time is no good to anybody really!
__________________
i finally have the device and its even better than i could have ever possibley imagined! well done nokia, very well done indeed!
 
Posts: 3,328 | Thanked: 4,476 times | Joined on May 2011 @ Poland
#10
Originally Posted by ammyt View Post
Well you may not believe it, but I am getting better battery life after installing KP49, using a custom profile I built (lowest voltages possible) and enabling Smart Reflex.The frequencies of my profile is 250 900.
So, I advice you to install KP.
Which's the profile? titan's ideal?
__________________
If you want to support my work, you can donate by PayPal or Flattr

Projects no longer actively developed: here
 
Reply

Tags
discharging, n900 failing


 
Forum Jump


All times are GMT. The time now is 16:40.