Menu

Main Menu
Talk Get Daily Search

Member's Online

    User Name
    Password

    N900 Discharging battery rapidly with low cpu usage!

    Reply
    Page 1 of 2 | 1   2   | Next
    NotTheMessiah | # 1 | 2012-01-06, 12:00 | Report

    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!

    Edit | Forward | Quote | Quick Reply | Thanks

     
    ammyt | # 2 | 2012-01-06, 12:05 | Report

    What is the frequency you've set the CPU to?

    Edit | Forward | Quote | Quick Reply | Thanks

     
    NotTheMessiah | # 3 | 2012-01-06, 12:13 | Report

    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.

    Edit | Forward | Quote | Quick Reply | Thanks

    Last edited by NotTheMessiah; 2012-01-06 at 12:17.

     
    ammyt | # 4 | 2012-01-06, 12:20 | Report

    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.

    Edit | Forward | Quote | Quick Reply | Thanks

     
    NotTheMessiah | # 5 | 2012-01-06, 12:23 | Report

    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.

    Edit | Forward | Quote | Quick Reply | Thanks

     
    vi_ | # 6 | 2012-01-06, 13:15 | Report

    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.

    Edit | Forward | Quote | Quick Reply | Thanks

     
    panjgoori | # 7 | 2012-01-06, 13:30 | Report

    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.

    Edit | Forward | Quote | Quick Reply | Thanks

     
    NotTheMessiah | # 8 | 2012-01-06, 13:59 | Report

    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!

    Edit | Forward | Quote | Quick Reply | Thanks

     
    NotTheMessiah | # 9 | 2012-01-07, 17:12 | Report

    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!

    Edit | Forward | Quote | Quick Reply | Thanks

     
    marmistrz | # 10 | 2012-01-08, 18:24 | Report

    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?

    Edit | Forward | Quote | Quick Reply | Thanks

     
    Page 1 of 2 | 1   2   | Next
vBulletin® Version 3.8.8
Normal Logout