Hallo Zusammen,
weil es schwierig ist bei Problemen mit dem eventlircd dem Problem auf den Grund zu gehen, hier ein paar Tips, die mir geholfen haben.
Natürlich sollte man erst einmal folgendes gelesen haben:
http://www.yavdr.org/documentation/0.5/de/ch02s03.html
Wenn Du eine spezielle Fernbedienung wie die Rii mini i25 nutzt, dann kümmert sich eventlircd nicht automatisch drum.
Am einfachsten überprüft man, welche Input devices von eventlircd gelesen und an den VDR weitergegeben werden mit:
root@poempel:~# fuser /dev/input/event*
/dev/input/event0: 1127 1865
/dev/input/event1: 1127 1865
/dev/input/event12: 472 1127 1865
/dev/input/event13: 472 1127 1865
/dev/input/event14: 1127 1865
/dev/input/event15: 1127 1865
/dev/input/event2: 472 1127 1865
/dev/input/event20: 1127
/dev/input/event21: 472 1127 1865
/dev/input/event3: 1127 1865
root@poempel:~#
Alles anzeigen
Damit sieht man, welche Prozesse diese devices benutzen. In diesen Fall ist 1865 die Prozess ID des Eventlircd.
Wenn man hier sieht, dass eventlircd sich nicht um die Events kümmert sollte man ein Blick auf die UDev Regeln in:
schauen.
Wenn das eigene Device nich berücksichtigt wird, (Eigenes Device findest Du mit lsusb, cat /proc/bus/input/devices) ist es vielleicht nötig UDEV beizubringen das Device an Eventlircd zu hängen.
Das macht ihr am besten mit einer eigenen Datei.
Hier mein Beispiel:
root@poempel:~# cat /lib/udev/rules.d/98-eventlircd-thl.rules
################################################################################
# An example udev rules file for eventlircd.
#
# This rules file does not start eventlircd. Many applications only check for
# the lircd socket at application lauch. Therefore, it is better to start
# eventlircd in an init script so that eventlircd creates the lircd socket
# before any applications that use LIRC launch.
################################################################################
# eventlircd only does something for "add" and "remove" actions.
ACTION!="add|remove", GOTO="end"
# eventlircd only does something "input" subsystem devices.
SUBSYSTEM!="input", GOTO="end"
# eventlircd can only handle event devices.
KERNEL!="event[0-9]*", GOTO="end"
# eventlircd ignores devices created by eventlircd.
ATTRS{name}=="eventlircd", GOTO="end"
#-------------------------------------------------------------------------------
# Ask eventlircd to handle USB HID devices that show up as event devices and are
# known to be remote controls. For simplicity, the event map file names have the
# format <BUSTYPE>_<VENDOR>_<PRODUCT>.evmap.
#-------------------------------------------------------------------------------
SUBSYSTEMS=="usb", GOTO="begin-usb"
GOTO="end-usb"
LABEL="begin-usb"
ENV{ID_USB_INTERFACES}=="", IMPORT{program}="usb_id --export %p"
ENV{ID_VENDOR_ID}=="1997", ENV{ID_MODEL_ID}=="1221", \
ENV{eventlircd_enable}="true",\
ENV{eventlircd_evmap}="03_$env{ID_VENDOR_ID}_$env{ID_MODEL_ID}.evmap"
LABEL="end-usb"
LABEL="end"
root@poempel:~#
Alles anzeigen
Ob es nötig ist auf eine Eigene Eventmap, wie im obigen Beispiel zu verweisen oder einfach auf eine bestehende, musst Du schauen.
Vielleicht helfen diese Infos weiter.
Gruß
Thomas