This is an intermediate device to achieve Wake-On-WAN without port forwarding, this is a solution for devices in networks behind a firewall, NAT and/or carrier-grade NAT. In most cases, ISPs does not provide public IP for home users.
Wake-On-LAN (WOL) packet forwarder, receive messages encoded in JSON via MQTT, and generate WakeOnLAN packets based on the received MAC Address and send the WOL packet to the Local-Area-Network. The second approach is to check device status which runs ICMP ping to device static IP and send-back message with the ping status.
- ESP32 module
- Visual Studio Code (For programming the chip)
- PlatformIO IDE extension
- Visual Studio Code (For programming the chip)
- Account from Amazon Web Services (AWS)
- MQTT Provider: Amazon IoT [Free Tier - 12 MONTHS FREE]
- Authentication: Amazon Cognito [Free Tier - ALWAYS FREE]
- Wake App
- MAC Address (required)
- Wake-On-LAN enabled (required)
- Deafult to port 9 (port 7 supported)
- Static IP to retrieve device status via ICMP ping (optional, supported)
- SecureOn password (optional, supported)
Application to add devices list and send message to wake/retrieve status. Built with Ionic 4 & Angular 8. Utilizing AWS Amplify for MQTT messaging.
Website: Wake App
Android: Google Play - Wake App
iOS: Not available at the moment
Arduino MQTT by 256dpi
Arduino Json by bblanchon
WakeOnLan by a7md0
ESP32Ping by Marian Craciunescu
Wake Device Copyright (C) 2019 Ahmed Al-Qaidom
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.