IR via RJ45 Port 2001 zum VDR Server

  • Hat jemand schon mal so ein Teil gebastelt oder irgendwo gesehen wo man das Kaufen kann ?




    Auszug aus der c't 7/03 196


    Ferngesteuert
    Nachdem das Fernsehbild des Video-Servers auf dem Schirm erscheint, braucht man natürlich noch einen Rückkanal, um die Signale der Fernbedienung an den Server zu übermitteln. Schließlich will man Sender wechseln, Videos abrufen oder Aufnahmen programmieren. Dazu muss in räumlicher Nähe des Fernsehers ein vernetzter PC vorhanden sein. Dieser wird mit einem selbst gebastelten Infrarot-Empfänger an einem seriellen Port ausgestattet [1]. Bis zu fünf Meter konnten wir bei unseren Versuchen mit seriellen Kabeln problemlos überbrücken. Auf dem Rechner läuft LIRC beziehungsweise WinLIRC, das die Infrarot-Signale dekodiert. WinLIRC hatte jedoch in unseren Versuchen mit modernen Fernbedienungen häufig Probleme.
    Diese Lösung ist natürlich unbefriedigend. Denn man braucht in der Nähe jedes TV-Geräts einen PC. Der muss zum Fernsehen eingeschaltet sein und produziert dann womöglich auch noch Lärm. Deswegen haben wir eine elegantere Lösung gesucht und gefunden: Ein nur streichholzschachtelgroßes Embedded-Device mit Netzwerkanschluss und Infrarot-Empfänger sendet die empfangenen Signale via UDP an den Server. Damit braucht man nur noch einen Netzwerkanschluss in der Nähe des Fernsehers. Ein Prototyp arbeitet bei uns mittlerweile seit zwei Monaten zufrieden stellend und wird demnächst als c't-Projekt vorgestellt.
    Die Steuerung des Videorecorders erfolgt über das lokale Netz. VDR lässt sich auf dem TCP-Port 2001 über das speziell dafür entworfene Simple Video Recorder Protocoll (SVDRP) fernsteuern. SVDRP funktioniert ähnlich wie SMTP und definiert einfache Befehle, um beispielsweise den aktuellen TV-Kanal oder die Lautstärke zu ändern. Der wichtigste Befehl für unsere Zwecke ist HITK. Über ihn kann man VDR mitteilen, dass der Benutzer eine bestimmte Taste gedrückt hat.
    Damit müssen die Tasten-Codes nur noch vom PC auf den TCP-Port des Servers übermittelt werden. Diese Aufgabe übernimmt ein kleines, selbst geschriebenes Perl-Skript, das die Ausgabe von LIRC einliest und als HITK-Kommando an den Server überträgt. Mit dem Embedded-Gerät wäre dieser Umweg zwar eigentlich nicht mehr notwendig, denn es sendet seine UDP-Pakete an eine LIRC-Instanz auf dem Server. Dessen Ausgabe kann VDR dann selbst auslesen.
    Trotzdem läuft auch hier bei uns das lirc2vdr-Skript als Vermittler zwischen LIRC und VDR. Denn das Skript hat im Laufe der Zeit einige nützliche Zusatzfunktionen bekommen, auf die wir nicht mehr verzichten wollen. So reagiert es auf bestimmte Tasten mit vordefinierten Aktionen und fährt beispielsweise den PC herunter oder startet VDR neu. Wir werden das Skript in einer der kommenden Ausgaben detailliert vorstellen.

    Diseqc 9/8 Astra+Hotbird
    Asus P4C800-E Deluxe mit M740@1,2Ghz 1GB RAM 60GB + 500GB Video Teac DVD-ROM VDR1.4.7 Nexus2.2 + SS2 2.6C
    Rebach Gehäuse von 2004, Epia MII12000 Seagate 320GB TT1.5 SS2 2.6 Forton 145W OpenSuSe 10.2 Pioneer DVD-105 VDR1.4.7 OneForAll URC-8040 KS0108 Display

  • Danke,


    hab auch gerade gesehen das im lirc0.6.6 dazu auch schon was drin is :D

    Diseqc 9/8 Astra+Hotbird
    Asus P4C800-E Deluxe mit M740@1,2Ghz 1GB RAM 60GB + 500GB Video Teac DVD-ROM VDR1.4.7 Nexus2.2 + SS2 2.6C
    Rebach Gehäuse von 2004, Epia MII12000 Seagate 320GB TT1.5 SS2 2.6 Forton 145W OpenSuSe 10.2 Pioneer DVD-105 VDR1.4.7 OneForAll URC-8040 KS0108 Display

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!