Webbrowser Mouse Dreamboxtastatur

  • Es jetzte den Webbrowser gibt macht die Mouse auf der Dreamboxtatstaur sinn.


    Im Webrowser kann die Mouse eingeschalktet werden, funktioniert aber nur über die Filetasten.


    Gib es einen Trick und/oder Treiber damit dieser Mouse-Joystik funktioniert?


    Der QT4 Webbrowser konnte das doch.

  • Muss ja nicht stimmen :smiling_face:


    Die erste Frage die zu klären wäre ob auf /dev/input/* events reinkommen wenn man die Maus betätigt, egal ob DMM oder USB

  • Ich weis, bin da ein wenig nervig. Es muss doch irgendwie auslesbar sein, welche codes (mouse) von der Tastatur ausgegeben werden. Diese sollten in die pseudetastenmouse einbinbar sein. Oder?

  • Schau mal als erster Schritt in
    /proc/interrupts nach ob wenn du NUR den Mouse Knubbel bewegst in der Zeile die mit 19: anfängt die Interrupts rauszählen,


    Das sind die interrupts vom rc Treiber.


    Wenn dort nichts kommt hast du wahrscheinlich verloren. Wenn ja ist der nächste Schritt das /dev/input* auszulesen um zu sehen ob und was da kommt wenn enigma2 gestoppt ist.


    wenn ja, dann kannst du dir Plugin schreiben das aus diesen events FB rauf/runter/rechts Links events macht :grinning_squinting_face:


    Man muss nicht für alles Mutti um Erlaubnis fragen ...


    LG
    gutemine

    Einmal editiert, zuletzt von Lost in Translation ()

  • Die Antwort von gutemine ist ein Anfang für mich. Kurze Nachfarge zum auslesen des interupts: die rückmeldung über umlaeitung rausschreiben oder gibt es noch eine optimale lösung?
    Danke
    pitti5

  • schau erstmal mit cat /proc/interrupts | grep 19: ob da überhaupt was kommt.


    Das remote control binary zum Auslesen der FB events ist eh noch irgendwo hier im Bord, sonst muss ich es dir halt posten.

    Einmal editiert, zuletzt von Lost in Translation ()

  • Egal, lag eh auf meiner Harddisk rum - im Anhang ist das remote binary.


    Einfach das binary aus dem remote.tar.gz rausholen um dann auf /sbin/remote FTPen und chmod 755 /sbin/remote mache wenn du dan enigma2 mit init 4 stoppst und remote eingibst werden alle FB events von allen bekannten devices in telnet angezeigt. Einfach testen mit ein paar Tasten und dann halt Mouse bewegen und Moustasten klicken und ggf Output posten ob und was da so reinkommt.


    Binary beendest du in telnet einfach mit CTRL+C am Keyboard.


    LG
    gutemine

  • Mal schnell getestet: Mausknubbel und Maustasten der DMM Tastatur senden eifrig auf /dev/input/event4, die Logitech Funkmaus kommt auf /dev/input/event5 daher

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

  • Na ja das remote binary zeigt dir auch den Integer wert an der gesendet wird, z.B. bei der OK Taste ist das 352


    Jetzt müsstet Ihr mit den Werten die beim Mouse bewegen geschickt werden (rauf/runter und rechts/links) nachsehen ob die überhaupt in der keyids.py drinnen stehen, weil sonst wird das enigma2 sie evt. ignorieren.


    Und nachdem sich enigma2 die FB devices exklusiv krallt geht es nur so das man sich dann die events im python schicken lässt, das remote binary kriegt nur bei gestopptem enigma2 was mit. Wobei man auch das erst testen müsste ob das wirklich so ist, weil enigma2 gibt die FB devices für den browser her der sie sich dann noch extra holt - oder sie werden auch nur weitergeleitet ? Also einfach Browser im enigma2 starten und remote in telnet anwerfen und schauen ob dann noch was ankommt.


    LG
    gutemine

  • ja kommt auch mit laufenden E2 und geöffneten Browser noch was an


    Knubbel als type2 und code1 oder 2; value +20 - -20

    Code
    device: /dev/input/event4 type: 2 code: 1 value: -14
    device: /dev/input/event4 type: 2 code: 0 value: 3


    die Maustasten

    Code
    device: /dev/input/event4 type: 1 code: 272 value: 1
    device: /dev/input/event4 type: 1 code: 272 value: 0
    device: /dev/input/event4 type: 1 code: 273 value: 1
    device: /dev/input/event4 type: 1 code: 273 value: 0


    272 u. 273 findet man nicht in der keyid.py, sieht wohl nicht so gut aus

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

  • Wenn auch mit geöffnetem browser was ankommt dann ist es so wie ich vermutet habe - enigma2 gibt FB device her, Browser holt es sich. Jetzt musst du dir eigentlich nur die equivaleten Keycodes holen - also rauf/runter und rechts/links auf der FB rund ums Ok die ja funktionieren und OK statt der linken Mousetaste, und dann brauchst du nur mehr ein stückchen Software die aus dem einen das andere macht.


    Und das +/-20 ist der Mousespeed, das muss man halt durch eine entsprechende Anzahl von up/down/left/right emulieren damit es flüssig wird.


    Leichter wäre es natürlich DMM würde das in den Handler routinen vom Qt anpassen, aber so gehts theoretisch auch so das in einem eigenständigen Daemon zu mappen. Wenn das FB device ausgelesen werden kann während es läuft ist das alles keine Hexerei.


    Muss mal schauen ob ich noch den source code von der Babelmouse irgendwo auf der Harddisk habe der macht genau sowas.


    EDIT: Ja code wäre noch da, aber das mapping müsstet Ihr mir sagen - also aus welchen Mouse events mit welchen werten und welche FB Events er draus machen soll.

    4 Mal editiert, zuletzt von Lost in Translation ()

  • hab' mal up/down/left/right; rechts/linksklick durchprobiert, Browser war geöffnet


    DMM Tastatur und USB-HID


    Edit:
    wenn ich den Browser mit der FB bediene ("Fadenkreuz") werden von remote keine events empfangen, bzw. wenn, dann extrem verzögert. Egal ob mit der Einstellung mouse on oder off


    Edit2:
    da kommen überhaupt keine events rein, war nur versehentlich an der Box angeschlossenen Maus angekommen ....

  • OK, ich habe aber keine DMM Tastatur. Muss also mal eine USB Mouse suchen. Weil nur mit dem Proggen ist es nicht getan. die 272 und 273 auf 352 zu mappen ist leicht aber die Mousebewegung muss flüssig sein. Die Babelmouse konnte das aber schon damals. Ich schaue mal ob ich den code auf etwas zum Testen umhämmern kann.


    Kann aber ein bisschen dauern, Box nimmt gerade auf.


    Vor allem ist wieder mal die Frage warum schon wieder ICH sowas machen muss. Weil eigentlich ist das 3 Jahre alter Code und das lesen und schreiben ins FB device ist ein längst gelöstes Problem mit dem sich auch andere herumschlagen könnten.


    Nur so ganz verstehe ich das immer noch nicht mit dem keine events - KANNST du jetzt wenn der Browser läuft FB events mit dem rmeote binary empfangen oder NICHT? Und da ist gela ob Tasten oder Mouse - wenn gehen alle oder keine.


    Du darfst es aber ERST starten wenn der Browser läuft NICHT wenn enigma2 läuft. Da binary öffnet die devices nur einmal beim starten und wenn es zu dem Zeitpunkt enigma2 exklusiv hat kann da gar nichts kommen. E2 muss es erst hergegeben haben und der browser (hoffentlich nicht exklusiv) aufgemacht dann kann es funktionieren wenn du dann das remote binary startest.

  • nein, da kommt nichts an, war vorhin versehentlich an die USB-Mouse angekommen (hab' den vorigen Beitrag ein zweites Mal editiert)


    hab's noch mal mit laufenden Browser getestet und der FB rauf, runter, links, rechts, RED, YELLOW und BLUE gedrückt - und am Ende "H" auf der DMM Tastatur, erst da kam dann ein output des laufenden remote binaray

    Code
    root@dm7020hd:~# /tmp/remote
    open /dev/input/event0
    open /dev/input/event1
    open /dev/input/event2
    open /dev/input/event3
    open /dev/input/event4
    open /dev/input/event5
    open /dev/input/event6
    device: /dev/input/event3 type: 1 code: 35 value: 1
    device: /dev/input/event3 type: 1 code: 35 value: 0

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

  • Ist es nicht so das der browser beim Starten schaut ob Tastatur da und wenn ja dann benutzt er diese und eben NICHT die FB.


    Keine Ahnung wie das implementiert ist, das müsst Ihr schon selber rausfinden ...


    Dann müsste man aber die Mouseknubbel events der Tastatur auf die passenden Pfeiltasten und Enter events der tastatur mappen und nicht auf die der Fernbedienung.


    Bei USB Mouse wird es anders sein da der browser diese ignoriert geht sie immer, die Frage ist aber wenn dann KEINE tastatur drann ist ob man diese USB mosue events auf die Remote oder die tastatur mappen muss.


    Probiert es halt aus, vorher macht es wenig Sinn den code anzupassen. Und dann wäre noch die Frage wie es mit USB mouse und USB tastatur ist :smiling_face:


    Und wie schon gesagt ich kann erstmal nur die USB Mouse machen, weil ich nur so ein device zum testen habe.


    Und eigentlich müssten im GIT ja die sourcen vom Qt Browser sein mit dem Anpassungen die DMM gemacht hat - wobei ich nicht weis welche Licenz das Qt Projekt verwendet. Weil es mit zusätzlichem Daemon zu machen könnte zwar laut deinen Tests gehen - ob und wie sinnvoll das ist kommentiere ich jetzt besser nicht :loudly_crying_face:

  • ich habe nur die DMM Tastatur getestet und keine USB-Tastatur. Glaub nicht, dass es an der DMM Tastatur liegt. Woher sollte E2 wissen, dass eine vorhanden ist. Die Treiber werden wohl automatisch geladen.


    Die interrupts kommen auf jeden Fall rein (hab's "mitgezählt"), wenn man eine Taste der FB bei laufendem Browser drückt, nur remote kriegt nichts mit. Ist übrigens auch so, wenn kein browser läuft, also auch beim zappen oder wenn man im Menü rumsurft.


    Scheinbar kommt nur das bei remote an, was von E2 NICHT benutzt wird, wie eben der Knubbel. Ist auch mit einer USB-Tastatur so. remote bekommt einen input, aber mit 5 auf Sender 5 zappen klappt nicht, Eingaben im Browser klappen jedoch.

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

  • Jetzt habe ich schon 2x geschrieben das sich enigma2 die FB exklusiv krallt und du dann parallel zwar das device aufmachen kannst aber keine events zum auslesen sind.


    Es sollte aber wenn dann pro device so sein und nicht pro event.


    Und enigma2 liest beim starten ein welche devices da sind und öffnet diese dann, was man nacträglich ansteckt ist ihm glaube ich egal, deswegen ist die Tastatur von DMM auch nicht wirklich Plug & Play - also bei bedarf andrehen und verwenden so wie ich das verstanden habe.


    Na ja egal, dann muss ich es halt selbst probieren, die Aufnahmen dauern aber noch und wegen eurem Browser Problemchen die ja schon monatelang so sind runiniere ich mir nicht HDR.


    Und wenn ich jetzt böse wäre würde ich schreiben das ich auch 2 Jahre gebraucht habe zu kapieren wie man alle devices aufmacht und sich von allen die events holt, damit es egal ist was und wo man drückt. Der BA Bootmanager kann das nämlich auch erst seit 2 Jahren aber jetzt weis ich das es NICHT so schwer ist :grinning_squinting_face:

    Einmal editiert, zuletzt von Lost in Translation ()