Saintummers Projekte

Wake on Lan mit Infrarot Fernbedienung

++++ Diese Seite ist auch in Englisch vorhanden ++++

Damit kann ein PC welcher im Keller steht, per LAN (Ethernet) fern eingeschaltet werden. Der Befehl zum Einschalten erfolgt per Taste an einer Infrarot Fernbedienung. Der PC dient als Medienserver, das HDMI Kabel und das Infrarotsignal wird per einem handelsüblichen HDMI, Infra Extender über die LAN Verkabelung zum TV Gerät weitergeleitet. Hier wird eine HDMI/IR Extender over CAT6 verwendet. Die Art der Leitungsverlängerung ist für die Wake On Lan Lösung egal. In die eine Richtung wird das HDMI Signal zum TV geleitet, in die andere Richtung das IR Signal zum PC.

Überblick IR_WOL

Als CPU wird ein Atmega328 verwendet, welcher mit einem IR-Empfänger und einem Ethernet Controller verbunden ist.

Schaltung

Schaltung

Der IR Epfänger TSOP4838 liegt an Pin4 der CPU. An PIN6 eine LED, die bei der erkannten Taste kurz aufleuchtet. An PIN26 eine LED welche im Betrieb blinkt. Damit sieht man dass die CPU lauft. Das Ethernet Modul W5100 hängt an den PINS 16,17,18,19 und 1. Hier sieht man dass der W5100 und der ISP nicht gleichzeitig verwendet werden können. Wenn die CPU programmiert wird, den W5100 ziehen. Die Drossel zwischen PIN20 und PIN7 kann hier durch 1K Widerstand ersetzt werden, da in diesem Projekt keine ADC Funktion verwendet wird. Hier am Print direkt verbunden.

Infrarot Sender und Empfänger

In einem kleinen Kunststoffkästchen sind der IR-RX Empfänger des PCs, der TSOP4838 (RX) des IRWOLs und der IR Sender (TX) des HDMI/IR Repeaters untergebracht.
TSOP4838 ----\
IR-RX--------------------- IR TX
IR TX sendet an IR-RX und TSOP4838

Alugehäuse mit Print , Atmega328 und W5100 Modul

Komplett

Der Nachbau ist nur für erfahrene Elektroniker gedacht. Es wird hier mit Netzspannung gearbeitet. Das Gehäuse muss am Schutzleiter angeschlossen werden. Betrieb nur an dreipoliger Schukosteckdose möglich. Die Sicherheitsbestimmungen sind einzuhalten! 

Software für dieses Projekt

Danke an die Arduino Gemeinschaft für die Softwareteile welche hier verwendet werden können.
Hier ist meine Arduino Quelldatei zum herunterladen
Die Libraries von Arduino.cc und Github für Ethernet und IR
Ethernet Version 1.1.2 von Arduino.cc
Arduino-IRremote von Github

Die Software lauft in einer Schleife ob die Infrarot Taste erkannt wird. Die Software wird auch über einen Watchdog überwacht. Zur Kontrolle blinkt eine LED langsam per Timerinterrupt. Wenn die definierte Taste erkannt wird, dann wird das Wake ON LAN Paket an der Ethernetschnttstelle ausgesendet. Der PC schaltet ein. Die Schleife lauft weiter. Software Anpassen: IRCode der Fernbedienungstaste und MAC Adresse vom PC eintragen. Es wird die "AIRremote.h" für den IR Empfänger benötigt.
IN Zeile 35 die MACAdresse ihres PC eintragen: static byte g_TargetMacAddress[] = {0x00,0x19,0x99,0xAE,0x5E,0xE3}; //PC, welcher gestartet wird per WOL
Zeile 137 die Auskommentierung "//" entfernen. // Serial.println(rxir); //Zeigt IRCode an, sonst immer auskommentiert.
In der Seriellen Konsole der Arduino IDE den Tastencode feststellen und in Zeile 20 hier eintragen. String mytaste = "1416658004"; Hier ist nur der Code, welcher bei drücken der Taste mehrfach erkannt wird, interessant. Beginn und Ende Codes sind hier unerheblich. Testaufbau hier der Code einer Taste, welche lange gedrückt wird. Diesen Wert in die Variable "mytaste" übernehmen.

In Zeile 137 die "//" Auskommentierungen wieder einfügen, kompilieren, als "HEX-mit Bootloader" exportieren und per ISP in den Atmgea38 flashen, oder in den UNO laden.

Zum Testen der Software ist ein Arduino UNO sehr geeignet. Auch für das Austesten der MACAdresse und der IR Taste
Testaufbau

Ethernet Library für W5100

Wenn beim Compilieren mit aktueller, neueren Arduino IDE ein Fehler
<utility/socket.h> no such file or directory bei der Zeile #include <utility/socket.h> ausgegeben wird.
muss in der IDE die ältere Ethernet Unterstützung für das Modul W5100 nachinstalliert werden. Die heute aktuelle Ethernet Library Version 2.0.0 unterstützt die Module W5200 und W5500, aber nicht das W5100.
Für das W5100 muss die ältere Ethernet Version 1.1.2 installiert werden.
In der IDE unter - SKETCH - Include Library - Manage Libraries kann die Library installiert werden. Ethernet 1.1.2
Mit der Version 1.1.2 kann die Software nun ohne Fehlermeldung compiliert werden.

ACHTUNG
Es kann immer nur eine Ethernet Library aktiv installiert sein - damit kann das Wechseln der Version zu 2.0.0 und zurück notwendig werden. Für das eigenen Archiv sollte eine Kopie der Ethernet V 1.1.2 als Zip File abgelegt werden. Über der Listbox mit den angebotenen Versionen der Ethernet Library ist ein Link More info angeführt.
Von dort können die Libs als Zip von einer Liste unter " Releases " runtergeladen werden. Es ist ratsam eine Kopie der Ethernet 1.1.2 zu der Programmquelle im eigenen Projekt Ordner abzulegen. Das gilt eigentlich für ALLE Libraries welche man in einem Projekt verwendet.

Platinenlayout

hier herunter ladbares PCB-Layout als Pdf

Bestückungsplan

Bestückungsplan

H.Stummer Dateidatum: 12.06.2022


Zum Seitenanfang


Besucherzaehler