
Ich habe zwei HP-Fernbedienungen, eine ist eine riesige Fernbedienung für den TV-Tuner und das Media Center, und die andere ist eine winzige Fernbedienung, mit der ich nur ein Media Center steuere.
Ist es möglich, sie mit LIRC unter Ubuntu (11.04) zum Laufen zu bringen? Ich weiß, dass zumindest einer von ihnen erkannt wird, da ich mit einer der Tasten den Bildschirm ausschalten kann.
Was benötige ich für vollen Support? (Der Laptop ist ein HP DV7 1020us, aber die Fernbedienungen sind in fast allen HP-Laptops aus dieser Zeit enthalten.)
Antwort1
LIRC unterstützt Fernbedienungen im Wesentlichen auf zwei Arten.
Einer davon ist einfach ein generischer IR-Empfänger. Es ist möglich, diese zu „trainieren“, um eine Konfigurationsdatei zu erhalten, oder eine herunterzuladen. Diese listen einfach die Impulszeiten für jede Taste auf.
Die andere Möglichkeit ist ein Ereignisgerät – das ist wahrscheinlich der Mechanismus der Fernbedienung, die Sie haben, da sie bereits Auswirkungen auf Ihren Computer hat. Dabei hat der Kernel einen Treiber für diese Fernbedienung und übersetzt deren Impulse in Ereignisse.
Das Gerät wird effektiv als zusätzliche Tastatur mit einigen Sondertasten angeschlossen, von denen einige in X belegt sind. Sie können LIRC verwenden, um einem solchen Gerät über das evdev-Modul (Event Device) zusätzliche Belegungen hinzuzufügen.
Tun
lsmod | grep evdev
Und prüfen Sie, ob das evdev-Modul geladen ist – dies geschieht häufig als Reaktion auf einen dieser Remote-Empfänger. Die Kernel-Treiber für diese Module ordnen die Ereignisse normalerweise dem Standardsatz von Tastencodes zu. Einige der Tasten könnten sogar in der üblichen Tastenzuordnung enthalten sein – die Fernbedienungen, die ich habe, erzeugen die richtigen Tastencodes für Ziffern, Eingabe usw. – und Sie können sehen, wie sie Tasten in Anwendungen eingeben wie jede andere HID-Tastatur.
Versuchen Sie herauszufinden, welches /dev/input/eventN-Gerät Ihre Fernbedienung ist. Sehen Sie sich dazu Ihre dmesg
Ausgabe an, z. B.
dmesg | grep event
Führen Sie dann eines der LIRC-Debugtools aus, irw
irw /dev/input/eventN
# sollte eine Liste mit Tastenkennungen erstellen, wenn Sie zielen und schießen. Sobald dies funktioniert ...
Von hier aus können Sie LIRC so konfigurieren, dass bestimmte Tastendrücke empfangen und andere Tasten an Anwendungen gesendet werden. Ich habe ein gemischtes Setup für MythTV – einige der Tasten haben die Werte, die ich sowieso haben möchte (OK == ENTER, 0-9 usw.), einige davon ordne ich in LIRC neu zu (STOP == d für Löschen).