First, you need to have WOL enabled in bios. See What Is Wake-on-LAN, and How Do I Enable It? for instructions.

Second, you need Wake on Lan app on Android to wake up your PC’s.

As the PC you want to control is turned on, open the Android app and scan the network.

Add the desired PC (MAC address) to the bookmark list.

Suspend the PC with:

sudo systemctl suspend

Now, from Android phone, click to Wake on LAN your PC.

See demo video:

Warning!

WOL is not working through a OpenVPN TUN setup, need more documenting how to make this work.

Future work:

  • #1 if option above not working, make a WOL server so that you can remote wake up pc from the internet through VPN
  • #2 make WOL work even if your BIOS is not capable (by using a router/raspberry GPIO port connected to PC power switch)