yaVDR 0.4.0 mit Terratec Cinergy T2 - Fernbedienung funktioniert nicht vollständig

  • Hallo zusammen,


    nachdem ich drei Tage lang versucht habe selbst das Problem zu lösen, bin ich nun doch einmal mehr auf eure Hilfe angewiesen.
    Ich habe versucht mit einiger rumliegender Hardware (Terratec Cinergy T2, Point Of View ION 330) einen weiteren VDR aufzusetzen. Als Distribution verwende ich dieses mal yaVDR 0.4.0. Soweit funktioniert inzwischen auch alles prima, dummerweise bekomme ich die Fernbedienung aber nicht korrekt ans Laufen. Ein paar Tasten (rechts, links, hoch, runter und Power) funktionieren vernünftig, andere (z.B. OK) hingegen nicht.


    Was ich bisher probiert und rausgefunden habe:


    1) Der Interne USB-IR-Empfänger wird bei mir korrekt als Input-Device erkannt

    Code
    I: Bus=0003 Vendor=0ccd Product=0038 Version=0106
    N: Name="IR-receiver inside an USB DVB receiver"
    P: Phys=usb-0000:00:1d.7-2/ir0
    S: Sysfs=/devices/pci0000:00/0000:00:1d.7/usb1/1-2/input/input4
    U: Uniq=
    H: Handlers=kbd event4 
    B: PROP=0
    B: EV=3
    B: KEY=108fc210 204300000000 0 8000 208000000001 9e168000000000 ffc


    2) evtest liefert eine vollständige Key-Definition und erkennt diese auch vollständig, hier exemplarisch eine funktionierende und eine nicht funktionierende Taste


    3) irw liefert nichts zurück


    4) Im VDR und XBMC funktionieren nur die o.g. Tasten


    5) Geladene (IR relevante) Kernelmodule


    Ich habe anhand des yaVDR -Handbuchs den Mechanismus für die Fernbedienungen weitestgehend nachvollziehen können, bin mir aber nicht 100%ig sicher, was für die Cinergy-Fernbedienung zutrifft. Soweit ich es beurteilen kann, wird die FB als rc_core erkannt. Leider liefern die weiteren im Handbuch beschriebenen Schritte kein Ergebnis


    6) Ausgabe ir-keytable

    Code
    root@yaVDR:~# sudo ir-keytable
    Couldn't find any node at /sys/class/rc/rc*.


    Hat jemand eine Idee, was ich noch prüfen kann? Bin echt ratlos.


    Viele Grüße,
    David

  • 2) evtest liefert eine vollständige Key-Definition und erkennt diese auch vollständig, hier exemplarisch eine funktionierende und eine nicht funktionierende Taste


    Wenn er da Tastendrücke für alle Tastgen liefert (es scheint ja KEY_LEFT und KEY_OK anzukommen)
    aber irw nichts liefert, dann weiß eventlircd noch nicht, dass es sich um den Empfänger kümmern soll.

    Soweit ich es beurteilen kann, wird die FB als rc_core erkannt. Leider liefern die weiteren im Handbuch beschriebenen Schritte kein Ergebnis


    Nein, wie man am sysfs-Pfad und der Ausgabe von ir-keytable sieht ist es ein HID-Empfänger.


    Also fehlt dir zu deinem Glück eine entsprechende udev-Regel in /lib/udev/rules.d/98-eventlircd.rules:

    Code
    ENV{ID_VENDOR_ID}=="0ccd", ENV{ID_MODEL_ID}=="0038", \
      ENV{eventlircd_enable}="true", \
      ENV{eventlircd_evmap}="03_$env{ID_VENDOR_ID}_$env{ID_MODEL_ID}.evmap"


    Und dann noch eine evmap unter /etc/eventlircd.d/03_0ccd_0038.evmap (kann erst mal leer sein, muss aber existieren). Nach einem Neustart solltest du von irw Tastennamen bekommen und kannst sie dann in der evmap auf den yaVDR-Namespace mappen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ach ja - bitte poste die evmap, wenn du alles angepasst hast, dann können wir die Vorkonfiguration für diesen Empfänger noch in unsere Pakete aufnehmen :)

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo nochmal,


    habe jetzt den Eintrag in /lib/udev/rules.d/98-eventlircd.rules vorgenommen und eine leere /etc/eventlircd.d/03_0ccd_0038.evmap erstellt. Nach dem Neustart liefert sowohl


    Code
    irw


    als auch


    Code
    irw var/run/lirc/lircd


    kein Ergebnis. Kann ich irgendwie feststellen, ob eventlircd sich jetzt verantwortlich fühlt und die Datei findet?


    Viele Grüße,
    David

  • Ja, es wird ja durch die udev-Regel dem Empfänger ein entsprechendes Attribut zugewiesen:

    Code
    sudo udevadm info --attribute-walk --path=/devices/pci0000:00/0000:00:1d.7/usb1/1-2/input/input4 # Der Pfad kann sich u.U. ändern - es gilt der aktuelle Sysfs-Pfad aus der Ausgabe von "cat /proc/bus/input/devices"


    Sitzt die udev-Regel an der passenden Stelle in der Datei, so dass deren Ende z.B. so aussieht:


    Und läuft eventlircd?

    Code
    status eventlircd

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi nochmal,


    anbei die Ausgaben:




    Auszug /lib/udev/rules.d/98-eventlircd.rules


    Code
    root@yaVDR:~# status eventlircd
    eventlircd start/running, process 388



    Das Attribut wird nicht gesetzt. Hmm, warum nur?


    Viele Grüße
    David

  • Ups, das Attribut sieht man wohl nur anders:

    Code
    udevadm info --attribute-walk --name=/dev/input/event3 --query=all

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi,


    ok, hier die Ausgabe. Ich sehe nichts, was auf eventlircd hindeutet.



    Viele Grüße,
    David

  • Zeigt lsusb denn für das Gerät auch die USB-IDs 0ccd:0038 ?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo seahawk1986,


    ja, zeigt es.

    Code
    root@yaVDR:~# lsusb
    Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 001 Device 003: ID 203a:fff9  
    Bus 001 Device 002: ID 0ccd:0038 TerraTec Electronic GmbH Cinergy T² DVB-T Receiver
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


    Hast Du noch eine Idee? Was kann ich noch überprüfen?


    Viele Grüße,
    David

  • Stoppe mal den VDR ("sudo stop vdr"), zieh den Empfänger ab, lass udevadm lauschen und stecke ihn wieder an:

    Code
    cd
    udevadm monitor --property > test-udev.txt


    Danach kannst du udevadm mit STRG+C stoppen und die Datei hochladen - mal sehen was der Empfänger so für Merkmale hat...

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)


  • Dann versuchs mal mit so einer udev-Regel in /lib/udev/rules.d/98-eventlircd-names.rules:

    Code
    ATTRS{name}=="IR-receiver inside an USB DVB receiver", \
      ENV{eventlircd_enable}="true", \
      ENV{eventlircd_evmap}="03_0ccd_0038.evmap"

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hey seahawk1986,


    Volltreffer!


    Code
    root@yaVDR:~# irw
    67 0 KEY_UP devinput
    67 0 KEY_UP devinput
    6c 0 KEY_DOWN devinput
    6a 0 KEY_RIGHT devinput
    160 0 KEY_OK devinput


    irw erkennt jetzt was. Ich hoffe den Rest schaffe ich dann wieder alleine.


    Vielen Dank für Deine Hilfe. Sobald ich eine funktionstüchtige evmap habe, werde ich sie hier dann posten.


    Viele Grüße,
    david

  • Ach so, den ursprünglichen Eintrag in /lib/udev/rules.d/98-eventlircd.rules brauche ich doch nicht mehr, korrekt?


    Da der offenbar nicht angewendet wird, kannst du den rausnehmen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

Jetzt mitmachen!

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