FB-Eingaben teilweise doppelt - Remote-Plugin, Nexus

  • Möchte erstmal Hallo sagen, da ich hier neu bin :)
    Viele Probleme hab ich bereits selbstständig lösen können und habe so nun einen VDR am laufen, der mir sehr gut gefällt. Nun plagt mich ein kleines Problemchen, dass zudem unregelmässig auftritt.


    Ich besitze eine Nexus-S und die dazugehörige Fernbedienung (das neue Modell mit farbigen Tasten... http://www.c-kuehn.info/files/nexuscontrol.jpg ). Also habe ich das remote-Plugin einkompiliert und eine passende Keymap für "av7110_loadkeys" (Applikation, welche dem DVB-Treiber beiliegt) erstellt. ./evtest liefert folgendes:


    Zitat

    Event: time 1065647621.937295, type 1 (Key), code 399 (Green), value 1
    Event: time 1065647622.185628, type 1 (Key), code 399 (Green), value 0
    Event: time 1065647624.168697, type 1 (Key), code 401 (Blue), value 1
    Event: time 1065647624.415629, type 1 (Key), code 401 (Blue), value 0


    Schon hier ist ersichtlich, dass jeder Tastendruck zwei Events liefert. Der Counter läuft dabei immer von 0 auf 1. Im VDR an sich liefert dieses Verhalten dann eine doppelte Eingabe. Möchte ich bsp. auf Kanal 1 wechseln und drücke "1", so lande ich auf 11. Nun tritt dieses Problem aber teilweise auch mal nicht auf. Dann läuft alles perfekt. Manchmal läuft auch alles perfekt, aber der PC-Speaker tönt bei jedem Tastendruck.


    Weiterhin habe ich hier im Forum bzw. der FAQ dann ein ähnliches Problem in Bezug auf LIRC gefunden. Hier konnte man die lirc.c patchen, so dass das Problem behoben war. Mein erster Ansatz war nun also, mir die remote.c des remote-Plugins anzuschaun. Hier sind mir folgende Variablen vordergründig aufgefallen:


    Zitat

    polldelay = 40; // ms
    repeatdelay = 350; // ms
    repeatfreq = 100; // ms
    repeattimeout = 500; // ms


    Leider ist mir die Bedeutung nicht so ganz klar da auch der Quellkode an sich sehr schlecht kommentiert ist. Aber ich denke doch mal, dass eine Optimierung dieser Werte mein Problem vielleicht lösen könnte. Oder gibt es vielleicht einen anderen Ansatz (Einführung eines Mechanismus, der das Prellen der Knöpfe erkennt und solange wartet, bis dieses Prellen aufgehört hat, bevor das Programm dann weiterläuft) ? Wäre für jegliche Hilfe sehr dankbar...


    Gruß Christoph

  • Hallo!


    Also ich verwende auch die Nexus-S mit der "bunten" Fernbedienung, habe aber auch noch keine Lösung gefunden für das Problem..:-( System ist LinVDR 0.3-pre4, frisch installiert. Anlernen kann ich die Tasten, aber im Betrieb kommt alles doppelt..


    Gibt´inzwischen Hinweise, wie die Sache zu lösen ist?


    Ciao, Frido.

    ---
    eingefleischter Apple-User, Mac-Admin von Berufs wegen, für VDR am laufen:
    Siemens P3/700, 160GB HD, Nexus-S 2.1, GLCD 128x64, Mahlzeit 4.0beta

  • Zitat

    Original von kuehnch
    ...


    Schon hier ist ersichtlich, dass jeder Tastendruck zwei Events liefert. Der Counter läuft dabei immer von 0 auf 1.
    ...


    Hallo kuehnch!
    Deine Vermutung stimmt nicht so ganz. Natürlich liefert jeder Tastendruck auch bei Dir nur ein Event. Nämlich das Event mit dem Wert "0". Wenn Du die Taste dann wieder losläßt, wird ein Event mit dem Wert "1" erzeugt. Es handelt sich also nicht um einen Counter, sondern um ganz normale Tastenereignisse. Wird eine Taste länger gedrückt gehalten, so werden Events mit dem Wert "2" erzeugt. Warum das bei Dir nicht klappt, kann ich leider nicht sagen. Bei mir funktioniert die Nexus mit dem remote Plugin wunderbar.
    An Deiner Stelle würde ich mal den Parameter "polldelay" näher ins Auge fassen. Offensichtlich wird ein und das selbe Ereignis mehrfach abgefragt ("gepollt"). Eine größere Wartezeit kann vielleicht abhilfe schaffen.
    Gute Nacht!

    Hardware: Gigabyte GA-970A-D3, AMD Athlon II X2 235e, 4GB RAM, Zotac GeForce 210 Synergy Edition 1GB, Corsair Force3 60GB SSD, Mystique SaTiX-S2 Dual, 6.4" TFT, Atric IR Einschalter Rev.5, Logitech Harmony 900, Samsung LE46A789 full HD LCD, Denon AVR-1910, USB Atmo-Light von Slime
    Software: yaVDR 0.5
    Streaming Client 1: Hauppauge MediaMVP
    Streaming Client 2: Telegant TG100 (wenn ich mal irgendwann die Zeit finde das UPnP-Plugin zu testen)

  • Hi,


    Zitat

    Schon hier ist ersichtlich, dass jeder Tastendruck zwei Events liefert. Der Counter läuft dabei immer von 0 auf 1. Im VDR an sich liefert dieses Verhalten dann eine doppelte Eingabe.


    Nein. Wie Saxman2k schon sagte, das ist völlig normal.


    Zitat

    Möchte ich bsp. auf Kanal 1 wechseln und drücke "1", so lande ich auf 11. Nun tritt dieses Problem aber teilweise auch mal nicht auf. Dann läuft alles perfekt. Manchmal läuft auch alles perfekt, aber der PC-Speaker tönt bei jedem Tastendruck.


    Vermutlich hast du in deiner Kernelkonfiguration unter "Input Core Support" den Punkt "Keyboard Support" aktiviert (wird nur gebraucht, wenn man eine USB-Tastatur hat).


    Dadurch werden sämtliche Eingaben der FB an den Tastaturtreiber weitergegeben. Wenn die vdr-Konsole angewählt ist, erhält vdr alle Eingaben vom Tastaturtreiber und von der FB. Wenn dagegen eine andere Konsole angewählt ist, funktioniert es scheinbar. Die FB-Eingaben sind jedoch auch dann auf dieser Konsole zu sehen.


    Abhilfe: Input Core Support"->"Keyboard Support" deaktivieren.


    Gruß,
    Oliver

  • Vielen Dank UFO. Genau das war es. Mir war das mit der Konsole schon aufgefallen gestern. Immer wenn ich nämlich keine Eingabe in der Konsole habe, in der VDR läuft, geht es. Allerdings werden dann in einer anderen Konsole oder gar im Browser ebenfalls die Eingaben gemacht etc.


    Also vielen Dank für die Hilfe! :)


    Gruß Christoph

  • geil!


    jetzt gehts bei mir auch .. finde das ist ein punkt fuer die faq seite!


    oder?

  • <doppeltes Posting, Sorry!>


    Ciao, Frido.

    ---
    eingefleischter Apple-User, Mac-Admin von Berufs wegen, für VDR am laufen:
    Siemens P3/700, 160GB HD, Nexus-S 2.1, GLCD 128x64, Mahlzeit 4.0beta

    Einmal editiert, zuletzt von frido ()

  • Sorry für die DAU-Frage, aber wie deaktiviere ich den "Keyboard Support" (unter LinVDR)?


    Ciao, Frido.

    ---
    eingefleischter Apple-User, Mac-Admin von Berufs wegen, für VDR am laufen:
    Siemens P3/700, 160GB HD, Nexus-S 2.1, GLCD 128x64, Mahlzeit 4.0beta

  • Hallo frido,


    Im LINVDR kannst du das nicht einstellen. Du musst einen neuen Kernel kompilieren, aber ohne INPUT_CORE_SUPPORT.
    Also: make menuconfig - Einstellungen vornehmen - make dep clean bzImage usw.
    Dann Kernel neu booten und ab geht die Lutzi.


    Ciao Stefan

    Ciao Stefan


    :vdr1 yaVDR 0.3, Kernel 2.6.32-29, VDR 1.7.16
    DVB Karten: 2x TT-budget S2-1600
    Grafik: nVidia Corporation G92 [GeForce 9800 GT]
    Sound: Asus Xonar D2X interne PCIe Soundkarte 7.1
    HD: Samsung 1,5TB
    Loewe ART 37", 9" Touch-TFT mit graphTFT
    FB: Loewe

  • Hmm, dann habe ich ein Problem, denn auf der Kiste ist ja außer LinVDR nix drauf... ich hab zwar eine Datei gefunden, in der was von Input Core steht (unter /boot/.config) und die zwei Zeilen da mal auskommentiert, gebracht hat es aber leider nix...


    Naja, muß ich eben weiter probieren..


    Ciao, Frido.

    ---
    eingefleischter Apple-User, Mac-Admin von Berufs wegen, für VDR am laufen:
    Siemens P3/700, 160GB HD, Nexus-S 2.1, GLCD 128x64, Mahlzeit 4.0beta

Jetzt mitmachen!

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