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 | Create one for free |
| 2.4 GHz Wi-Fi | ESP32 provisioning uses 2.4 GHz networks |
| Target computer | Wake-on-LAN enabled in BIOS/UEFI and OS |
Note
Enable Wake-on-LAN on the target computer first. On Windows, open agent 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.
1 Install esptool
pip install esptool
esptool.py version Use pip3 instead of pip if your system requires it. 2 Download the Firmware
- Open the Downloads page
- Download
wakelink-esp32.bin - Save it somewhere easy to find
Note
Verify the SHA-256 checksum shown on the downloads page before flashing a production agent.
3 Flash 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.bin If the board stalls at Connecting..., hold BOOT (or IO0) until the flash starts. 4 Connect 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
5 Configure Provisioning
The browser portal and Android setup wizard write the same configuration values.
Click Save & Connect. The agent stores the configuration in NVS, reboots, connects to Wi-Fi, and then opens its relay session.
| 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 | Hardware-generated identifier (shown in the setup portal banner) |
| E2E Secret | The shared EWSP agent_token generated by the setup wizard |
| Relay Token | The per-agent relay token (wla_…) issued by the dashboard |
Note
The setup wizard discovers the Agent ID from the hardware, registers it with the relay to receive a Relay Token (
wla_...), and generates a unique E2E Secret (agent_token) locally. All three values must be saved to the agent. 6 Add the Computer to WakeLink
- Open the Dashboard
- Click Add agent
- Enter the target computer's MAC address and a friendly name
- Select the ESP32 agent you just provisioned
- Save the agent
# Windows
ipconfig /all
# Linux
ip link show eth0
# or: cat /sys/class/net/eth0/address
# macOS
ifconfig en0 | grep ether7 Send Your First Wake Command
Android app
- Open WakeLink on your phone
- Sign in
- Tap Wake next to the agent
CLI
wakelink add desk --ip 192.168.1.50 --token "$AGENT_TOKEN"
wakelink wake desk AA:BB:CC:DD:EE:FF Wake 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 agent
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.