How to prevent Windows 10 waking from sleep when traveling in bag?
This has worked for me so far. Go to:
Control Panel\Hardware and Sound\Power Options\Edit Plan Settings
Click "Change advanced power settings"
Go to "Sleep->Allow wake timers" and change the setting to Disable.
UPDATE: As Erik pointed out, there can be two options:
Disable them both.
UPDATE #2:
In addition to wake timers, peripheral devices can also wake your computer. See Rosdi's answer for network interfaces. It reminded me of something I had to change recently as my computer was waking again when peripherals were attached. First I disconnected the mouse, but it turned out to be the keyboard.
Open the Device Manager and expand Keyboards - or whatever your problematic device category is - and find the suspect, e.g. "HID Keyboard Device". Right-click that and select Properties, then go to the Power Management tab and uncheck "Allow this device to wake the computer".
On WIN 10 there is an option in Local Group Policy Editor to set up it easily:
- Search:
Local Group Policy Editor
(you can launchgpedit.msc
) - Navigate to:
Computer Configuration / Administrative Templates / Windows Components / Windows Update
- Double click on:
Enabling Windows Update Power Management to automatically wake up the system to install scheduled updates
and set it to "Disabled".
Figure for Local Group Policy Editor setting:
After upgrading to Windows 10, the computer in my bedroom kept waking me up at 3AM. Disabling Wake the computer
on the Microsoft\Windows\UpdateOrchestrator\Reboot
scheduled task didn't help. Windows turns the flag back on periodically. Even disabling "Disable wake timers" in Power Options didn't help. The UpdateOrchestrator kept orchestrating midnight alarms.
As a solution I've added a powershell script that removes wake settings every hour.
To allow running powershell scripts: run powershell as administrator, and run:
Set-ExecutionPolicy RemoteSigned
Create a file called "disable_wakejobs.ps1" that contains one line of code:
Get-ScheduledTask | ? {$_.Settings.WakeToRun -eq $true -and $_.State -ne "Disabled"} | % {$_.Settings.WakeToRun = $false; Set-ScheduledTask $_}
Open Task Scheduler and create a scheduled task.
- In the "General" tab, set the user account to "SYSTEM" user (or you'll have to update a saved password every time you change your own password.)
- In the "Triggers" tab, create a trigger that runs the job daily and repeat every hour.
- In the "Actions" tab, create an action to "Start a program", with "Program/script" set to "PowerShell.exe", and arguments
-Command "c:\tools\disable_wakejobs.ps1"
(change the path to where you storeddisable_wakejobs.ps1
in step 2.)
The PowerShell commands come from this blog post by Reidar Johansen.