Battery drain while suspended

Ok fixed the typo thx @Caliga

I also reckon its two distinct issues, as a note my laptop also gets quite hot. Am going to investigate further. although I reckon the reason that the battery was draining when the lid closes was that ‘suspend’ wasn’t actually working like it should but its possible the ram was keeping the processor awake doing crap, maybe check cpu wakes in power statistics

so power statistics is broken :frowning:

and on that note does anyone know of a tool to check what wakes a cpu/see long term resource usage stats

@tasty Perhaps powertop can deliver some statistics

I have the same issue with a Librem 15v3 bought in May 2018. When I suspend the laptop at night when the battery has been fulled charged, it has become ~75% in the morning.

I also tried to install the extension “Hibernate status button” as I read that Suspend still consumes a bit of energy while Hibernate should not. When I try to Hibernate the laptop, the screen goes black for 2 to 3 seconds before automatically waking up on its own. So I am currently stuck with only the option to Suspend and the drain associatied with it on my Librem.

My RAM is 16G and the Part Number is 16ATF2G64HZ-2G3B1, simlar to veggies and Russ. Is it ok to return the RAM directly to Crucial, or is Purism able to handle this for their customers?

More importantly, which new RAM should I buy to solve the power drain issue? Does the Purism team have a recommendation here?

I was thinking that drain of ~1%/hour was excessive (it’s what I see with my Kingston memory from Purism) but it looks like that’s what everyone sees.

Is ~1%/hour drain during sleep normal for everyone?

I can confirm the about 1 % power drain per hour during suspend (in my case 20 % per 24 hours).

IMHO this is still too high but good enough for mobile working “on the read”.

Background:

I have replaced my original RAM from Crucial CT16G4SFD8213.C16HF1 (see picture) with a new Samsung RAM (M471A2K43CB1-CRC) since the original RAM had a massive power drain during suspend (I don’t know who to blame but the problem seems limited to one special Crucial RAM type - I did not send my librem 13v2 to purism since I want to support them and treat this as a “donation”).

The new RAM is DDR4-2400 though the librem 13v2 supports only 2133 MHz but higher rated modules will clock down to lower speeds without any issues.

I still have not used powertop to try to optimize the power consumption and I am still not using the most recent “BIOS” update (coreboot) so I expect an improvement (lowering power drain) in the future.

Edit:

I forgot to mention

  • I am using Ubuntu 18.04.01 (point release 1)
  • kill switches are set to switch off the the camera and wifi (so the power consumption could be higher if switched on)
2 Likes

I think there is no (easy) option to minimize the power consumption during suspend since the Intel ME firmware has been stripped down to the minimum for the librem 13v2 (as we wanted it to avoid BLOB back boxes and risks of backdoors).

For Linux there is a grub cmd option to optimize the power settings but the script from the link does not find a matching firmware entry for the optimization.

For more background see:

http://iam.tj/prototype/enhancements/Windows-acpi_osi.html

Notebook and tablet PCs have been customising the Advanced Configuration and Power Interface (ACPI) in the firmware (BIOS or UEFI) for versions of Microsoft Windows operating system (OS).
In particular, the Differentiated System Description Table (DSDT), which contains byte-code that the active operating system executes,
is written such that unless the running OS reports itself as Windows many functions are disabled or severely restricted.

DSDT enables many functions based on the name/version of the operating system that is running (known as the Operating System Interface (OSI) name).
Depressingly, the OSI code that tests which operating system version is running almost always only checks for versions of Microsoft Windows.

If the code doesn’t recognise the running operating system it only enables a bare minimum of functionality and leaves many functions and embedded devices
(such as built-in WiFi, Bluetooth, Memory-Card, Fingerprint, Multimedia buttons, extended Function keys, external monitor ports) disabled or not completely configured.

Fortunately this issue was recognised by the Linux developers early on and they provided an option, acpi_osi=,
that allows Linux to report itself as some other operating system in order to have the DSDT code enable the same functionality as it does for Microsoft Windows.

Hi all,

I had the same issue and was very happy to see @tasty’s post help solve it. My issue now is that the mouse goes to sleep after a very short period of inactivity…

Did you figure out how to solve the mouse issue?

Nevermind, I just played around with powertop and figured out I needed to set the mouse to bad…

FYI https://tracker.pureos.net/T530 has been resolved.

2 Likes

For Linux there is a grub cmd option to optimize the power settings but the script from the link does not find a matching firmware entry for the optimization.

For more background see:

http://iam.tj/prototype/enhancements/Windows-acpi_osi.html

Linux already reports itself as compatible with all versions of Windows and that method would be used if the DSDT flags a particular OSI string as incompatible and acts on it.

https://www.kernel.org/doc/Documentation/acpi/osi.txt

Since this laptop was not built for windows and probably not tested on it is why searching for a Windows string within the DSDT is unsuccessful.

I still have awful standby drain. I’m running NixOS with all powertop options enabled. Is there some secret sauce I’m missing?

Powertop gave me a list of commands I should execute. Let’s see if this will help me on the Dell XPS 13.

So still did not help ;(
So keeping the lid closed for a day depletes the battery. Did not happen on Ubuntu. So I am wondering where the difference is.

Is the output of powertop:
I2C Adapter i2c-6 has no runtime power management

and I have to do settings again for the tunings e.g.:
echo ‘0’ > ‘/proc/sys/kernel/nmi_watchdog’;

Why is that?

1 Like

@twinkybot

Just for “our” statistics: Can you estimate how long your Librem can stay suspended until a fully loaded battery is empty? And which Librem do you have? And which OS are you using?

Short update:

After having changed the RAM bar from Crucial to Samsung one year ago on my Librem 13 v2 (see earlier post here) the battery could stay about four days in suspend mode until it was empty.

I have updated my firmware now to Version: 4.9-7 (built May 16 2019) and the battery supports five days in suspend mode now. I am using Ubuntu 18.04 with the latest HWE stack (kernel etc.) so it may also have improved due to better Ubuntu support.

I have not yet used any powertop settings to improve the battery lifetime…

I have a Librem 13 v3 with the Crucial 16gb RAM. I am running the latest PureOS. I can get 4 days of standby on it. This is after I’ve used it some, so not even at a full battery. I’ve noticed about 14-22~% battery drain per 24 hours.

That is fine for me.

Personally a better solution to swapping RAM and tweaking power settings (although important) would be to get hibernation working and not worry about how much power you are sucking on while in standby.

It is a pain to setup on the Librem because of Luks and there being no clear guide to setting it up, but that is the best solution, IMHO.

1 Like

As stated above, my Laptop is a Dell XPS 13.

I just changed the Crucial 16GB RAM module CT16G4SFD824A.C16FHD1 which came with Librem 13v4 and changed it for 16GB module from HyperX.

It works and after brief test it seems it solved the high drain issue. I measure 0.00 A on the DC power supply while suspended with fully charged battery. Not like before:

I will suspend it unplugged over night and will see.

3 Likes