Wake-on-LAN-Nachrüstung mit ESP8266
Das Wake-on-LAN unseres neuen™ Mediacenters funktioniert sehr unzuverlässig. Daher haben wir eine netzwerkbasierte Boot-Signalisierung mittels eines ESP8266 nachgerüstet.
Idee
- Ein ESP-01 (minimalistisches ESP8266-Board, haben wir zu viele von rumliegen) wird zwischen den Powerbutton und das Mainboard gehängt.
- Auf dem ESP läuft ein HTTP-Server, der bei einem
POST /wol
einen Knopfdruck auf den Powerbutton simuliert, indem die entsprechende Leitung kurzzeitig mit GND kurzgeschlossen wird. - Damit kann das Mediacenter sowohl gestartet, als auch heruntergefahren werden.
Umsetzung
Für den Einbau des ESP-01 haben wir ein kleines Adapter-PCB entworfen (Bilder 1,2,3).
Leider haben wir festgestellt, dass alle beim ESP-01-Board verfügbaren Pins beim Power-Up mindestens einmal den logischen Zustand wechseln. Das führte dazu, dass das Mediacenter immer automatisch gestartet wurde, sobald der ESP startete. Um dieses Problem zu umgehen, haben wir das ESP-01-Board modifiziert, um anstatt des GPIO2-Pins den GPIO4-Pin herauszuführen. Dieser bleibt während dem Start dauerhaft auf LOW, und ist am ESP8266 zum Löten einfach zugänglich (Bild 4).
Danach haben wir den ESP und das Adapter-PCB grosszügig mit Heissleim isoliert (Bild 5), um ihn sicher im Gehäuse verbauen zu können (Bild 6).
Code
Unter https://git.kabelsalat.ch/ccc-basel/espwol finden sich das KiCad-Projekt für die Adapterplatine sowie ein PlatformIO-Projekt mit dem ESP8266-Code.