Idee für FB Konfiguration

  • Hallo zusammen,


    yaVDR erleichtert die Einrichtung eines VDRs ungemein. Mit XBMC ist jedoch die Fernbedienungskonfiguration nicht leichter geworden.


    Gerade ist mir eine Idee gekommen, wie die Konfiguration mit Hilfe des yaVDR Webfrontends noch leichter werden könnte:


    1. Alternative
    1.1 Über das Webfrontend wird, wie auch jetzt schon, eine lircd.conf hochgeladen.
    1.2 yaVDR generiert aus der lircd.conf die Dateien:
    - remote.conf
    - Lircmap.xml
    - keymap.xml


    Eventuell wäre es sinnvoll/notwendig, wenn man bezüglich der Bennenung der in der lircd.conf definierten Befehle Vorgaben macht, da ansonsten die Generierung der Dateien schwer möglich werden wird.
    Eine passende lircd.conf zu erstellen ist für den User aber erheblich leichter als alle Dateien manuell generieren zu müssen.


    2. Alternative
    User senden passende Konfigurationsdateien an einen Konfigurationsdateien Maintainer. Von diesem können die Dateien dann über das yaVDR Webfrontend heruntergeladen werden.
    Ob man den Prozess vollständig automatisieren kann... ich denke dass ist nicht leicht, da die Userdaten dann durch einen Syntax Check laufen müssen. Das halte ich für nicht leicht.
    Wenn sich jedoch ein Maintainer fände, der diese Arbeit übernimmt, so wäre dies sicherlich eine sehr userfreundliche Lösung.



    Ich werde mir gleich mal die 1. Alternative vorknüpfen. Ich kann allerdings nichts versprechen, da ich momentan zeitlich sehr begrenzt bin. D.h. ich würde mich sehr freuen, wenn jemand die erste Alternative noch vor mir umsetzen könnte.


    Gruß
    Wicky


    P.S. ...wie denken die yaVDR Macher über eine solche Lösung?

  • Zitat

    Original von Wicky
    P.S. ...wie denken die yaVDR Macher über eine solche Lösung?


    Die Idee ist uns nicht völlig fremd. Zu meiner Schande muss ich gestehen, dass ich keinen riesigen Druck verspürt habe das Thema vorrangig anzugehen, weil mit meiner Fernbedienung XBMC out of the Box funktioniert. Ich muss gar nichts machen.


    Die 2. Methode würde ich vorziehen. Wenn ich in den gelieferten Dateien ein System erkenne, dann kommt die Lösung 1.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Hallo gerald,


    Zitat

    Original von gda
    Zu meiner Schande muss ich gestehen, dass ich keinen riesigen Druck verspürt habe das Thema vorrangig anzugehen, weil mit meiner Fernbedienung XBMC out of the Box funktioniert.


    Ja, aber leider haben nicht alle User das Glück. Und da ihr mitlerweile viele Installationsschritte automatisiert habt, werdet ihr mit der Zeit vielleicht auch Interesse finden solch eher kleineren Probleme lösen zu wollen, bzw. seit glücklich wenn User das Problem angehen.


    Zitat


    Die 2. Methode würde ich vorziehen. Wenn ich in den gelieferten Dateien ein System erkenne, dann kommt die Lösung 1.


    Ich hatte mal das Menü geführte Skript "select-remote" Aufruf: lircd.conf und remote.conf gesucht !! geschrieben.


    Meine Erfahrung hierzu:
    Obwohl ich den Usern relativ klar gesagt habe, in welcher Form ich die Daten benötige, so bekam ich teilweise Daten, die ich doch recht stark manuell bearbeiten musste. Der Arbeitsaufwand war also nicht gerade klein.


    Eventuell müsste man restriktiver die Daten einsammeln...


    Mein persönliches Fazit wäre daher, dass der erste Ansatz Erfolg versprechender ist, da er weniger Maintaining benötigt.


    Gruß
    Wicky

  • Zitat

    Original von Wicky
    Mein persönliches Fazit wäre daher, dass der erste Ansatz Erfolg versprechender ist, da er weniger Maintaining benötigt.


    Du hast natürlich recht, wobei ich mich für das maintainen allerdings auch nicht gemeldet hätte ;).


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Zitat

    Original von Wicky
    Meine Erfahrung hierzu:
    Obwohl ich den Usern relativ klar gesagt habe, in welcher Form ich die Daten benötige, so bekam ich teilweise Daten, die ich doch recht stark manuell bearbeiten musste. Der Arbeitsaufwand war also nicht gerade klein.


    Da fällt mir mein Versuch ein, eine asound.conf in einer bestimmten Form zu finden, mit der jeder HDMI-Sound bekommt. Ich bin kläglich gescheitert, erschreckend wenig haben sich an die Randbedingungen gehalten.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Für den Anfang würde es auch reichen wenn man an der Stelle wo man jetzt schon /var/lib/vdr/remote.conf hochladen kann auch:


    lircd.conf
    Lircmap.xml
    keymap.xml


    hochladen kann. Dies würde zumindest Umsteigern einiges erleichtern und diese müssten nicht an mehreren Stellen arbeiten. (webfrontend und WinSCP)


    hardware.conf wird ja durch die Auswahl unter Lirc schon erzeugt.
    Warum ich in meinen Fall unter Verwendung eines serial Empfängers /etc/serial.conf anlegen musste da "/dev/ttyS0 uart none" aus "/var/lib/setserial/autoserial.conf" nicht klappen wollte müsste einer der Entwickler klären. Bei einen "normalen" Ubuntu 9.10 klappt das aus autoserial.conf

    HW1: Tyan S2915|2x AMD Opteron 2216 HE|pcie 8400GS|TeVii S470 |LSI 8888ELP|SAS Expander|15x2TB mit mhddfs|32" SONY 32EX705
    HW2: Zotac ION|Tevii S650|Samsung 60GB 2,5"|HDMI an 52" Toshiba
    SW 1-2: Xubuntu 10.4, VDR 1.7.14, xine-vdpau, xbmc

  • Ich denke das sich das über Lirc Namespaces weitestgehend lösen liesse. Dann müsste man sich nur noch in Ausnahmefällen auf einen Namen für eine Taste einigen.


    Leider sind die von lirc mitgelieferten Konfigurationen in dieser Hinsicht eher wenig brauchbar.


    Beispiel (meine FB noch nicht fertig):


    Evtl müsste man um die Referenz nicht zu verlieren, die eigentlichen Namen auf der FB als Komentar dahinterschreiben. Damit dürfte die lircd.conf nach Bedeutung gefüllt sein und somit das auswählen/hochladen einer lircd.conf genügen.


    Ich bin mir jetzt nicht sicher ob das nicht eine Mischung aus 1. + 2. ist ;)


    Das war für mich aus unserer Diskussion die preferierte Lösung. In der Hoffnung das Upstream zumindest anbieten zu können - sonst zumindest für yavdr zu benutzen.


    Dies würde aber Unterstützung von möglichst vielen Benutzern erfordern.

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Hallo steffen,


    ... ich denke die Kombination aus 1. und 2. die du vorschlägst, wäre sehr userfreundlich und relativ gut zu maintainen.


    Eine Kombination der Alternativen war mir auch in den Kopf gekommen, aber ich hatte dabei nicht bedacht, dass man dann nur noch die lircd.conf benötigt, was die Sache erheblich vereinfacht.


    Eine kleine Komplikation gibt es dann aber immer noch: Manche lird.confs von Universal FBs funken nur wie in der lircd.conf beschrieben, wenn sie mit einem bestimmten Code in Betrieb genommen werden.
    Aber ich denke, das ist eher ein kleineres Problem.


    Wenn man das Problem lösen möchte, so schweben mir folgende Schritte zur Lösung vor:
    1. Skript schreiben, dass aus der lircd.conf die übrigen Dateien schreiben kann.
    2. Namespaces für die lircd.conf festlegen.
    3. Skript testen und verbessern.
    4. Updload und Downloadmöglichkeit für die lird.conf schaffen


    Falls ich Zeit für 1. finde dann werde ich mich der Sache mal annehmen. Aber gut sieht es hierfür nicht aus.


    Daher mein Aufruf an die Coder:
    Fühlst du dich von diesem Problem herausgefordert? Willst du der VDR-Comunity helfen?
    Ja, dann schreibe doch bitte für uns das beschriebene Skript.


    Mein Dank ist dir sicher !!


    Gruß
    Wicky

  • Hallo zusammen,


    ich hab mir gestern noch ein paar Gedanken zum Thema gemacht. Dabei habe ich gemerkt, dass die Lösung des Problems vermutlich erheblich einfacher ist als gedacht. :schiel


    Die modifizierte Idee:
    1. Die Distributionsbäcker legen eine Lircmap.xml bei, die eine Section mit folgender Remote-Definition enthält:

    Code
    <remote device="User-Remote">


    Diese Section der Lircmap.xml sollte alle denkbaren Lirc Kommands in normierter weise enthalten.
    Eine ebenfalls beigelegte keymap.xml und remote.conf sollte mit den Definitionen harmonieren.


    2. Ich schreibe ein Skript, das aus einer nicht normierten lircd.conf eine zu 1. passend normierte lircmap.xml generiert. In den meisten Fällen sollte dies möglich sein, da sich "key_1", "ONE" "key_one" oder auch "One" wunderbar dem normierten Wort "1" zuordnen lassen.
    Außerdem schreibt es in die lircd.conf als Namen der FB: "User-Remote"


    Das beschriebene Skript lässt sich für folgende Dinge verwenden (am Beispiel yaVDR):
    1. Der User lädt seine lircd.conf im yaVDR Webfrontend hoch und yaVDR normiert die lircd.conf passend.
    2. Die in den lirc Sourcen enthaltenen (ich vermute rund 100 Dateien) lassen sich mit dem Skript normieren. Mit Hilfe dieser normierten lircd.confs erhalten die Distributionsbäcker die Möglichkeit den Useren nicht nur den IR-Empfänger sondern auch den IR-Sender (Fernbedienung) aus einer Liste auswählen zu können.


    Einschränkungen:
    1. Bei Univsersal-FBs muss die FB mit einem bestimmten Code in Betrieb genommen werden, da mit die eventuell ausgewählte lircd.conf funktioniert. Diese Problematik tritt jedoch nur auf, wenn der User keine lircd.conf hat.


    2. Eventuell heißt das durch die Taste 1 der FB ausgelöste Event in der lircd.conf "xddafd". Dann ist die Normierung nicht möglich. Ich denke, ein solcher Fall sollte aber recht selten vorkommen.


    @all
    Habe ich einen Denkfehler in meinen Überlegungen?
    Wie sieht es mit der Bereitschaft aus, diese Lösung zu unterstützen?


    Die Programmierung eines solchen Skriptes halte ich nicht für sonderlich schwierig und ich könnte mir vorstellen, dass ich ein solches demnächst schreiben kann.


    Gruß
    Wicky

  • Kann man diese Seite als Reverenz für den namespace bedrachten ?


    Ich würde meine lircd.conf für eine X10 und eine X360 remote gerne konform gestalten. Das Beispiel von steffen_b weiter oben dürfte ja auch eine X10 sein.

    HW1: Tyan S2915|2x AMD Opteron 2216 HE|pcie 8400GS|TeVii S470 |LSI 8888ELP|SAS Expander|15x2TB mit mhddfs|32" SONY 32EX705
    HW2: Zotac ION|Tevii S650|Samsung 60GB 2,5"|HDMI an 52" Toshiba
    SW 1-2: Xubuntu 10.4, VDR 1.7.14, xine-vdpau, xbmc

  • Hallo Chello,


    Zitat

    Original von Chello
    Kann man diese Seite als Reverenz für den namespace bedrachten ?


    Was meine Anstrengungen anbelangt:
    Ich betrachte sie ab sofort als Reverenz !!


    Chello: Danke für den Link. So wird es möglich, dass ich mich an Konventionen halte.


    Gruß
    Wicky

  • Ich habe das als Vorlage/Referenz genommen, auch wenn das zuviel Auswahl bietet:
    http://www.gelato.unsw.edu.au/…rce/include/linux/input.h


    Und ein paar Statistiken:
    http://arnaud.quette.free.fr/lirc/lirc-conversion.html


    Ja meine FB ist eine X10. Die Linke hier : http://www.vdr-wiki.de/wiki/in…p/Fernbedienung_-_USB_X10

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

    Einmal editiert, zuletzt von steffen_b ()

  • Zitat

    Original von steffen_b
    Ich habe das als Vorlage genommen, auch wenn das zuviel Auswahl bietet:
    http://www.gelato.unsw.edu.au/…rce/include/linux/input.h


    Und ein paar Statistiken:
    http://arnaud.quette.free.fr/lirc/lirc-conversion.html


    ...wow, das ist für mein Vorhaben eine Goldgrube.


    Danke,
    Wicky

  • Ich weiß das es wahrscheinlich überholt ist, will dennoch mal hier anknüpfen :) - da eine schöne Lösung ja noch nicht gefunden wurde :)


    In diesem Bereich ändert sich ja momentan recht viel (kernel 2.6.37++)


    Zum einen gibt es eventlircd. Ich hab das mal kurz (!!) ausprobiert und sieht soweit schon gut aus.


    Idee des eventlircd ist einen daemon zu starten der dann per hotplug input Geräte verarbeiten kann. Das hotplug funktioniert über udev, wenn die udev rule passt dann wird das Gerät vom eventlircd aufgenommen. Im eventlircd kann man (auch per udev) auch ein mapping und einen Remote Namen zuweisen.


    lircd kann angewiesen werden seine Tasten per uinput ans input framework aus dem user space zu geben.


    Weitere Infos: Die Fernbedienungen im v4l/DVB Framework laufen demnächst über rc-core. Einige lirc Treiber wurden umgeschrieben rc-core zu benutzen, weitere sollen folgen.


    Man bekäme also:
    - alle rc-core
    - bekannte input taugliche Fernbedienungen
    - bekannte lircd USB Fernbedienungen wenn 1.) die lircd namespace-konform ist und 2.) man lircd beim einstecken eines solechen gerätes per udev startet mit den richtigen optionen (können mehrere lircd gleichzeitig laufen?)


    Per Hotplug und ohne weitere Einrichtung ans laufen. Über die evdev mappings von eventlircd kann man die FB einigermassen gleich schalten.


    Mal schauen wie weit man damit kommt, man müsste mal schauen, was neben lirc-serial noch so usermappings über lircd.conf braucht und wie weit die lirc treiber schon sind.


    Ich hab auch keinen überblick welche FB da draussen im Einsatz sind. Ich vermute relativ viel
    - imon
    - atiusb
    - mceusb


    mit diesen dürfte man schonmal so 20%(??) erschlagen.


    Dann noch - lirc-serial ...


    Musste meine Gedanken dazu mal loswerden ... klingt nach einem interessanten Ansatz.

    VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

  • Hi!


    Der Ansatz hier wäre ja eine wunderbare Sache.


    Wicky: So ein Skript zum Vereinheitlichen von lircd.conf-Dateien gibt es noch nicht oder?


    Ich müsste in nächster Zeit mein Setup auf 3 weitere VDRs verteilen und da wäre es natürlich schön wenn ich gleich schon die Fernbedienungen vereinheitlichen könnte. :)


    Gruß,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

  • Hi!


    Also ich habe mich heute einmal daran versucht die Fernbedienungs-Konfigs für VDR und XBMC für mich zu vereinheitlichen.


    Damit funktionieren jetzt parallel folgende Fernbedienungen:
    [list=1]
    [*]Logitech Harmony mit Profil "harmony_kls_vdr_1.6"
    [*]Technotend Fernbedienung
    [*]die kleine Hauppauge Fernbedienung
    [*]Pollien X10 Fernbedieung
    [/list=1]


    Dazu habe versucht, dass die Grundfunktion mit allen Fernbedieungen erledigt werden kann. Bei der kleinen Hauppauge wird das schon schwierig, aber die ist nur für den "Notfall".
    Die verbleibenden Funktionen habe ich dann versucht möglichst sinnvoll zu verteilen.


    In Lirc habe ich immer die gleichen Namen vergeben. Im Kommentar sind jeweils die richtigen Bezeichnungen der Tasten angegeben, sodass man die auch ggf. umordnen kann.
    Dadurch funktiioniert VDR schon automatisch mit allen Fernbedieungen, da er ja nicht auf die Fernbedieungs-Bezeichnung achtet.


    Damit XBMC auch alle Fernbedieungen kennt, muss man eine Lircmap.xml erstellen. Da bin ich mir zwar nicht sicher, aber ich denke da kommte man nicht darum herum, dass die für jede Fernbedienung erstellt wird. Früher hatte ich immer eine individuelle Keymap.xml. Die ist ja sehr umfangreich und kann bis ins Detail selbst angepasst werden, allerdings finde ich, dass die Standardeinstellung eigentlich sehr vernünftig ist.
    Ich habe einfach versucht, möglichst viele der nützlichen Button-Strings mit den Fernbedienungen abzudecken:
    http://wiki.xbmc.org/index.php…Keymap.xml#Remote_Section


    Für die meisten Tasten ist die Bedeutung in VDR und XBMC eigentlich recht eindeutig. In XBMC haben allerdings die Farbtasten eigentlich keine Bedeutung. Ich habe deshalb Gelb so eingestellt, dass die Videos in XBMC angezeigt werden. Das habe ich in der keymacros.conf von VDR nämlich auch so eingestellt: hier werden die Aufzeichnungen aufgelistet.
    Die restlichen Farben habe ich für display, title und start verwendet. Das passt anders auch nicht wirklich besser.


    Was ich recht praktisch finde, ist dass ich mit einem Tastendruck zwischen VDR und XBMC wechseln kann. Dazu habe ich in Lirc eine Taste als "user1" definiert. Diese ist auch in VDR so angelernt und führt dann ein Keymakro aus, das XBMC startet. In XBMC ist dann diese user1 taste auf den power-Button-String gemappt, womit ich wiederum mit einem Tastendruck nach VDR wechseln kann.
    D.h. die power-Taste ist nur in VDR aktiv, da man eigentlich nur hier kontrolliert herunterfahren kann.


    Ich habe mal für alle - die es interessiert - die relevanten Dateien angehängt. Vielleicht hilfts ja jemandem. Und notfalls hilft es mir wieder, wenn ich in ein paar Monaten wissen möchte was ich mir dabei gedacht habe. :)


    Gruß,
    Brougs78

Jetzt mitmachen!

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