Is your Surface not entering sleep mode and draining your battery?
What could be the problem?
Remember my post about Surface 2 4G LTE – also my favorite Surface) has been having power\battery drain problems.
I did all the usual stuff to test it, see Tim’s post on how to troubleshoot Surface battery drain problems but nothing clear was coming out of my tests. I even refreshed my baby Surface while in a hotel room (and discovered the OneDrive Sync problem, I talked about in Is OneDrive Sync Hogging Your WiFi Connection?) – still no luck.
So, by the time I went to the Microsoft Retail Store, I was ready to throw in the towel and just get a new Surface 2. Well, I’m glad I didn’t because I finally figured out the problem – let me tell you about it and perhaps if you’re seeing the same thing, it will help you fix your device, as well.
As a last, desperate effort to avoid turning in my baby Surface to Microsoft, I decided to do a little more research on the powercfg command and see what else it can tell me. It turns out that this command is quite powerful and has a ton of “switches” that allow you to find out more about your device’s power consumption than I could have imagined. If you want to see the full list do the following:
From Command Prompt, type:
You will get something similar to the below list (and it goes on and on and on):
The one that caught my eye was /requests, which shows all power requests from drivers and applications.
Hmmmm…. I thought….that may be useful.
And indeed it was, it finally fixed my problem!
Here is what I did (and what you can do) to figure out why my (or your) Surface does not sleep:
1. Open Command Prompt with elevated privileges
In Desktop Mode, right-click on the Start Button
Chose Command Prompt (Admin)
2. Type the following (exactly, including spaces – you can use a “/” or a “-” before the switch):
3. Examine the results for any drivers or apps that are making requests.In my case, the Nvidia Tegra Audio driver was constantly being used. This was curious as I was not doing anything with voice or audio on my Surface and hadn’t for quite some time. I restarted my Surface and re-ran the command above and got the same result. This told me that there was definitely something wonky about this driver.
4. The fix: issue the following command to tell the system to ignore all power requests made by the audio driver
powercfg /requestsoverride DRIVER nvaenum System
TADA! – That fixed my problem!
You can reverse the last step by issuing this command:
powercfg /requestsoverride DRIVER nvaenum
And you can view all previously ignored processes by running:
That was it. That is all that it took for my baby Surface to happily sleep again and stop draining my battery. Had I given up on it and taken it to the Microsoft, it would have been for naught because there was nothing really wrong with my device. The problem was a run-away driver in Windows 8+RT, something that is actually pretty common in the Windows environment.
In case you’re wondering, I did test the audio after the fix and while playing a song I ran the powercfg /requests command and the driver did reappear. However, as soon as I stopped playing it, the driver no longer showed – this is normal behavior.
If you’re having similar battery drain problems and your Surface does not sleep, try going through the same steps. You may have a different driver or application draining your battery. If so, simply substitute it for the nvaenum driver I had.
I hope this helps you figure out what’s going on if your Surface battery drain.