Battery Tests on a Lenovo ThinkPad X1 Carbon Gen 6 Running Ubuntu 18.04 LTS

• Updated February 2, 2019


The Lenovo ThinkPad X1 Carbon Gen 6 has pretty good battery life, but most battery tests are performed running Windows. In an effort to get a baseline of how the battery performs running Ubuntu 18.04 LTS, I will be documenting some various, real world battery tests that I come up with. There will not be anything too scientific here. I will update this post with more tests as I complete them.

Test 1

Specifications

BIOS: 1.31

Kernel: Linux 4.15.0-43-generic #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

At the time of this test, the laptop was 22 days old.

Events

  1. Unplugged on Jan 16 at 6:30 PM
    • Used for 1 hour 27 minutes
  2. First deep sleep at 88% power on Jan 16 at 7:57 PM
    • Deep sleep for 11 hours 22 minutes
  3. Wake at 85% power on Jan 17 at 7:19 AM with 3% discharge during deep sleep
    • Used for 1 hour 17 minutes
  4. Second deep sleep at 73% power on Jan 17 at 8:36 AM
    • Deep sleep for 1 day 5 hours 56 minutes
  5. Wake at 65% power on Jan 18 at 2:32 PM with 8% discharge during deep sleep
    • Used for 7 hours 33 minutes
  6. Finally, plugged in at 3% power on Jan 18 at 9:55 PM

Total usage time: 10 hours 17 minutes

Total deep sleep time: 1 day 17 hours 18 minutes with 11% of discharge during sleep

Usage

This is from memory, but here is a brief overview of what I used the laptop for while it was awake:

  • Applications always open: Google Chrome, Sublime Text, and Terminal.
  • Not very heavy usage. Usually web browsing using Google Chrome (with uBlock Origin). Used Sublime Text and Terminal frequently. Used Gimp for about 20 mins.
  • Watched videos on YouTube from 20% power to 3% power.
  • I locked the laptop (where the screen turns off) for short periods (~15 minutes) of time.
  • Display brightness ranged from 10% to 60% throughout the time unplugged, and probably averaged 40%.

Logs

Output from /var/log/kern.log from the first deep sleep:

Jan 16 19:57:16 dathomir kernel: [885857.799977] PM: suspend entry (deep)
Jan 17 07:19:18 dathomir kernel: [885857.799979] PM: Syncing filesystems ... done.
Jan 17 07:19:18 dathomir kernel: [885857.812067] Freezing user space processes ... (elapse
d 0.002 seconds) done.
Jan 17 07:19:18 dathomir kernel: [885857.814292] OOM killer disabled.
Jan 17 07:19:18 dathomir kernel: [885857.814293] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Jan 17 07:19:18 dathomir kernel: [885857.815744] Suspending console(s) (use no_console_suspend to debug)
Jan 17 07:19:18 dathomir kernel: [885858.382791] ACPI: EC: interrupt blocked
Jan 17 07:19:18 dathomir kernel: [885858.443486] ACPI: Preparing to enter system sleep state S3
Jan 17 07:19:18 dathomir kernel: [885858.450667] ACPI: EC: event blocked
Jan 17 07:19:18 dathomir kernel: [885858.450668] ACPI: EC: EC stopped
Jan 17 07:19:18 dathomir kernel: [885858.450668] PM: Saving platform NVS memory
Jan 17 07:19:18 dathomir kernel: [885858.450674] Disabling non-boot CPUs ...
Jan 17 07:19:18 dathomir kernel: [885858.468041] smpboot: CPU 1 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.491980] smpboot: CPU 2 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.515916] smpboot: CPU 3 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.546834] IRQ 124: no longer affine to CPU4
Jan 17 07:19:18 dathomir kernel: [885858.547861] smpboot: CPU 4 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.579745] smpboot: CPU 5 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.602800] IRQ 122: no longer affine to CPU6
Jan 17 07:19:18 dathomir kernel: [885858.603825] smpboot: CPU 6 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.626727] IRQ 134: no longer affine to CPU7
Jan 17 07:19:18 dathomir kernel: [885858.627742] smpboot: CPU 7 is now offline
Jan 17 07:19:18 dathomir kernel: [885858.634009] ACPI: Low-level resume complete
Jan 17 07:19:18 dathomir kernel: [885858.634130] ACPI: EC: EC started
Jan 17 07:19:18 dathomir kernel: [885858.634131] PM: Restoring platform NVS memory
Jan 17 07:19:18 dathomir kernel: [885858.634931] Enabling non-boot CPUs ...

Test 2

This second "test" involved the laptop being unplugged for just under 4 days with very light usage while the laptop was awake.

Specifications

BIOS: 1.31

Kernel: Linux 4.15.0-43-generic #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

At the time of this test, the laptop was 1 month and 5 days old.

Events

  1. Unplugged at 100% power and first deep sleep on Jan 28 at 7:43 AM
    • Deep sleep for 1 hour 15 minutes
  2. Wake on Jan 28 at 8:58 AM
    • Used for less than 1 minute
  3. Second deep sleep on Jan 28 at 8:58 AM
    • Deep sleep for 7 hours 36 minutes
  4. Wake on Jan 28 at 4:34 PM
    • Used for 43 minutes
  5. Third deep sleep on Jan 28 at 5:17 PM
    • Deep sleep for 20 hours and 42 minutes
  6. Wake on Jan 29 at 1:59 PM
    • Used for 22 minutes
  7. Fourth deep sleep on Jan 29 at 2:21 PM
    • Deep sleep for 20 hours and 28 minutes
  8. Wake on Jan 30 at 10:49 AM
    • Used for 9 minutes
  9. Fifth deep sleep on Jan 30 at 10:58 AM
    • Deep sleep for 5 hours and 24 minutes
  10. Wake on Jan 30 at 4:22 PM
    • Used for 37 minutes
  11. Sixth deep sleep on Jan 30 at 4:59 PM
    • Deep sleep for 24 hours and 46 minutes
  12. Finally, wake and plugged in at 53% power on Feb 1 at 5:45 PM

Total usage time: 1 hour 52 minutes

Total deep sleep time: 80 hours and 11 minutes

Logs

Output from grep PM /var/log/kern.log:

Jan 28 07:43:29 dathomir kernel: [1555344.319327] PM: suspend entry (deep)
Jan 28 08:58:11 dathomir kernel: [1555344.319329] PM: Syncing filesystems ... done.
Jan 28 08:58:11 dathomir kernel: [1555344.895827] PM: Saving platform NVS memory
Jan 28 08:58:11 dathomir kernel: [1555345.081722] PM: Restoring platform NVS memory
Jan 28 08:58:11 dathomir kernel: [1555346.133611] PM: suspend exit
Jan 28 08:58:42 dathomir kernel: [1555377.385474] PM: suspend entry (deep)
Jan 28 08:58:42 dathomir kernel: [1555377.385475] PM: Syncing filesystems ... done.
Jan 28 16:34:06 dathomir kernel: [1555377.966489] PM: Saving platform NVS memory
Jan 28 16:34:06 dathomir kernel: [1555378.143656] PM: Restoring platform NVS memory
Jan 28 16:34:06 dathomir kernel: [1555379.190518] PM: suspend exit
Jan 28 17:17:11 dathomir kernel: [1557963.902707] PM: suspend entry (deep)
Jan 29 13:59:13 dathomir kernel: [1557963.902709] PM: Syncing filesystems ... done.
Jan 29 13:59:13 dathomir kernel: [1557964.546929] PM: Saving platform NVS memory
Jan 29 13:59:13 dathomir kernel: [1557964.729315] PM: Restoring platform NVS memory
Jan 29 13:59:13 dathomir kernel: [1557965.770514] PM: suspend exit
Jan 29 14:21:34 dathomir kernel: [1559307.022997] PM: suspend entry (deep)
Jan 29 14:21:34 dathomir kernel: [1559307.022999] PM: Syncing filesystems ... done.
Jan 30 10:49:18 dathomir kernel: [1559307.601107] PM: Saving platform NVS memory
Jan 30 10:49:18 dathomir kernel: [1559307.762646] PM: Restoring platform NVS memory
Jan 30 10:49:18 dathomir kernel: [1559308.814922] PM: suspend exit
Jan 30 10:58:49 dathomir kernel: [1559879.718539] PM: suspend entry (deep)
Jan 30 16:22:14 dathomir kernel: [1559879.718541] PM: Syncing filesystems ... done.
Jan 30 16:22:14 dathomir kernel: [1559880.373576] PM: Saving platform NVS memory
Jan 30 16:22:14 dathomir kernel: [1559880.535961] PM: Restoring platform NVS memory
Jan 30 16:22:14 dathomir kernel: [1559881.577825] PM: suspend exit
Jan 30 16:59:01 dathomir kernel: [1562088.565714] PM: suspend entry (deep)
Feb  1 17:45:00 dathomir kernel: [1562088.565716] PM: Syncing filesystems ... done.
Feb  1 17:45:00 dathomir kernel: [1562089.223072] PM: Saving platform NVS memory
Feb  1 17:45:00 dathomir kernel: [1562089.391762] PM: Restoring platform NVS memory
Feb  1 17:45:00 dathomir kernel: [1562090.428530] PM: suspend exit