First Agent Setup
Flash an ESP32, provision it onto Wi-Fi, register it with the relay, and wake your first computer through WakeLink.
What You Need
| Item | Requirement |
|---|---|
ESP32 board | ESP32-WROOM-32, ESP32-DevKitC, or similar |
USB cable | Data-capable cable for flashing |
Computer | Python 3.7+ and pip |
WakeLink account | |
2.4 GHz Wi-Fi | ESP32 provisioning uses 2.4 GHz networks |
Target computer | Wake-on-LAN enabled in BIOS/UEFI and OS |
Enable Wake-on-LAN on the target computer first. On Windows, open Device Manager → Network Adapters → Properties → Power Management and allow the adapter to wake the system. In BIOS/UEFI, look for Wake on LAN, Power On By PCI-E, or similar labels.
1Install esptool
pip install esptool
esptool.py versionUse pip3 instead of pip if your system requires it.
2Download the Firmware
- Open the Downloads page
- Download
wakelink-esp32.bin - Save it somewhere easy to find
Verify the SHA-256 checksum shown on the downloads page before flashing a production device.
3Flash the Firmware
# Linux / macOS
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 460800 write_flash 0x0 wakelink-esp32.bin
# Windows
esptool.py --chip esp32 --port COM3 --baud 460800 write_flash 0x0 wakelink-esp32.binIf the board stalls at Connecting..., hold BOOT (or IO0) until the
flash starts.
4Connect to the Setup Hotspot
After the first boot, the ESP32 starts AP provisioning mode.
- Connect to the Wi-Fi network named
WakeLink-Setup - Use the AP password shown on the serial console banner
- Open
http://192.168.4.1in a browser, or continue in the Android setup wizard - Expect the network to say No internet while provisioning
5Configure Provisioning
| Field | Description |
|---|---|
WiFi SSID | Your 2.4 GHz network name |
WiFi Password | Password for that network |
Server Host | Relay hostname, for example wakelink-project.org |
Server Port | Usually 443 |
Use TLS | Enable WSS for normal deployments |
Agent ID | The identifier you registered in the dashboard |
Agent Token | The shared EWSP secret exported for that agent |
API Token | The per-device relay token (`wld_…`) used for firmware WebSocket authentication |
The exported agent config gives you the relay URL, agent ID, the EWSP
agent_token, and the per-device relay token expected in the portal's
API Token field.
6Add the Computer to WakeLink
- Open the Dashboard
- Click Add Device
- Enter the target computer's MAC address and a friendly name
- Select the ESP32 agent you just provisioned
- Save the device
# Windows
ipconfig /all
# Linux
ip link show eth0
# or: cat /sys/class/net/eth0/address
# macOS
ifconfig en0 | grep ether7Send Your First Wake Command
Android app
- Open WakeLink on your phone
- Sign in
- Tap Wake next to the device
CLI
wakelink add desk --ip 192.168.1.50 --token "$AGENT_TOKEN"
wakelink wake desk AA:BB:CC:DD:EE:FFWake commands are issued by the client and encrypted end-to-end with EWSP before being forwarded through the relay.
Common Issues
ESP32 does not appear as a USB device
Install the CP2102 or CH340 USB-UART driver used by your development board.
Setup hotspot is not visible
Open a serial monitor at 115200 baud and check the provisioning banner. If the board already has configuration saved, perform a factory reset and boot again.
Agent shows offline in the dashboard
Verify Wi-Fi credentials, relay host and port, and the provisioned token values. The LED should be solid once the board is connected.
Computer does not wake
Re-check BIOS/UEFI Wake-on-LAN settings, OS adapter power settings, and the MAC address saved in WakeLink.