Hilfe gesucht: Problem mit gelber Taste - VDR-Fehler?

  • Hallo,
    ich habe hier das Problem, dass wenn ich z.B. bei Aufnahmen die gelbe Taste drücke, dass dann sehr oft die Abfrage ob wirklich gelöscht werden soll, diese sofort wieder verschwindet. Nur ein sehr kurzer Druck auf die Taste bewirkt, dass die Abfrage im OSD stehen bleibt.


    Ich vermute folgenden Fehler: Wenn ich die Taste drücke, wird ja das Signal mehrfach an den Empfänger gesendet (9 mal pro Sek. - Standard bei RC5-Fernbedienungen). Wenn ich die Taste also nicht schnell genug loslasse, dann bewirkt das, dass die Abfrage gleich wieder gelöscht wird.


    Das korrekte Verhalten wäre:


    - GELB drücken, VDR fragt nach 'Delete Timer?'
    - Wird nun OK gedrückt, wird der Timer gelöscht
    - Wird eine beliebige andere Taste gedrückt, wird die Aktion abgebrochen


    Eine beliebige Taste kann auch GELB sein, aber nur dann, wenn die Taste GELB zwischendurch einmal losgelassen wurde - hier liegt der Fehler:
    VDR erkennt nicht, dass beim Halten von GELB eine automatische Tastenwiederholung vorliegt und nicht abgebrochen werden darf.
    Also wird wahrscheinlich das Toggle-Bit nicht- oder nicht richtig ausgewertet.


    Das gleiche Problem besteht bei der Powertaste (außer bei Leuten, die das ExtensionBoard von tbe haben). Er hat schon mehrfach auf den Fehler hingewiesen.


    Dieses Problem müßten eigentlich alle Leute mit einer RC5-Fernbedienung haben (vielleicht andere auch, bei der die Repeatfunktion falsch ausgewertet wird).


    Mein Problem dabei ist, dass ich nur extrem bescheidene C bzw. C++ -Kenntnisse habe und auch nach mehrstündiger Suche im VDR-Code eigentlich nur Bahnhof verstehe... ;(


    Meine große Hoffnung ist, dass sich jemand mit C- bzw. VDR-Code-Erfahrung diesem Problem annimmt. ;D
    Dieses nervöse rumdrücken auf der FB nervt auf Dauer schon ziemlich...


    Gruß
    Stefan

  • Servus,


    Zitat

    Dieses Problem müßten eigentlich alle Leute mit einer RC5-Fernbedienung haben


    Nein. Das Problem liegt offensichtlich im LIRC. Lern die Fernbedienung neu an, und drück wie bei irrecord auch beschrieben die Tasten am Anfang wirklich für eine Sekunde oder etwas länger, und am Ende halt wirklich so schnell wie du kannst.


    Es könnte sich auch lohnen, einen anderen Fernbedienungs-Code auszuprobieren.


    Dann sollte LIRC das korrekt auswerten, so wie bei mir und den meisten anderen auch.


    Viele Grüße, Mirko

  • Hi Cooper,

    Zitat

    Nein. Das Problem liegt offensichtlich im LIRC. Lern die Fernbedienung neu an, und drück wie bei irrecord auch beschrieben die Tasten am Anfang wirklich für eine Sekunde oder etwas länger, und am Ende halt wirklich so schnell wie du kannst.


    Sorry, da muß ich widersprechen. Ich habe hier mehrere VDRs, selbst und auch von Bekannten, alle haben das gleiche Problem, teilweise mit verschiedenen Fernbedienungen.
    Es gehen ja auch alle Tasten, nur bei einer Funktion, bei der eine Abfrage im OSD eingeblendet wird, passiert das was ich oben beschrieben habe. (z.B. Gelbe Taste - recordings delete, Powertaste - taste drücken um shutdon abzubrechen...). Das mit der Powertaste wird mit dem Extb-Board von tbe umgegangen, indem er in den normalen lirc-Einstellungen die Powertaste auskommentiert, die Powertaste "im PIC anlernt" und das Powersignal mit dem PIC des Extb-Boards generiert...


    Außerdem habe ich auch schon mehrere FBs ausprobiert, gerade gestern erst habe ich eine Hauppauge FB (von PVR350) angelernt, ganz genau der gleiche Effekt...


    Zitat

    Es könnte sich auch lohnen, einen anderen Fernbedienungs-Code auszuprobieren.


    Was soll das bringen? Die Tasten werden ja alle erkannt, also stimmt die Adresse. Und die RC5-Kommandos sind ja eh bei fast allen Tasten gleich, lediglich die Adresse ist unterschiedlich...


    Zitat

    Dann sollte LIRC das korrekt auswerten, so wie bei mir und den meisten anderen auch.


    Und Du hast wirklich eine RC5-Fernbedienung???


    Gruß
    Stefan

  • Zitat

    Ich habe hier mehrere VDRs, selbst und auch von Bekannten, alle haben das gleiche Problem, teilweise mit verschiedenen Fernbedienungen.


    Sehr merkwürdig. Ich hatte das Problem bislang bei keinem einzigen VDR und habe auch noch nie eine so lautende Problembeschreibung bekommen.


    Grundsätzlich ist es die Sache von LIRC, zu erkennen, wann eine Taste der Fernbedienung nur gedrückt oder gehalten oder schnell hintereinander gedrückt wird. VDR ist diesbezüglich aus dem Spiel, er bekommt vom LIRC lediglich das Event gemeldet und mehr nicht. Deshalb lässt sich das Problem IMHO auch nicht im VDR lösen, das ist schlicht die falsche Baustelle.


    Zitat

    Was soll das bringen? Die Tasten werden ja alle erkannt, also stimmt die Adresse.


    Richtig, aber offenbar erkennt er die Tastenwiederholung (war das nicht das Toggle-Bit?) nicht korrekt. Ich hatte die Hoffnung, dass es mit einem anderen Code evtl. besser läuft. Scheint aber nicht so zu sein.


    Zitat

    Und Du hast wirklich eine RC5-Fernbedienung???


    Jepp, hier mal ein Auszug aus meiner lircd.conf (neben denen, die bei LinVDR 0.7 mitgeliefert werden, wo auch RC5 drin sind):

    Code
    begin remote
    
    
      name  /etc/lircd.conf
      bits           13
      flags RC5|CONST_LENGTH
      eps            30
      aeps          100


    Das ist übrigens eine One4All, die ebenfalls Probleme beim Anlernen machte, weil sie bei jedem zweiten Tastendruck der gleichen Taste einen anderen Code liefert.


    Viele Grüße, Mirko

  • Hi,


    ich muss mit cooper beipflichten, ich denke die Funktion TOGGLE-Bit wurde nicht sauber angelernt. Versuchsweise doch mal auf die Verwendung von conf.Dateien von lirc.org verzichten...


    Bei Anlernen des IR-CODEC mit irrecord kommt dies relative zum Ende des Prozesses.


    Die korrekte Funktion ist mit "irw" prüfbar.


    Mit drücken der IR-Taste muss der Index hochzählen, dann klappt auch mit dem VDR und Confirm-Messages...


    000000000000114e 00 YELLOW medion-md4689-290
    000000000000114e 01 YELLOW medion-md4689-290
    000000000000114e 02 YELLOW medion-md4689-290
    000000000000114e 03 YELLOW medion-md4689-290


    und erst nach loslassen und erneut drücken geht das Spiel mit dem Index von vorne los.


    000000000000114e 00 YELLOW medion-md4689-290
    000000000000114e 01 YELLOW medion-md4689-290
    ...



    Andreas

  • Hi,
    ich verstehe das Ganze nicht wirklich. Ihr könnt mir glauben, dass ich in den letzten Tagen viel Zeit mit dem Zeugs verbracht habe...


    cooper: Ist bei mir auch eine One for all (URC-7040)...


    @Hulk: Genau so sieht das alles bei mir aus. Wenn ich auf einer Taste bleibe dann wird der Index hochgezählt. Wenn ich erneut drücke fängt der Index wieder bei 0 an.
    Man kann das in Verbindung mit dem Extb-Board auch sauber kontrollieren, indem man das aufleuchten der LED mitzählt und dann den Index bei der irw-Ausgabe anschaut. Die Werte stimmen sehr gut überein.


    Die einzige Auffälligkeit ist, dass bei einigen RC5-Extended-Codes ,z.B. bei den rechts-, links-Tasten beim loslassen öfters mal ein Event nachkommt. Die Yellow-Taste ist hier völlig unauffällig!


    Ich benutze übrigens kein lirc-config-File von lirc.org, sondern das von tbe...


    @Hulk: Könntest Du Dein lirc-conf-File hier bitte mal anhängen? Ich hier auch noch Aldi-Fernbedienungen rumliegen und will mal sehen, ob das dann wirklich funktioniert bzw. wo die Unterschiede zwischen meinen seither benutzten Fernbedienungen und der hier liegen. Ich würde schon sehr gerne die One For All weiter benutzen...


    Gruß
    Stefan


    Gruß
    Stefan

  • Hi Cooper,
    ich benutzte schon immer 0081 (vcr).


    Und es ist tatsächlich nahezu perfekt. Ich versteh zwar nicht warum, aber ich werde beide Files noch genau vergleichen und Stück für Stück ersetzen bis ich die Ursache habe.


    Trotz allem ist es aber so, dass wenn ich die gelbe Taste länger drücke (ca. ne sec.), dass dann die Abfrage wieder verschwindet. Und das dürfte sie ja eigentlich nur bei einem erneuten drücken der gelben bzw. irgendeiner Taste (außer ok). Aber man drückt ja eigentlich sehr selten eine Taste solange (wenn man nicht will, dass sich was wiederholt), deshalb könnte ich damit gut leben.


    Auf jeden Fall mal vielen Dank, das hat mir sehr geholfen. Falls wir uns mal wieder sehen geb ich ein Bierchen aus. :]


    Gruß Stefan

  • Servus Stefan,


    Zitat

    Und es ist tatsächlich nahezu perfekt.


    Na also!


    Zitat

    Trotz allem ist es aber so, dass wenn ich die gelbe Taste länger drücke (ca. ne sec.), dass dann die Abfrage wieder verschwindet. Und das dürfte sie ja eigentlich nur bei einem erneuten drücken der gelben bzw. irgendeiner Taste (außer ok).


    Ähm, natürlich reagiert VDR drauf, dass du die Taste gedrückt hältst. Wie sonst willst du denn sinnvoll schnell vor oder zurück springen (grün/gelb bei Wiedergabe)? Oder die Schnittmarken verschieben?


    Key Repeat ist also völlig OK, und eine Sekunde Timeout auch genug, damit es nicht zu dem von dir beschriebenen Problem kommt, dass schon ein einzelner Tastendruck als Mehrfach-Betätigung interpretiert wird.


    Zitat

    Auf jeden Fall mal vielen Dank, das hat mir sehr geholfen. Falls wir uns mal wieder sehen geb ich ein Bierchen aus. :]


    Kein Problem. Und ich nehm lieber ne Cola, nicht dass mir meine Portal-Erlaubnis noch entzogen wird :D


    Viele Grüße, Mirko

  • Hi,

    Zitat

    Ähm, natürlich reagiert VDR drauf, dass du die Taste gedrückt hältst. Wie sonst willst du denn sinnvoll schnell vor oder zurück springen (grün/gelb bei Wiedergabe)? Oder die Schnittmarken verschieben?
    Key Repeat ist also völlig OK, und eine Sekunde Timeout auch genug, damit es nicht zu dem von dir beschriebenen Problem kommt, dass schon ein einzelner Tastendruck als Mehrfach-Betätigung interpretiert wird.


    Meiner Meinung nach macht ein Key-Repeat bei einer Abfrage nicht wirklich Sinn, oder? Und es ist doch sicherlich rel. einfach sowas im VDR-Code zu beachten...


    Gruß
    Stefan

  • ... du erwartest doch nicht wirklich, dass es VDR immer von der Situation abhängig macht, ob es ein Key-Repeat geben kann oder nicht, oder?


    Wie willst du sowas denn dem Benutzer verklickern, dass er einmal die Taste gedrückt halten kann, anstatt sie immer wieder zu drücken, er aber die gleiche Taste ein Menü weiter ständig einzeln drücken muss, weil es kein Key-Repeat gibt? Das macht die VDR-Bedienung ziemlich inkonsistent -- und ich glaube kaum, dass Klaus da mitmachen wird.


    Viele Grüße, Mirko

  • Nein, nein. Es geht doch nur um Abfragen. Es gibt da die Interface.c und dort die Funktion confirm. Und nur dort soll/darf es keinen Key-Repeat geben. Wie gesagt, es macht doch wirklich null Sinn, wenn ich auf einer Taste bleibe und die Abfrage ob ich was löschen oder beenden will aufpoppt , weg geht, aufpoppt usw... Die Meldung darf meiner Meinung erst durch einen ERNEUTEN Druck auf irgendeine Taste reagieren.
    Sonst muß man immer konzentriert die FB bedienen...


    Gruß
    Stefan

  • Hallo,


    ich ärgere mich auch schon seit Ewigkeiten über das Verhalten der Tasten GELB und POWER in Bestätigungsnachfragen. POWER habe ich im Extension Board ohnehin abgefangen ( siehe http://vdr-portal.de/board/thr…?postid=124734#post124734 )


    Offensichtlich ist das Problem hier noch nicht klar genug geworden. VDR reagiert in allen Menüs korrekt auf automatische Tastenwiederholungen. Nur bei Nachfragen nicht, wie z.B. Beispiel beim Timer löschen. Korrekt wäre:


    - GELB drücken, VDR fragt nach: 'Delete Timer?'
    - Wird nun OK gedrückt, wird der Timer gelöscht
    - Wird eine beliebige andere Taste gedrückt, wird die Aktion abgebrochen


    Eine beliebige Taste kann auch GELB sein, aber nur dann, wenn die Taste GELB zwischendurch einmal losgelassen wurde. Hält man die Taste etwas zu lang gedrückt (in der lirc.c ist REPEATDELAY mit 350ms definiert), wird der Bestätigungsdialog abgebrochen, und man darf ihn noch einmal mit GELB aufrufen. An dieser Stelle muss also eine automatische Tastenwiederholung ignoriert werden. Das hat dann auch keinen Einfluss auf das Verhalten der Taste GELB in anderen Menüs.


    Wir haben uns den Code mal angeschaut und als einfache Lösung in interface.c die Taste GELB lahmgelegt, sobald der Bestätigungsdialog erscheint. Dann kann man zwar GELB auch nach kurzem Loslassen nicht zum Abbrechen benutzen, aber das spielt ja keine große Rolle. Hier liegt ein Diff (erzeugt unter 1.3.24):
    http://www.tb-electronic.de/vdr/tmp/interface_kYellow.diff


    Beroffen sind die Bestätigungsdialoge bei Timer löschen, Kanal löschen und Aufzeichnung löschen. Bis jetzt gab’s keine Nebenwirkungen ...


    Grüße,
    Tom

Jetzt mitmachen!

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