maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Nokia N900 (https://talk.maemo.org/forumdisplay.php?f=44)
-   -   Excessive battery drain when idle (https://talk.maemo.org/showthread.php?t=91371)

Beeswax 2013-09-14 16:35

Excessive battery drain when idle
 
The other day my N900 drained the battery to the point that it would no longer even charge it. I bought another one off eBay and not only did it take forever to charge over USB but it dropped from1000mah to 750mah in a little under 2 hours. I've been reading threads on here all day but I can't seem to use them to fix the problem.
Below is my output from powertop which as you can see has core at 100% on which I guess is my problem.
Code:

Powertop 1.13.3
Sleeping for 11 seconds before sampling
Collecting data for 30 seconds
Sample interval was 00m 30s 17883us

C#      | Ratio  | Avg/dura | Frequency | Ratio
--------+--------+----------+-----------+--------+
    C0 |  1.7% |          |  1150 MHz |  nan% |
    C1 |  0.1% |    2.2ms |
    C2 |  19.6% |  58.2ms |
    C3 |  2.3% |  99.9ms |
    C4 |  76.3% | 2288.4ms |

IRQ#    | Activity  | Type          | Name
--------+------------+----------------+---------------------------
    56 |        366 |          INTC | i2c_omap
    37 |        105 |          INTC | gp
    11 |        63 |          INTC | prcm
    57 |        58 |          INTC | i2c_omap
    86 |        42 |          INTC | mmc1
    12 |        13 |          INTC | DMA
    225 |          8 |          GPIO | omap2-onenand

PID#    | Activity  | Name          | Function Entry (Expire)
--------+------------+----------------+---------------------------
      0 |        73 |  <kernel core> | tick_nohz_restart_sched_tick (tick_sched_timer)
    740 |        18 |      bme_RX-51 | sys_timer_settime (posix_timer_fn)
    38 |        17D|            awk | cpufreq_governor_dbs (delayed_work_timer_fn)
      0 |        11 |  <kernel core> | hrtimer_start (tick_sched_timer)
    602 |          7 |          mmcqd | schedule_timeout (process_timeout)
    740 |          6 |      bme_RX-51 | schedule_timeout (process_timeout)
      1 |          3 |  <kernel core> | queue_delayed_work (delayed_work_timer_fn)
    706 |          3 |          dsme | __enqueue_rt_entity (sched_rt_period_timer)
    602 |          2 |          mmcqd | queue_delayed_work (delayed_work_timer_fn)
    740 |          2 |      bme_RX-51 | sys_timer_settime (posix_timer_fn)
    740 |          2 |      bme_RX-51 | do_nanosleep (hrtimer_wakeup)
    729 |          2D|<kernel module> | queue_delayed_work (delayed_work_timer_fn)
    706 |          2 |          dsme | do_nanosleep (hrtimer_wakeup)
  1171 |          1 |    hildon-home | queue_delayed_work (delayed_work_timer_fn)
  1511 |          1 |      browserd | futex_wait (hrtimer_wakeup)
    785 |          1 |          hald | schedule_hrtimeout_range (hrtimer_wakeup)
    810 |          1 |            mce | schedule_hrtimeout_range (hrtimer_wakeup)
  1534 |          1 |      browserd | futex_wait (hrtimer_wakeup)
  1509 |          1 |      browserd | futex_wait (hrtimer_wakeup)
    910 |          1 | hald-addon-bme | schedule_hrtimeout_range (hrtimer_wakeup)
    602 |          1 |          mmcqd | schedule_timeout (process_timeout)
  1539 |          1 |      browserd | futex_wait (hrtimer_wakeup)
  1581 |          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: 100%|RET:  0%|INA:  0%| ON:  0%| now:(OFF)
    per |OFF:  0%|RET:  98%|INA:  0%| ON:  1%| 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:  0%|RET:  0%|INA:  0%| ON: 100%| now:(ON)
  neon |OFF:  76%|RET:  2%|INA:  19%| ON:  1%| now:(ON)
    mpu |OFF:  76%|RET:  2%|INA:  19%| ON:  1%| 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 |        UART2 |
  core3 |      USBTLL
  wkup |          GPT1 |      32KSYNC |        GPIO1
        |          WDT1 |          SR1 |          SR2
        |
  ckgen |          CORE |          PERI |          96M
        |          48M |          12M |          54M
        |      EMU_CORE |
    per |        GPIO2 |        GPIO3 |        GPIO4
        |        GPIO5 |        GPIO6 |

Total wakeups  813,  27.1/s | IRQ  655,  21.8/s | Timers  158,  5.3/s
HW wakeups      63,  2.1/s |    Real gp_timers expired  105,  3.5/s

I've got no idea why this has started happening as I've changed nothing on the phone and I have no idea how to stop it. Does anyone know what I can do to solve this or at least try and diagnose the problem?

peterleinchen 2013-09-14 19:16

Re: Excessive battery drain when idle
 
No idea also here what causes your core to stay on always, as rest of powertop output seems quite okay.

Just try a full power cycle:
shut down
remove battery
push power button for more than 3 seconds
insert battery
start up
and check again ...

Beeswax 2013-09-14 20:02

Re: Excessive battery drain when idle
 
Done and done. Looks pretty much the same to me.
Code:

Powertop 1.13.3
Sleeping for 11 seconds before sampling
Collecting data for 30 seconds
Sample interval was 00m 30s 15503us

C#      | Ratio  | Avg/dura | Frequency | Ratio
--------+--------+----------+-----------+--------+
    C0 |  2.8% |          |  1150 MHz |  nan% |
    C1 |  0.0% |    0.3ms |
    C2 |  7.4% |  11.6ms |
    C3 |  32.1% |  253.3ms |
    C4 |  57.6% |  720.4ms |

IRQ#    | Activity  | Type          | Name
--------+------------+----------------+---------------------------
    56 |        420 |          INTC | i2c_omap
    12 |        342 |          INTC | DMA
    37 |        272 |          INTC | gp
    11 |        200 |          INTC | prcm
    86 |        99 |          INTC | mmc1
    57 |        63 |          INTC | i2c_omap
    225 |        20 |          GPIO | omap2-onenand
    67 |        17 |          INTC | ssi_p1_mpu_irq0
    71 |        11 |          INTC | ssi_gdd
    311 |          6 |          GPIO | ssi_p1_cawake_gpio

PID#    | Activity  | Name          | Function Entry (Expire)
--------+------------+----------------+---------------------------
      0 |        199 |  <kernel core> | tick_nohz_restart_sched_tick (tick_sched_timer)
    38 |        48D|            awk | cpufreq_governor_dbs (delayed_work_timer_fn)
  1188 |        30 | hildon-desktop | schedule_hrtimeout_range (hrtimer_wakeup)
      0 |        24 |  <kernel core> | hrtimer_start (tick_sched_timer)
    606 |        12 |          mmcqd | cfq_completed_request (cfq_idle_slice_timer)
    606 |        11 |          mmcqd | queue_delayed_work (delayed_work_timer_fn)
    745 |        10 |      bme_RX-51 | sys_timer_settime (posix_timer_fn)
    606 |          7 |          mmcqd | schedule_timeout (process_timeout)
    745 |          6 |      bme_RX-51 | schedule_timeout (process_timeout)
    15 |          6 |        kswapd0 | schedule_timeout (process_timeout)
    709 |          4 |          dsme | __enqueue_rt_entity (sched_rt_period_timer)
    606 |          3 |          mmcqd | laptop_io_completion (laptop_timer_fn)
    745 |          2 |      bme_RX-51 | sys_timer_settime (posix_timer_fn)
    745 |          2 |      bme_RX-51 | do_nanosleep (hrtimer_wakeup)
  1524 |          2 |      browserd | futex_wait (hrtimer_wakeup)
    709 |          2 |          dsme | do_nanosleep (hrtimer_wakeup)
      1 |          2D|  <kernel core> | queue_delayed_work (delayed_work_timer_fn)
  1513 |          2 |      browserd | futex_wait (hrtimer_wakeup)
  1549 |          2 |        modest | schedule_timeout (process_timeout)
  1407 |          1 |    mafw-lastfm | schedule_hrtimeout_range (hrtimer_wakeup)
    794 |          1 |          hald | schedule_hrtimeout_range (hrtimer_wakeup)
      1 |          1 |  <kernel core> | queue_delayed_work (delayed_work_timer_fn)
    814 |          1 |            mce | schedule_hrtimeout_range (hrtimer_wakeup)
  1523 |          1 |      browserd | futex_wait (hrtimer_wakeup)
  1187 |          1 |    hildon-home | queue_delayed_work (delayed_work_timer_fn)
    606 |          1 |          mmcqd | schedule_timeout (process_timeout)
  1549 |          1 |        modest | schedule_timeout (process_timeout)
  1542 |          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: 100%|RET:  0%|INA:  0%| ON:  0%| now:(OFF)
    per |OFF:  0%|RET:  96%|INA:  0%| ON:  3%| 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:  0%|RET:  0%|INA:  0%| ON: 100%| now:(ON)
  neon |OFF:  57%|RET:  32%|INA:  7%| ON:  3%| now:(ON)
    mpu |OFF:  57%|RET:  32%|INA:  7%| 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 |        UART2 |          MMC2
        |
  core3 |      USBTLL
  wkup |          GPT1 |      32KSYNC |        GPIO1
        |          WDT1 |          SR1 |          SR2
        |
  ckgen |          CORE |          PERI |          96M
        |          48M |          12M |          54M
        |      EMU_CORE |
    per |        GPIO2 |        GPIO3 |        GPIO4
        |        GPIO5 |        GPIO6 |

Total wakeups  1833,  61.1/s | IRQ 1450,  48.3/s | Timers  383,  12.8/s
HW wakeups      200,  6.7/s |    Real gp_timers expired  16,  0.5/s

This is really annoying because its basically rendered my N900 useless as a mobile phone as its not longer very mobile.

sixwheeledbeast 2013-09-15 08:14

Re: Excessive battery drain when idle
 
Make sure your using powertop with the charger disconnected, and the screen and keys locked.
You say you haven't changed any software but have you had any updates?

Beeswax 2013-09-15 11:19

Re: Excessive battery drain when idle
 
Unplugged the USB cable, power cycled the N900 and re-ran powertop with a sleep 10s beforehand to ensure I got the keyboard closed and the screen locked in time.
Not really sure why neon is selected as its not lit at any point.
No updates either.
Code:

Powertop 1.13.3
Sleeping for 11 seconds before sampling
Collecting data for 30 seconds
Sample interval was 00m 30s 21116us

C#      | Ratio  | Avg/dura | Frequency | Ratio
--------+--------+----------+-----------+--------+
    C0 |  1.4% |          |  1150 MHz |  nan% |
    C1 |  0.1% |    0.4ms |
    C2 |  20.9% |  49.7ms |
    C3 |  12.3% |  167.4ms |
    C4 |  65.4% | 1510.8ms |

IRQ#    | Activity  | Type          | Name
--------+------------+----------------+---------------------------
    56 |        333 |          INTC | i2c_omap
    37 |        106 |          INTC | gp
    86 |        96 |          INTC | mmc1
    11 |        74 |          INTC | prcm
    57 |        63 |          INTC | i2c_omap
    12 |        32 |          INTC | DMA
    225 |        23 |          GPIO | omap2-onenand

PID#    | Activity  | Name          | Function Entry (Expire)
--------+------------+----------------+---------------------------
      0 |        59 |  <kernel core> | tick_nohz_restart_sched_tick (tick_sched_timer)
      0 |        25 |  <kernel core> | hrtimer_start (tick_sched_timer)
    38 |        22D|            awk | cpufreq_governor_dbs (delayed_work_timer_fn)
    623 |        16 |          mmcqd | schedule_timeout (process_timeout)
    759 |        14 |      bme_RX-51 | sys_timer_settime (posix_timer_fn)
    623 |          8 |          mmcqd | queue_delayed_work (delayed_work_timer_fn)
    759 |          6 |      bme_RX-51 | schedule_timeout (process_timeout)
    723 |          5 |          dsme | __enqueue_rt_entity (sched_rt_period_timer)
      1 |          3D|  <kernel core> | queue_delayed_work (delayed_work_timer_fn)
    759 |          2 |      bme_RX-51 | do_nanosleep (hrtimer_wakeup)
    623 |          2 |          mmcqd | laptop_io_completion (laptop_timer_fn)
    723 |          2 |          dsme | do_nanosleep (hrtimer_wakeup)
  1534 |          2 |      browserd | futex_wait (hrtimer_wakeup)
    759 |          1 |      bme_RX-51 | sys_timer_settime (posix_timer_fn)
    927 |          1 | hald-addon-bme | schedule_hrtimeout_range (hrtimer_wakeup)
  1054 |          1 |        python | journal_get_write_access (commit_timeout)
  1093 |          1 |          iphbd | schedule_hrtimeout_range (hrtimer_wakeup)
    828 |          1 |            mce | schedule_hrtimeout_range (hrtimer_wakeup)
  1514 |          1 |      browserd | futex_wait (hrtimer_wakeup)
  1385 |          1 |    mafw-lastfm | schedule_hrtimeout_range (hrtimer_wakeup)
    815 |          1 |          hald | schedule_hrtimeout_range (hrtimer_wakeup)
  1583 |          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: 100%|RET:  0%|INA:  0%| ON:  0%| now:(OFF)
    per |OFF:  0%|RET:  98%|INA:  0%| ON:  1%| 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:  0%|RET:  0%|INA:  0%| ON: 100%| now:(ON)
  neon |OFF:  65%|RET:  12%|INA:  20%| ON:  1%| now:(ON)
    mpu |OFF:  65%|RET:  12%|INA:  20%| ON:  1%| 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 |        UART2 |
  core3 |      USBTLL
  wkup |          GPT1 |      32KSYNC |        GPIO1
        |          WDT1 |          SR1 |          SR2
        |
  ckgen |          CORE |          PERI |          96M
        |          48M |          12M |          54M
        |      EMU_CORE |
    per |        GPIO2 |        GPIO3 |        GPIO4
        |        GPIO5 |        GPIO6 |

Total wakeups  902,  30.1/s | IRQ  727,  24.2/s | Timers  175,  5.8/s
HW wakeups      74,  2.5/s |    Real gp_timers expired  106,  3.5/s


ibins 2013-09-15 13:46

Re: Excessive battery drain when idle
 
Maybe you could monitor your process list for a while:
ps -e

If the process IDs after a reboot differ a lot from the process IDs after a couple of minutes without starting/stopping anything (exept the ps process itself), this could be an indicator for something, that is restarting/crashing regularely.

Edit: And use "top". Press "c" after starting top, so it sorts your processes, that use most of the CPU.

Beeswax 2013-09-15 14:44

Re: Excessive battery drain when idle
 
ps looks the same after being run just after boot and just before turning off the phone. Top only shows two things using cpu and that's what you'd expect, top and Xorg.

I'm beginning to think that a reflash may be in order but I don't want to rick flashing the phone if the battery is liable to die on me in the middle of it because it takes so long to charge.

sixwheeledbeast 2013-09-15 15:07

Re: Excessive battery drain when idle
 
Well, I had a similar issue a while ago.
http://talk.maemo.org/showthread.php?t=85701
Never really got to the bottom of it. Never had any trouble of that nature since.

peterleinchen 2013-09-15 18:45

Re: Excessive battery drain when idle
 
Or something like this?
http://talk.maemo.org/showthread.php?t=90140&page=2

vi_ 2013-09-16 09:01

Re: Excessive battery drain when idle
 
Delete your thumbnail cache, rebuild tracker databases and uninstall kernel power settings.

Then try again (in offline mode).


All times are GMT. The time now is 09:08.

vBulletin® Version 3.8.8