I am using Ubuntu Kinetic (22.10) on my Framework 12th Gen. I have it configured to do wake on WLAN responding only to the “magic packet” as follows:
- 802-11-wireless.wake-on-wlan is set to “0x8 (magic)” in NetworkManager for my home WiFi connection.
- WOL_DISABLE is set to N in /etc/tlp.conf.
With these two settings in place I am able to use the etherwake tool to send a magic packet to my laptop from another Linux machine on my network, and it wakes up… sometimes. And then sometimes it just doesn’t. For example:
- My laptop, on battery power, put itself to sleep at 10:13pm last night after it was idle for 20 minutes, as I have it configured to do.
- I sent it a magic packet today at around 2:00pm and it didn’t wake up.
- I woke it by hand by opening the lid, then suspended it by explicitly selecting the Suspend GNOME menu command, then sent it a magic packet and it woke back up.
- I waited a half hour for it to pit itself to sleep and then sent it a magic packet and it woke itself up.
I am not sure why the magic packet worked the second and third time today but didn’t work the first time.
The only possibility I can think of is that there may be some sort of deep sleep state that gets entered after a long period of being asleep, such that it was in that deep sleep state after being suspended all night but never entered it in the shorter periods it was suspended today. If so, is there anyway to disable that deep sleep, and if I do that then will that have a significant impact on battery life?
Or is there some other reason I’m missing for why wake on WLAN might work only intermittently?