Remix.run Logo
cosmic_cheese 9 hours ago

As suggested in the blog post, the battery life issue is complex.

You do need a CPU/SoC that’s efficient, and while Intel and AMD can do this it’s traditionally been a struggle for them.

Next, the OS needs to be capable of taking full advantage of the chip’s efficiency. Windows could be decent here in, but Microsoft doesn’t believe in an operating system that’s ever truly idle (and neither do the third parties living in your taskbar tray), so even on relatively efficient laptops much of that potential is wasted. Linux is kind of all over the place, depending on your hardware, which governor you’re using, how it’s configured, whether your browsers are configured to use GPU acceleration or are burning power intensive CPU cycles, etc.

Then there’s sleep. Most of the problems here come down to x86 laptops not implementing proper S3 sleep but only “modern standby”, which attempts to emulate the sleep mode that Apple uses that allows for emails to be fetched etc while in a near-sleep low-power state. The problem is that modern standby is not implemented well in Windows or Linux and how individual laptop firmwares handle it can vary a great deal, and the sum of it is that it generally speaking doesn’t work, which is why so many x86 laptops drain themselves after being “asleep” for a couple of days. My ThinkPad does this too.

It’s possible for x86 machines to manage this state correctly, as proven by Valve’s Steam Deck which can be put to sleep and drain its battery slowly enough to stay alive for a week or more. This seems to require a level of integration between the hardware and the OS (an Arch based Linux in this case) than practically all laptop vendors are either willing or capable of.

hspak 2 hours ago | parent | next [-]

My Thinkpad X1 Carbon (gen 5) running linux can suspend for weeks without dying. There was definitely a window where battery life under suspending wasn't a huge problem in Linux, not sure what happened.

I also have a Framework 13 (11th gen intel) which has terrible suspend battery life (also loses 2-3%/hour like the newer AMD version)– I was hoping that the AMD chips would fare better, but it seems not.

krabizzwainch 2 hours ago | parent | next [-]

For my all AMD ASUS TUF 16, I am having a great experience with sleep and battery drain. I’m running Nobara, a Fedora gaming spinoff. I can 100% treat it like my apple devices where I can close it and ignore it for several days, and maybe lose 1-5% battery over that time.

My understanding is that it being all AMD makes a difference, but I don’t know for sure.

dheera 33 minutes ago | parent | prev [-]

My Framework has the same battery issues as OP.

My previous two Xiaomi laptops also held charge for a long time on suspend, though not weeks.

BirAdam 9 hours ago | parent | prev | next [-]

Excellent point with Steam Deck. The machine is proof that x86 and Linux can do it and simply don’t.

dpoloncsak 8 hours ago | parent [-]

While proof, I think it also highlights the root cause of the issue.

Linux is developed to be compatible with different hardware setups.

SteamOS and MacOS are both (supposed to be) locked to their respective hardware. It works on that hardware, but ymmv on anything else.

joshstrange 7 hours ago | parent | prev [-]

> It’s possible for x86 machines to manage this state correctly, as proven by Valve’s Steam Deck which can be put to sleep and drain its battery slowly enough to stay alive for a week or more.

I had the original Steam Deck and the OLED Steam Deck and neither of them would hold a charge past a day or so. It's a constant annoyance for me as I don't want to leave it plugged in 24/7 but if I don't, it won't be ready to go when I use it. I often end up playing while plugged in which is just silly.

A week of battery (while it's "off") would be amazing, it feels like I can't get 24hrs without the battery being trash.

Compare this to my iPad or MBP and the difference is stark. I really only use my Switch in docked mode (the joycons suck) so I don't have a good read on how long it holds it's battery but I assume it must be better than the Steam Deck.

jakeydus 2 hours ago | parent | next [-]

We got an ipad mini for my kid(s) and regularly leave it unplugged for weeks at a time, sitting on a shelf until we've got a flight or long enough car ride to justify bringing it out. I did that the other day and after not charging it since at least labor day, it was sitting at 90%. I'm just blown away every time.

stratosmacker 2 hours ago | parent | prev [-]

Hey fyi and for posterity, on SteamDeck I have the same issue and the cause is the same as outlined above (modern standby). I would love to hear more from folks who don't have this out of the box.

The fix is simple but I have to wonder why it's not set by default

https://github.com/nazar256/publications/blob/main/guides/st...

Ideally the Steamdeck would come with hibernation after timeout and FDE enabled by default, but it doesn't. Still love it, and I'm glad/grateful it's open enough to enable these features on my own

joshstrange an hour ago | parent | next [-]

Thank you for that link!

And yes, I'm surprised they don't do something like this out of the box. I really love my Steam Deck overall and I agree, the ability to tweak and enable these features really make it an amazing product. Especially in comparison to my Switch 2 which is great but 100% locked down.

q3k 39 minutes ago | parent | prev [-]

No sleep battery drain issues on my OLED model. Stock OS. Got it a few months ago.

SXX 31 minutes ago | parent [-]

Can't agree on it. For whatever reason my deck OLED do have this issue. Do you use SDcard btw? Since it's really the only difference from a stock device.

q3k 30 minutes ago | parent [-]

I don't. I also have the highest end model FWIW.

SXX 13 minutes ago | parent [-]

BTW after making some research apparently OLED's could be waken up by Bluetooth devices and recently they added option to disable this:

https://www.reddit.com/r/SteamDeck/comments/188jgd7/howto_se...