Wake on LAN (WoL) requires multiple magic packets to wake


jeffshead

Active member
Local time
3:29 AM
Posts
13
OS
Win11

Background:

Before replacing my PC (Optiplex 7070 Micro), I performed an in-place upgrade from Windows Enterprise 11 23H2 to IoT LTSC 24H2. Tested it for a few days and all seemed well.

I made a backup and did a bare metal restore onto a newer Optiplex 7000 Micro. All seems good except for how Modern Standby handles sleep/wake. I'm assuming (don't know for sure) that my original system (Optiplex 7070) was not using Modern Standby.

Problem:

I have to send the wake command multiple times if I want to manually wake the new computer. I've never encountered this on other systems. Also, I have a couple of scheduled tasks that are supposed to wake the PC but they rarely wake the PC at the specified times (12:25 AM) and what's really odd is that the tasks are usually performed at 3:00 AM. I do not have any tasks scheduled for 3:00 AM so something else appears to be waking the computer.

Everything worked flawlessly on the Optiplex 7070, for years. I don't know if the culprit is the NIC, Modern Standby or both on the Optiplex 7000.

I have the latest BIOS and drivers from Dell. I've even installed the latest NIC driver directly from Intel but I see no difference. I have gone through and turned off every power saving feature that I can find in the BIOS, Windows Power Settings and in the NIC settings.

In the BIOS, WoL, Intel Speed Step and CPU C-state are enabled. I've disabled Deep Sleep, ASPM and Intel Speed Shift.

Power plan settings:
1720876544408.png

Intel I219-LM NIC settings (Doesn't have a Power Management tab):
1720876629986.png

There is no power management tab on the NIC properties, in the Device Manager, like you have with older versions of Windows 11.

Fast Start Up (HiberbootEnabled) is not even an option so it is disabled:
Code:
PS C:\Users\Jeff\Desktop> (GP "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power")


AcPolicy                         : {1, 0, 0, 0...}
AcProcessorPolicy                : {1, 0, 0, 0...}
DcPolicy                         : {1, 0, 0, 0...}
DcProcessorPolicy                : {1, 0, 0, 0...}
HBFlagsSwitch                    : 1
PowerSettingProfile              : 0
SleepStudyDeviceAccountingLevel  : 4
WatchdogResumeTimeout            : 120
WatchdogSleepTimeout             : 300
HiberbootEnabled                 : 0
POSTTime                         : 10058
BootmgrUserInputTime             : 0
FwPOSTTime                       : 9999
SystemPowerPolicy                : {1, 0, 0, 0...}
HibernateEnabled                 : 0
TotalResumeTime                  : 5211
ResumeBootMgrTime                : 0
ResumeAppTime                    : 0
ResumeAppStartTimestamp          : 0
ResumeLibraryInitTime            : 0
ResumeInitTime                   : 0
ResumeHiberFileTime              : 0
ResumeRestoreImageStartTimestamp : 0
ResumeIoTime                     : 0
ResumeDecompressTime             : 0
ResumeMapTime                    : 0
ResumeUnmapTime                  : 0
ResumeUserInOutTime              : 0
ResumeAllocateTime               : 0
ResumeKernelSwitchTimestamp      : 0
KernelReturnFromHandlerTimestamp : 1092
SleeperThreadEndTimestamp        : 1092
TimeStampCounterAtSwitchTime     : 0
KernelReturnSystemPowerState     : 1493
HiberHiberFileTime               : 0
HiberInitTime                    : 0
HiberSharedBufferTime            : 0
TotalHibernateTime               : 0
KernelResumeHiberFileTime        : 0
KernelResumeInitTime             : 0
KernelResumeSharedBufferTime     : 0
DeviceResumeTime                 : 400
KernelAnimationTime              : 0
KernelPagesProcessed             : 0
KernelPagesWritten               : 0
BootPagesProcessed               : 0
BootPagesWritten                 : 0
HiberWriteRate                   : 0
HiberCompressRate                : 0
ResumeReadRate                   : 0
ResumeDecompressRate             : 0
FileRuns                         : 0
NoMultiStageResumeReason         : 0
MaxHuffRatio                     : 0
SecurePagesProcessed             : 0
HiberChecksumTime                : 0
HiberChecksumIoTime              : 0
ResumeChecksumTime               : 0
ResumeChecksumIoTime             : 0
KernelChecksumTime               : 0
KernelChecksumIoTime             : 0
WinresumeExitTimestamp           : 0
TcbLoaderStartTimestamp          : 0
TcbLoaderEndTimestamp            : 0
RemappedPageLookupCycles         : 0
TcbLaunchPrepareCycles           : 0
TcbLaunchPrepareDataCycles       : 0
DecryptVsmPagesPhase0Cycles      : 0
DecryptVsmPagesPhase1Cycles      : 0
DecryptVsmPagesPhase2Cycles      : 0
TcbLoaderAuthenticateCycles      : 0
TcbLoaderDecryptCycles           : 0
TcbLoaderValidateCycles          : 0
KernelResumeIoCpuTime            : 0
HiberIoCpuTime                   : 0
ResumeCompleteTimestamp          : 16353531
PSPath                           : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Cont
                                   rol\Session Manager\Power
PSParentPath                     : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Cont
                                   rol\Session Manager
PSChildName                      : Power
PSDrive                          : HKLM
PSProvider                       : Microsoft.PowerShell.Core\Registry



PS C:\Users\Jeff\Desktop>

Available sleep states:
Code:
PS C:\Users\Jeff\Desktop> powercfg -a
The following sleep states are available on this system:
    Standby (S0 Low Power Idle) Network Connected

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)
        The system firmware does not support this standby state.
        This standby state is disabled when S0 low power idle is supported.

    Hibernate
        Hibernation has not been enabled.

    Hybrid Sleep
        Standby (S3) is not available.
        Hibernation is not available.

    Fast Startup
        Hibernation is not available.

PS C:\Users\Jeff\Desktop>

Code:
PS C:\Users\Jeff\Desktop> powercfg -devicequery wake_armed
HID-compliant mouse
HID Keyboard Device (003)

PS C:\Users\Jeff\Desktop>

This is a micro PC so I can't just throw another NIC in and test. I don't know what else to do to get things working like they were. Anyone have an ideas?
 
Last edited:

My Computer

System One

  • OS
    Win11

My Computers

System One System Two

  • OS
    Windows 11 Pro 23H2
    Computer type
    PC/Desktop
    Manufacturer/Model
    Intel NUC12WSHi7
    CPU
    12th Gen Intel Core i7-1260P, 2100 MHz
    Motherboard
    NUC12WSBi7
    Memory
    64 GB
    Graphics Card(s)
    Intel Iris Xe
    Sound Card
    built-in Realtek HD audio
    Monitor(s) Displays
    Dell U3219Q
    Screen Resolution
    3840x2160 @ 60Hz
    Hard Drives
    Samsung SSD 990 PRO 1TB
    Keyboard
    CODE 104-Key Mechanical Keyboard with Cherry MX Clears
  • Operating System
    Linux Mint 21.2 (Cinnamon)
    Computer type
    PC/Desktop
    Manufacturer/Model
    Intel NUC8i5BEH
    CPU
    Intel Core i5-8259U CPU @ 2.30GHz
    Memory
    32 GB
    Graphics card(s)
    Iris Plus 655
    Keyboard
    CODE 104-Key Mechanical Keyboard - Cherry MX Clear
I performed some different keyword searches and found some info that indicates Modern Standby is not a sleep state so setting tasks to wake the computer will fail. Now it makes since to me why tasks triggered by wake events are also being triggered just by the display being turned back on when it was turned off based on the power config settings.

Microsoft really should have made it apparent to the masses that Modern Standby breaks scheduled tasks that are triggered by wake and by wake events. This is a step backwards from S3 if you ask me.

Before Modern Standby, I had my display set to turn off at 15 minutes and have the computer sleep in 60 minutes. This worked well for me because I didn't have to login again unless the computer went to sleep. Also, I had a script in the startup folder that would reconnect my remote SSH connections at wake and system boot. Now with Modern Standby, the only way that I have been able to reconnect my remote SSH connections at "wake" is to have a task based on a wake event. Unfortunately, because Modern Standby is an idle state, not a sleep state, those tasks are also ran when the display is turned back on because to Windows, there's no difference between the display being turned off, in accordance to the power config settings, and "sleep". What a mess! MS "simplified" something that shouldn't have been simplified. All they've accomplished, from my view point, is removed a feature.
 
Last edited:

My Computer

System One

  • OS
    Win11
Back
Top Bottom