Sitemap
Python in Plain English

New Python content every day. Follow to join our 3.5M+ monthly readers.

Member-only story

Raspberry MicroPython Wake-on-LAN Button for a Linux Server

--

Figure 1 architecture is very simple, an aorus gigabit motherboard pc, or any pc that supports wol, raspberry pico , and your celphone.

If you’re not a Medium Member I gotcha click here

Turn a Raspberry Pi Pico W into a tiny web-powered power button that can wake your Gigabyte AORUS-based Ubuntu PC over the network.

Wake-on-LAN (WoL) is one of those classic PC tricks that feels almost magical: you send a specially crafted “magic packet” to your powered‑off machine and — if everything is configured correctly — the fans spin up and the OS boots like you pressed the power button.

In this guide we’ll build a dedicated WoL helper using a Raspberry Pi Pico W running MicroPython. The Pico W connects to your Wi‑Fi, listens for a simple HTTP request, and then sends a WoL magic packet (optionally with a SecureOn password) to wake an Ubuntu desktop with a Gigabyte AORUS motherboard.

Along the way we’ll:

  • Flash MicroPython onto the Pico W.
  • Talk to the board with Thonny.
  • Configure WoL correctly on Ubuntu with NetworkManager (including a WoL password).
  • Write a tiny MicroPython web service that exposes `/` and `/wake?token=…` endpoints.

By the end you’ll have a URL you can hit from your browser or phone to wake your PC — no more crawling under the desk to mash the power button.

--

--

Tomas Suarez
Tomas Suarez

Written by Tomas Suarez

Cloud & K8s by day. Drone builder by night. I build in public, break things in Python/Linux/local LLMs/IoT, and share lessons so other builders can ship faster.

Python in Plain English
Python in Plain English

Published in Python in Plain English

New Python content every day. Follow to join our 3.5M+ monthly readers.