KBD anlernen per SSH und skincurses (VDR 2.0.0)

  • Hallo,
    ich versuche gerade die Tastatur per SSH (Putty) und skincurses anzulernen. Leider funktioniert z.B. das "Überspringen" nicht.
    Folgendes steht dann auf dem "OSD":

    Code
    KBD 
    Phase 2: Tastenbelegung anlernen 
    Taste für '2' drücken 
    ('Auf' drücken, um zurückzugehen) 
    ('Ab' drücken zum Beenden) 
    ('Menü' drücken zum Überspringen)

    und VDR reagiert dann nicht mehr auf eine Tastatureingabe.
    Logauszug:


    Interessant ist hier, dass ich 1-9 nicht anlernen wollte und dementsprechend "Menü" gedrückt habe, das log gibt allerdings die letzte Zeile aus, als ob ich "1" angelernt habe und im OSD wird weitergesprungen zum Anlernen der Taste "2". Putty ist auf UTF-8 gestellt, vielleicht liegts irgendwie daran?



    VG Ralph

  • Mh,


    die Defaulteinträge sind aber z.B. sehr hinderlich. Da das remote Plugin per Telnet bedient wird, funktionieren die F1-F4 Tasten nicht. Außerdem, wenn die Funktion in VDR eingebaut ist, sollte sie doch auch funktionieren, oder?


    Gruß Ralph

  • Nimm mich nicht zu ernst, ich will Dich ja nur verstehen. Normalerweise ist doch das Keyboard lokal an dem VDR angeschlossen, den man bedienen will. Will man den VDR auf Rechner A vom Rechner B bedienen, gibt es ja viele Möglichkeiten, zum Beispiel vdr-plugin-live, das geht auch gut, wenn man unter Windows ist. Ist man unter Linux, kann man mit streamdev-client und server arbeiten.


    Ich habe bisher noch nie von dem Fall gehört, dass man einem VDR remote eine Tastatur anlernt. Es erscheint mir deshalb nicht als eine direkt notwendige Vorgehensweise.


    Viele Grüße
    hepi

  • Es fällt auf das "00000000006D0039 = Menu" und "000000000000006D = 1" identisch beginnen.
    Diese ganze Konsolen-Escapecode-Sache ist extrem undokumentiert und wackelig. Vermutlich kommt er deswegen aus dem Tritt, probiere mal testweise andere (und vorallem NUR "normale" (a-z)) Tasten. Dann sollte es gehen.


    cu

  • So,


    hab jetzt mal Monitor und Tastatur angeschlossen (ist im übrigen ein RPi). Das Problem besteht aber immer noch.
    @Keine_Ahnung: Das ist mir auch schon aufgefallen, als "00000000006D0039 = Menu" habe ich eine "normale" Taste verwendet. Hier einfach ein "m". Es schein so zu sein, dass in der "Überspringen" Routine zu wenig Bytes verarbeitet werden?


    Gruß Ralph

  • Ich habe mir den Code (remote.c -> cKbdRemote::ReadKeySequence(void) ) nochmal angeschaut, der dürfte nicht mehr als 0x6D lesen. Nur wenn ein 0x1B kommt wartet er auf weitere Bytes (weil dann ist es eine Escape Sequenz (Sondertaste)).


    Ich vermute mal die Eingaben kommen bei dir nicht vom VDR sondern von irgendeinem Plugin und der Fehler liegt dort!? Kann das sein?


    cu

  • Ich bin so mutig, mich weiterhin einzumischen, obwohl ich eigentlich keine Praxiserfahrungen mit dem Vorgehen habe und wie oben schon erwähnt nicht den Sinn darin sehe, einen VDR auf diese Weise zu bedienen:


    Genutzt wird das remote-Plugin zur Weiterleitung der Tastendrücke. Ich habe gerade mal beim control-Plugin vorbeigeschaut, um zu sehen, was das macht, und im Wiki steht dort unter Tipps (http://www.vdr-wiki.de/wiki/index.php/Control-plugin#Tipps)


    Zitat

    Tipps


    Zugriff mit PuTTY


    Beim Zugriff auf die Konsole mittels PuTTY muss beachtet werden, dass die Funktionstasten im Linux-Format gesendet werden. Die benötigten Einstellungen finden sich im Konfigurationsdialog der Verbindung unter Terminal -> Keyboard und dort "The Function keys and keypad" auf "Linux" stellen.

    Ist das evtl. von Bedeutung?


    Gruß
    hepi

  • hepi: Ich starte VDR einfach nur mit

    Code
    vdr -Pskincurses

    so wie ich Klaus verstanden habe, hat er vor langer Zeit dieses Plugin als Ersatz für die Make Option DEBUGOSD oder so ähnlich eingeführt. Diese benötigst Du, wenn Du kein Ausgabedevice mit OSD zur Verfügung hast. Was ja momentan beim RPi der Fall ist.


    Keine_Ahnung: Da ich für "Menü" die "m" Taste angelernt habe

    Code
    new KBD code: 00000000006D0039 = Menu

    , welche eigentlich keine Escape Sequenz enthalten sollte, sind die 6D0039 schon Verwunderlich, dass der Code so "lang" ist.


    Gruß Ralph

  • Hab jetzt mal in einer existierenden remote.conf nachgeschaut, bei der auch "m" als Menu verwendet wird:

    Code
    KBD.Menu 000000000000006D

    . Es scheint also so zu sein, dass beim Anlernen irgendwie Daten hinten angehängt werden.


    Gruß Ralph

  • Tja, skincurses fragt die Tastatur nicht ab.


    Da kommst du wohl nicht drumherrum einige esyslog in remote.c einzubasteln und rauszufinden was da schief geht.


    cu

Jetzt mitmachen!

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