High Battery Drain During Suspend (Windows edition)

The following sleep states are available on this system:
    Standby (S0 Low Power Idle) Network Connected
    Hibernate
    Fast Startup

The following sleep states are not available on this system:
    Standby (S1)
        The system firmware does not support this standby state.
        This standby state is disabled when S0 low power idle is supported.

    Standby (S2)
        The system firmware does not support this standby state.
        This standby state is disabled when S0 low power idle is supported.

    Standby (S3)
        This standby state is disabled when S0 low power idle is supported.

    Hybrid Sleep
        Standby (S3) is not available.
        The hypervisor does not support this standby state.

Only having S0 available explains the high drain.

Did you install the Framework Windows 10 driver bundle from here? Windows 10 Installation on the Framework Laptop DIY Edition - Framework Guides

I did. I was under the impression that Modern Standby was efficient. On the X1 Carbon, which has identical powercfg /a output, power draw is an order of magnitude smaller. Is the X1 cheating somehow?

You are correct, I was thinking S1 instead of S0 low-power idle.

What SSD is it?

I’m using a 500GB WD Blue SN550.

A quick search turned up this:

Not sure if this is relevant, but apparently there are NVMe drives that don’t work with Modern Standby? Event Viewer doesn’t show any unexpected wakes though.

Side note: I have it plugged in and sleeping, and can feel heat on the underside. So it’s definitely doing something

Hi, thanks for reporting this! Could you try running “powercfg.exe /SleepStudy” as administrator and checking what the report that it outputs says?

6 Likes

Wow, didn’t know about this capability! Here’s the report.

The offending sleep session is entry 169:

And the top offender looks like the audio controller:

2 Likes

@feesh the audio controller should shutdown in modern standby unless you put the system in modern standby with an application that is playing/recording music. One of the “features” of modern standby is your system can continue to play music while in standby, however it will keep the CPU from going into deep sleep states to service the HDA codec audio buffers.
I suspect you put your system to sleep with an application that was doing some playback/recording and noticed this.

We have tested modern standby support extensively and if your system is not being kept awake by an app/service, it will go into MS and then hibernate if the 5% battery drops by more than about 5%.

6 Likes

Thanks @Kieran_Levin. I wasn’t explicitly running any audio applications but I’ll double-check for anything running in the background.

1 Like

An update. I closed all my background apps (HWiNFO, MSI Afterburner, Discord) and the Audio Controller is still preventing the CPU from going to sleep:


Is there a way I can find out which process or service is keeping it active? Could this be an issue with the Realtek audio software?

Do you have a browser tab with media in it maybe?

If you really want to dive into it, looks like Windows Performance Analyzer is the tool for diagnosing modern standby: Using Windows Performance Analyzer to analyze Modern Standby issues | Microsoft Docs

No browser running.

Thanks for the WPA suggestion, running a trace now.

I ran the trace but I’m not sure what to look for. This is a ~2.5h sleep session after a fresh boot with all my startup programs exited, so I’m sure that I’m not playing or recording any audio. SleepStudy still shows 100% active audio controller.

Here’s one of the graphs. Anywhere else I should look?

I’m out of ideas. But the WPA looks neat so I’ll try it on mine tomorrow if you haven’t figured it out by then.

This isn’t the right solution for this, but I am curious what happens with that if you uninstall the Realtek audio driver and use the Windows default HDA driver.

Thanks, I’ll give that a shot!

1 Like

Yes, that seems to have worked!

It is still red, but 1%/h is much more in line with expectations! This is the cause of the red for those curious:

EDIT: Another, longer session (2.6%/h):

8 Likes

Thanks for helping debug this! We’ll dig in on the Realtek audio driver to see if we can replicate this and understand what is happening.

10 Likes

So I did a clean install of Windows 10 21H1 on a 512GB AData SX8200 Pro (hardware revision unknown) then installed the Framework driver package (2021_07_08) and the latest ADK.

Running SleepStudy resulted in a 5% drop in battery after an hour with the same Realtek HD Audio as the top offender. Switching to the Microsoft audio driver removed the HD Audio as an offender.

Weirdly though, I’m still seeing a 5% drop per hour even though the top offenders list looks all green now. It’s consistent too across multiple tries.

I think maybe the culprit is the SX8200 Pro from what I can glean from the WPA trace analysis. It spends almost the entire sleep cycle at D0 (normal power state) instead of dropping to a low power state. But maybe that’s normal, I don’t have another SSD to try a Windows install on.

4 Likes

Adding some more datapoints here from my own anecdotal experience.

  • Overnight, my laptop (unplugged, lid closed) was presumably in sleep mode. Upon waking, I discovered the bottom of the laptop was quite warm and the battery had completely discharged. powercfg /SleepStudy confirmed that the laptop was active for 6.5 hours and discharged 96%. I haven’t had a chance to dig into this deeper yet.
  • powercfg /a reports the same sleep states for me as @feesh mentioned here. I also have the Framework-provided drivers installed.
  • At times, I’ve noticed that the laptop wakes from sleep slowly. It could take a minute of “pulsing power button” activity before the screen awakens.
  • At other times, I’ve noticed some applications (Chrome) seemingly being responsive, but failing to render / refresh for at least 30s. This only happens after a wake from sleep.

P.S. I’m happy to open a separate thread, but it feels appropriate to group these here.

5 Likes