Enabled S3 Sleep, Sleep Timers don't work and laptop wakes up and stays awake still

I recently finally discovered a way to make the Framework (12th gen) use S3 sleep instead of S0. I’ll get to my question a bit later so feel free to skip the paragraphs where I outline how and why for people looking to do the same.

Why did I do this? S0 was so bad that the laptop would literally burn all its battery overnight while not in use. Even at the best of times, the drain is unusable and I really don’t understand why S0 sleep even exists. It must be the most prevalent anti-consumer act in all of tech.

How did I do it?

  1. Went into regedit (Registry Editor)
  2. navigated to path “Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power”
  3. Added a new DWORD (int 32) value called “PlatformAoAcOverride” with the value of zero

Restart the computer and now your S0 sleep is replaced with S3. But not all is well it seems.

The timers to have the laptop go to sleep after X minutes when plugged or unplugged do not work anymore. What’s worse, I’m putting my computer to sleep and finding it awake in the morning. I don’t even understand how that’s possible since the Framework doesn’t even react to keyboard in S3, it only wakes if you press the power button or open the lid. Either the lid sensor has something not right about it or it’s something else.

Anyone know what’s going on? Why this is happening and how I can fix it? I’ve grown increasingly frustrated with how the Framework cannot be used as a laptop with it’s lack of portability (due to overheating in a bag and deleting it’s battery overnight as well as it’s poor battery performance regardless.

I want to get the 16 eventually and I’ve been using the 13 as my main computer (gaming, programming for work and on the go) but I won’t do that unless these massive issues can be resolved. Framework needs to add first party S3 support.

Have you considered using hibernation? I have mine set so that pressing the power button triggers hibernation. The wake time is long but you don’t have to worry about the battery. This is a common issue on all Windows laptops due to Microsoft’s poor implementation of Modern Standby. I believe there might be a thread somewhere discussing this but S3 sleep can be complicated properly to implement in firmware.

Hibernate is very very slow to wake up. I put my laptop to sleep as much as 10 times in a day. It would be generous to call it tedious to deal with that each time.

I don’t understand what’s complicated about S3. That’s what laptops did for 20 years or more before modern standby was forced onto users. And it appears to work until the laptop spontaneously wakes itself up overnight or at random intervals.

As of now I’m seeking a refund since the framework cannot be used as a laptop. If you put it in a bag, with S0 it’ll simply overheat and run out of battery in no time. With S3 it spontaneously wakes up and does the same. At this point it’s a joke. “I’m perfectly happy with my framework when I use it as a” is all I can say. It’s ridiculous. And the community doesn’t have solutions to these problems but also down plays them at every turn to lure in unsuspecting buyers.

You are free to make that decision. If a particular laptop doesn’t work for you, then that’s that. Everyone has different needs and that’s why we have choice.

As I mentioned, it requires extensive BIOS support to work properly and when asked why Modern Standby was introduced, Microsoft mentioned manufacturer wouldn’t always maintain this support which prevented some devices from properly going to sleep. Modern Standby was introduced as a way for Microsoft to try and maintain sleep functionality across various devices from their end.

Again, it’s not Framework’s fault. It’s an issue found across all modern Windows laptops due to Microsoft.

No one has downplayed these issues. You can find threads across the forum talking about these issues. There’s no solution because it’s a complex problem that not even Microsoft knows what’s causing it. Microsoft has even stated that they’re not sure if they’ll be able to fix it.

I would say Framework and the community tries to offer as much support to people as they can. Some of these things are easy to resolve while others are out of their hands. If you’re saying that in response to the sleep issue, you might as well be accusing every laptop brand of scamming people.

1 Like

Intel has removed official support for S3 on mobile processors for multiple generations now. Would be stupid for a manufacturer to officially support S3, when Intel could very well rip out the support that is still technically there at any time. And that support seems to be only there, because Intel’s CPUs are still very similar across the line, from desktop CPUs, where S3 is still officially supported down to mobile CPUs like in the FW where it is not.

AMD seems to have removed official S3 support from their mobile CPUs as well, although I do not know if they still make a half-baked and bugged/untested S3 version available like Intel does. Since their CPUs are much more different between desktop and mobile, they’d have more reason to not support S3 at all on mobile CPUs.

Then, Microsoft says, switching between modern standby and S3 is only supported with a reinstall. Even back when Intel still officially supported both and Thinkpads had a BIOS switch to choose, which of the 2 the BIOS communicated to the OS. So any and all bugs you find with S3 on Windows might also stem from the fact, that you used that registry hack and cannot do a clean Windows installation for S3. I have not found any information, on what specific Windows features would depend on this and are only configured during the initial installation though.

You can think of modern standby what you like. I am aware of / have seen issues on FW like the USB4 and audio drivers (or others on other notebooks) bugging out and not sleeping correctly, which increases power drain in sleep significantly and is only fixed by a reboot. But nothing that will make the laptop get hot or drain its battery completely. A working, default Windows installation should a) doze to hibernate after it consumed 5% battery capacity sleeping and b) even if Windows does crash (which happens far too often, might be a FW firmware issue or a Windows issue, don’t know), it should shutdown instead of remaining on forever. I.e. even when a driver misbehaves and wastes power, it should still at most cost you 5% battery. The only question is how long the device will wake quickly from sleep, before it switches to hibernate, where waking will no longer be instantaneous.

Another issue that has plagued many modern standby devices is, Windows somehow missing that the device was unplugged from power and behaving like on AC power. Which means doing all kinds of background work. That is what usually caused the battery to be completely empty and the device hot. Because Windows thought mistakenly, that it had unlimited power. My old laptop is affected by that, if you sleep it and then unplug it from power. But I cannot reproduce this on my FW 12th, so that issue seems fixed. In fact, my guess is, that part of the reason why the FW wakes up by itself, even from S3, is, so that Windows gets notified of battery changes so it does under no circumstances miss that it was unplugged from AC power. Or similar, other devices that were designed and configured for modern standby, where a wake-up event is sensible to notify the OS of a change it might want to react to, but can also be handled and ignored in milliseconds. The same is basically impossible with S3.

Other than that, the FW seems to have an inefficient, but passable modern standby implementation. The whole reason for modern standby is giving more control to the OS and the normal drivers the OS uses instead of firmware that simply can shut power off or leave it on and cannot be reliably controlled by the OS. So most of the issues are OS & driver issues. And OS issues are more or less shared across all devices. Driver issues probably as well, at least for the more popular devices.
The biggest cause for varying hardware/firmware-caused power drain with the FW 12th seem to be the non-USB-C expansion cards, at least on released 12th gen firmware (I have been running the beta BIOS since its launch). The base power consumption in sleep just seems to be higher than with competing devices (seems to be down to the board design. Things like user-upgradable RAM might even play into that, hard to know how justified the power draw is compared to other notebooks).

Edit for completeness:
Since the notebook in modern standby is not technically off, the fan will keep running if it was running before you put it to sleep. But since it is no longer doing much, it should cool down and finally shut the fan off quickly. Windows’ is supposed to limit CPU power consumption in a way, so that the fans do never come on again. And this has been true for all devices I have had access to, except in the 2 cases I mentioned. Should Windows for some reason bluescreen and reboot, the fans might come during the reboot until Windows is in control again or gives up and simply shuts down. Or when Windows thinks it is running on AC power and does not do any of the power limiting. The 5 % battery limit Windows gives itself by default has been working perfectly for me on every device, if it is active.

1 Like

Side note in the same topic. Can someone explain the advantage of using sleep or hibernate? I usually just turn off a laptop and reboot it again when I need it even if it is 3 hours later. Not using it for 15 minutes sure but usually I just reopen everything I need which doesn’t take longer than 30 seconds and the boot-up time isn’t that long either.

Everything is right where you left it which depending on how you use a computer is a pretty big deal.

Sleep powers down as much as it can while keeping the memory active so it should resume almost instantly but does use power while sleeping. Hibernate stores the content of your memory to disk and completely powers down so no power used but it does have to boot AND load the content which may take some time (usually not a problem).

I would not recommend running hibernate on an unencrypted system though as that stores some very private stuff unencrypted on disk which anyone could read out if they ever get their hands on it.

1 Like

Windows should limit its power usage when sleeping plugged in as if it’s running on battery because it’s more eco-friendly. However it’s unlikely for windows to actually do that since Microsoft is not the one paying your electricity bill.

Its not letting just any task run. It is doing what Microsoft considers maintenance work. So doing virus scans, updates of Windows and all of its diagnostic scans.

You can disagree with how much spying Microsoft considers as diagnostics and if what they are doing is efficient, but running it when possible follows from that.
People that leave their notebooks plugged in that way and do not shut their systems down explicitly will have less of that stuff running when they are actually using the system.
And if you do not use your system often enough or always on battery, the Windows updates might queue up until Microsoft takes your control away and forces you to install them and restart with no option to delay, because it was already delayed by that much, if you are on battery or not. The system will mostly sleep even on AC power. But it is more than enough to empty whatever is left in the battery.

Microsoft could do just one thing to make it 10000x better: underclock the CPU when doing “maintenance”. Instead of underclocking to 0.4~1.2GHz, it overclocks to 4+GHz with only 8%~10% CPU utilization and the fan is as loud as playing Minecraft on Linux