[0.4]XBMC- Einfacher Tastendruck -> Doppelte eingabe

  • Hallo,


    habe mir heute yavdr 0.4 installiert (HW: Asrock Ion330) und funktioniert soweit sehr gut.
    Beim VDR funktioniert auch die Fernbedienung sehr gut, starte ich jedoch XBMC wird jeder Tastendruck doppelt gezähl (aus einmal rechts drücken wird zweimal rechts)...


    Wo könnte ich sowas konfigurieren? Habe schon etwas geschaut und man kann über ir-keytable -D oder -P das repeat delay und repear period anpassen, das hat aber keine Besserung gebracht, weder im positiven noch negativem Sinne.

  • Hallo, XBMC kann selbst die Repeat-Rate steuern, dazu unter /var/lib/vdr/.xbmc/userdata/Advancedsettings.xml z.B. soetwas anlegen/einstellen:

    Code
    <advancedsettings>
    <remoterepeat>1000</remoterepeat>
    <remotedelay>4</remotedelay>
    </advancedsettings>


    Näheres zu den Optionen hier: http://wiki.xbmc.org/index.php…ngs.xml#.3Cremotedelay.3E

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • ich hab das selbe Problem.


    War überrascht dass es die Advancedsettings.xml gar nicht gab.


    Hab eine mit dem angegebenen Inhalt angelegt.
    Wird die dann automatisch geladen bzw angewendet ?


    Mit den Zahlen von Seahawk hat sich nämlich nichts verändert.


    edit: auch eine verdopplung der Werte ändert nichts.

  • Zitat

    edit: auch eine verdopplung der Werte ändert nichts.

    Ich hab das gleiche Problem.
    Auch das 0.9s-Paket von eventlircd brachte keine Verbesserung.
    Aufgefallen ist mir, dass irw die Befehle auch doppelt ausgibt; VDR sie aber richtig interpretiert.


    Hat sonst noch wer ne Idee?
    Grüße Michael

    HD-VDR-EG
    Software: yaVDR-0.4
    Hardware: ASRock M3N78D, Athlon II X2 240e, ASUS EN210, TeVii s480
    HD-VDR-DG:
    Software: yaVDR-0.4
    Hardware: ASRock N68-S3 UCC, Athlon II X2 245e, ASUS EN210, TeVii s480
    ---
    Don't sleep and build!

  • Hat sonst noch wer ne Idee?


    Ja, ich. Aber dafür müsstet ihr mir verraten was für Empfänger ihr benutzt - werden die über lircd angesprochen?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)


  • Ja, ich. Aber dafür müsstet ihr mir verraten was für Empfänger ihr benutzt - werden die über lircd angesprochen?


    oh, stimmt, dass hab ich vergessen:
    Ich verwende einen seriellen Homebrew-Empfänger (war glaub ich mal bei ner Tevii-Karte dabei oder so).
    Ich hatte auch mal mit der pre_data-Option rumgespielt (war ein Tip ausm ubuntu-wiki(?) ), aber dann ging erstmal gar nix. Deshalb wollte ich jetzt mal strukturierter rangehen und hab gefragt :D
    Meine lircd sieht so aus und vdr funktioniert damit perfekt.


    hardware.conf

    HD-VDR-EG
    Software: yaVDR-0.4
    Hardware: ASRock M3N78D, Athlon II X2 240e, ASUS EN210, TeVii s480
    HD-VDR-DG:
    Software: yaVDR-0.4
    Hardware: ASRock N68-S3 UCC, Athlon II X2 245e, ASUS EN210, TeVii s480
    ---
    Don't sleep and build!

  • Also das Problem scheint zu sein, dass lircd mit der Option --uinput, die dafür sorgt, dass ein virtuelles Eingabegerät erzeugt wird, das dann von eventlircd ausgelesen werden kann, prellt (daher die doppelten Tastendrücke bei irw). Der VDR hat einen eigenen Repeat-Filter der das z.T. abfangen kann, XBMC ist da weniger gutmütig.
    Meine Lösung dafür war es eine eigene Brücke von lircd-Socket zu eventlircd zu schlagen und auf das --uinput bei lircd zu verzichten. Das ganze ist noch als experimentell anzusehen, funktioniert bei mir aber deutlich besser als der Weg über die gepatchten Eventlircd-Pakete.


    Wichtig: Es funktionieren damit aktuell alle Namespace-konformen Tasten in yaVDR mit Ausnahme von KEY_IMAGES (was von dem vom unter yaVDR 0.4 verwendeten Kernel offenbar nicht unterstützt wird - dafür aber durch linux-media-dkms. Ansonsten könnte man falls man so eine Taste definiert hat z.B. jedes Auftreten der Taste in den Konfigurationsdateien mit KEY_CAMERA oder einem anderen unterstützten Tastennamen ersetzen)



    /etc/init/lircd2uinput.conf


    Die Zeile 83 mit der exec-Anweisung in der /etc/init/lircd.conf muss so angepasst werden, dass --uinput nicht mehr übergeben wird, z.B. in dem man es auskommentiert:

    Code
    exec /usr/sbin/lircd --nodaemon $REMOTE_LIRCD_ARGS #--uinput


    Alternativ kann man eine passende Datei direkt herunterladen:

    Code
    sudo wget -O /etc/init/lircd.conf https://raw.github.com/yavdr/yavdr-base/master/etc/init/lircd.conf


    Zum Abschluss muss eventlircd noch neu gestartet werden und sein Repeat-Filter deaktiviert werden:

    Code
    sudo stop eventlircd
    # aus der /etc/init/eventlircd.conf das Startargument "--repeat-filter" entfernen
    sudo start eventlircd


    Um zu kontrollieren, ob das Python-Skript läuft:

    Code
    sudo status lircd2uinput


    In der /etc/init/lircd2uinput.conf kann außerdem noch die Tastenwiederholrate für den Lircd-Empfänger auf die eigenen Bedürfnisse angepasst werden.
    Es können dem Skript folgende Optionen übergeben werden (die Zeitangaben sind in Microsekunden):


    Eine Anpassung, die die Verzögerung bis zu einem wiederholten Tastendruck etwas erhöht sähe z.B. so aus:
    exec /usr/bin/python /usr/bin/lircd2uinput.py -f --max-gap=350000

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    13 Mal editiert, zuletzt von seahawk1986 ()

  • Hallo,


    habe mir heute yavdr 0.4 installiert (HW: Asrock Ion330) und funktioniert soweit sehr gut.
    Beim VDR funktioniert auch die Fernbedienung sehr gut, starte ich jedoch XBMC wird jeder Tastendruck doppelt gezähl (aus einmal rechts drücken wird zweimal rechts)...


    Wo könnte ich sowas konfigurieren? Habe schon etwas geschaut und man kann über ir-keytable -D oder -P das repeat delay und repear period anpassen, das hat aber keine Besserung gebracht, weder im positiven noch negativem Sinne.

    Kann diese Verhalten in XBMC bestätigen.
    Ich verwende diesen Empfänger "ATI/NVidia/X10 RF Remote (userspace)".
    Welche Datei müsste ich editieren?

    VDR-1:Steacom-ST-FC9S,Steacom-ST-Nano160,Asus Prime B560M-A,Core i5-11400,NVIDIA T600,DDR4 8GB 3200MHz,Crucial P2 CT500P2SSD8 500GB,DD Cine-S2-V7,STM32 USB Adapter,CSL 300Mbit WLan-Stick,yaVDR-ansible(jammy) alle Updates.

    Client1: Raspberry Pi 3,LibreELEC 9.2.8

    Client2:Raspberry Pi 4,LibreELEC 10.0.3

    TV =Sony KD-55AF8

    Audio=Denon AVR-X2700H/Teufel-Ultima-40 5.1

  • Ich verwende diesen Empfänger "ATI/NVidia/X10 RF Remote (userspace)".


    Zeig mal bitte die Ausgabe von "cat /proc/bus/input/devices" und "lsusb"

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Meine Lösung dafür war es eine eigene Brücke von lircd-Socket zu eventlircd zu schlagen und auf das --uinput bei lircd zu verzichten. Das ganze ist noch als experimentell anzusehen, funktioniert bei mir aber deutlich besser als der Weg über die gepatchten Eventlircd-Pakete.


    Für USB-Lirc Empfänger muss dann noch der /lib/udev/lircd_helper angepasst werden (Zeile 41 auskommentieren und nach Zeile 49 noch den Befehl zum laden der Bridge einfügen (siehe Zeile 50 unten):

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    Einmal editiert, zuletzt von seahawk1986 ()

  • Hallo seahawk,


    vielen Dank!
    Deine Anleitung funktioniert soweit.
    Leider hab ich nun den Nebeneffekt, dass auch bei langem Tastendruck, vdr nur den ersten erkennt.
    Wirklich störend ist das zwar nur bei der Lautstärke, aber es wär cool, wenn das wieder ging.
    Ich hab ein wenig mit den Optionen gespielt, aber leider ohne Erfolg. Hast du da noch nen Tip für mich?


    Grüße Michael

    HD-VDR-EG
    Software: yaVDR-0.4
    Hardware: ASRock M3N78D, Athlon II X2 240e, ASUS EN210, TeVii s480
    HD-VDR-DG:
    Software: yaVDR-0.4
    Hardware: ASRock N68-S3 UCC, Athlon II X2 245e, ASUS EN210, TeVii s480
    ---
    Don't sleep and build!

    Einmal editiert, zuletzt von M.Temp ()

  • Bei mir klappt das mit den wiederholten Tastendrücken - welche Werte verwendest du aktuell?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Code
    /usr/bin/python /usr/bin/lircd2uinput.py --max-gap=100000 --min-repeats=1


    Ich weiß nicht, ob dir die Info hilft, aber unter yavdr-0.3 hatte ich ebenfalls das Problem, dass der Repeat-Modus nicht ging. Deshalb war ich erstmal ganz begeistert, dass (trotz den ganzen Diskussionen über die Fernbedienungen und yavdr-0.4) meine Fernbedienung (zumindest unter vdr) quasi otb problemlos funktioniert.


    Halt, Kommando zurück.
    Mit obigen Einstellungen hab ich zwar weiterhin unter vdr nur einen Tastendruck, aber unter xbmc wieder zwei...

    HD-VDR-EG
    Software: yaVDR-0.4
    Hardware: ASRock M3N78D, Athlon II X2 240e, ASUS EN210, TeVii s480
    HD-VDR-DG:
    Software: yaVDR-0.4
    Hardware: ASRock N68-S3 UCC, Athlon II X2 245e, ASUS EN210, TeVii s480
    ---
    Don't sleep and build!

    Einmal editiert, zuletzt von M.Temp ()

  • Wenn Lircd keine wiederholten Tastendrücke liefert (vielleicht hast du den gap-Wert in der lircd.conf zu hoch gewählt (evtl. mal den repeat_gap dort auskommentieren und eventlircd stoppen und wieder starten), ist mein Skript leider machtlos. Mit einem Prellen (also zu viele Tastendrücke) des Lirc-Empfängers kann es umgehen, aber wenn auf dem Socket von lircd nichts ankommt, weiß es nicht wann es eine Taste drücken muss.
    Du kannst ja mal zwei parallele SSH-Sitzungen aufmachen, auf der einen auf den Socket von lircd lauschen und auf der anderen gucken, was bei eventlircd ankommt wenn du Tasten gedrückt hältst:

    Code
    #1. Sitzung:
    sudo irw /var/run/lirc/lircd.$(pidof lircd)
    #2. Sitzung:
    sudo irw


    U.u. könntest du auch versuchen eine neue lircd.conf anzulernen (http://wiki.ubuntuusers.de/Lirc#lircd-conf-einrichten) bzw. die nach dem Erstellen unveränderte lircd.conf auprobieren, da das Problem IMHO daher rührt, dass zu wenig Tastendrücke ankommen, nicht zu viele.

    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!