[0.4-pre2] serial: lirc vs. eventlirc

  • Ich habe gerade mal 0.4-pre2 angetestet habe aber meine FB nicht zum laufen bekommen (attric serial).
    Nach einigem probieren ist mir dann aufgefallen, dass das lirc startscript seinen Socket nach /var/run/lirc/lircd.$$ (also prozess ID) schreibt, aber eventlirc /var/run/lirc/lircd öffnen will.

    Ist das ein Feature dessen Sinn ich noch nicht verstanden habe oder ein Bug?

    Habe als Workaround jetzt mal in /etc/init/lircd.conf geändert:
    REMOTE_ARGS="--output=$REMOTE_SOCKET.$$ $REMOTE_ARGS" -> REMOTE_ARGS="--output=$REMOTE_SOCKET $REMOTE_ARGS"
    und damit flutscht es

  • Ist das ein Feature dessen Sinn ich noch nicht verstanden habe oder ein Bug?


    Ersteres. Und es gab auch schon ettliche Thread dazu ;)
    Da ab yaVDR 0.4 eventlircd verwendet wird, ist lirc nur noch ein Zuspieler, der die Eingaben an eventlircd weiterleitet. Für den Atric braucht es folgendes: http://dl.dropbox.com/u/960809/yaVDR_doc.html#lirc_serial (ggf. Encoding im Browser auf UTF-8 umstellen, das ist ein Dropbox-Problem mit den Umlauten)
    Die lircd.conf muss sich bei den Tastennamen an der Belegung in der remote.conf orientieren.

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Das gass jetzt mit eventlirc geht weiß ich, hast Du auch mein Post gelesen oder nur die Überschrift?

    Außer der Beschreibung (und auch den anderen Posts hier zum Thema) geht meiner Meinung nach nicht hervor, wie eventlirc mit lirc kommuniziert wenn da unterschiedliche sockets konfiguriert sind...

  • Also lircd wird mit --uinput (Userland input) gestartet, damit taucht es als Eingabegerät unter /dev/input/event<X> auf. Eventlircd übernimmt dann die Tastenevents von Lircd und gibt sie über den Socket /var/run/lirc/lircd an den VDR weiter.

    Mit deiner Änderung umgehst du nur eventlircd, da du lirc direkt in den Socket /var/run/lirc/lircd schreiben lässt, den der VDR dann als Fernbedienung ausliest.

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Außer der Beschreibung (und auch den anderen Posts hier zum Thema) geht meiner Meinung nach nicht hervor, wie eventlirc mit lirc kommuniziert wenn da unterschiedliche sockets konfiguriert sind...


    Das geht deshalb aus den Posts nicht hervor, weil eventlircd ÜBERHAUPT NICHT über Sockets mit lirc kommunziert sonder über Input-Events. Das hat seahawk1986 versucht zu erklären. Eventlircd versucht /var/run/lirc/lircd auch nicht zu öffenen um daraus zu lesen sondern um dahin zu schreiben,
    Schließlich muss eventlircd als Ersatz von lircd diesen Socket für die zu steuernden Programme zur Verfügung stellen.

    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

  • Was genau versuchst du denn? Magst du dein Problem mal in seiner Ganzheit beschreiben? "Flutscht" ist nicht so hilfreich zur Problemfindung...

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ok, das macht natürlich Sinn, dann muß ich wohl weitersuchen, warum ich meine Tastendrücke zwar mit irw sehe (im neuen Namespace) aber nicht mit evtest auf dem input-device...


    Der Sinn des Ganzen ist ja gerade, dass bei irw die Tasten auftauchen sollen. Nur wenn sie es nicht tun muss man evtest zur Hilfe nehmen um zu sehen wo sie bleiben. Die reine Logik sagt, wenn irw von eventlircd offensichtlich die Tastendrücke bekommt, dann muss eventlircd auch die Input-Events bekommen, wo sollte denn irw seine Informationen sonst her bekommen?

    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

  • Was genau versuchst du denn? Magst du dein Problem mal in seiner Ganzheit beschreiben? "Flutscht" ist nicht so hilfreich zur Problemfindung...


    Ich versuche auf yavdr 0.4-pre2 zu migrieren von einem bestehenden vdr (Gentoo-basiert, alles selbstgebacken) Setup.
    Ich habe einen Atric Serial Empfänger (Homebrew an ttyS0, auch alles entsprechend konfiguriert) mit einer Harmony 885. Die Configs die ich vorher benutzt haben entsprechen dem VDR-Wiki Eintrag für Harmony "KLS VDR 1.6"

    Ich habe die Codes dafür sogar selbst generiert, von Logitech einpflegen lassen und remote.conf und lircd.conf ins Wiki geladen. Ich weiß dass eine Menge Leute dieses Setup nutzen, da ich regelmäßig Rückfragen dazu erhalte (insbesondere zu nicht funktionierenden "UserX" Keys auf bestimmten Harmonys). Ich habe im Prinzip nichts gegen eventlircd ich verstehe nur einige Aussagen nicht, dass pauschal davon ausgegangen wird, dass die Leute sowieso kein serial mehr benutzen sondern auf USB gehen. Dem ist definitiv nicht so, ich habe schon für viele Freunde vdr's zusammengebaut und administriere die meisten davon noch heute und ich empfehle jedem Atric. Diejenigen die lieber mit den eingebauten IMON in bestimmten Gehäusen vorlieb genommen haben, hatten die meisten Probleme...

    gda: Die Tests mit irw waren mit einem lircd direkt auf /dev/lirc0 um zu sehen ob da überhaupt etwas ankommt, weil ich auch gleichzeitig etwas an der Hardware geändert hatte. Ich gehe jetzt nochmal Schritt für Schritt alles durch und suche den Fehler, wenn ich nicht weiterkomme werde ich nochmal genauer nachfragen, im Moment kann ich auch nicht mehr sagen als dass es bei meinen Tests vorhin nicht ging und weil ich der Meinung war dass lircd mit eventlircd über Sockets kommuniziert dachte ich mein Quickhack wäre die Lösung, dabei umgeht er nur das Ganze.

  • Ich habe im Prinzip nichts gegen eventlircd ich verstehe nur einige Aussagen nicht, dass pauschal davon ausgegangen wird, dass die Leute sowieso kein serial mehr benutzen sondern auf USB gehen.


    Mein Traum ist nun mal Zeroconf im yaVDR. Da Zeroconf mit serial nicht machbar ist, stören diese User meine Wunschträume. Ich habe mich allerdings damit abgefunden über das Webfrontend serielle Empfänger konfigurierbar zu machen. Es ist möglich, dass das noch nicht gut funktioniert, aber da sind dann eben die Benutzer dieser Empfänger gefragt zu helfen das zu perfektionieren.

    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

  • Ich habe die Codes dafür sogar selbst generiert, von Logitech einpflegen lassen und remote.conf und lircd.conf ins Wiki geladen. Ich weiß dass eine Menge Leute dieses Setup nutzen, da ich regelmäßig Rückfragen dazu erhalte (insbesondere zu nicht funktionierenden "UserX" Keys auf bestimmten Harmonys). Ich habe im Prinzip nichts gegen eventlircd ich verstehe nur einige Aussagen nicht, dass pauschal davon ausgegangen wird, dass die Leute sowieso kein serial mehr benutzen sondern auf USB gehen. Dem ist definitiv nicht so, ich habe schon für viele Freunde vdr's zusammengebaut und administriere die meisten davon noch heute und ich empfehle jedem Atric. Diejenigen die lieber mit den eingebauten IMON in bestimmten Gehäusen vorlieb genommen haben, hatten die meisten Probleme...


    Ich habe auch nichts gegen die Atrics und selber einen im Einsatz...

    Für yaVDR 0.4 gibt es zwei Besonderheiten, wenn man einen Lirc-Empfänger nutzen will (ich weiß nicht inwieweit du deine Konfig schon darauf hin angepasst hast):

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Was sich halt nur mit USB realisieren lässt, ist: Anstecken läuft. Wenn es hier einen kaufbaren Ersatz geben würde der auch als USB Empfänger den rechner einschalten kann wäre das zu bevorzugen. Weiterhin gibt es immer mehr Mainboards die keine serielle Schnittstelle haben (So wie mein Board) .

    Status Quo:
    Wenn man einen USB Empfänger mit FB nimmt den es teilweise für 10€ gibt - und wake on usb + S3 bekommt man potentiell etwas was OotB läuft und einem Attric in kaum etwas nachsteht.

    Was kostet dagegen ein Attric + Harmony ? Also so eine uneingeschränkte Empfehlung ist der Attric imho nicht. Gerald hat es halt etwas drastischer ausgedrückt.

    Zurück zum Thema:
    Müssten nicht schon verschiedene lircd.conf's hier rumschwirren die man einfach hochladen kann und geht ? Grade in Zusammenhang mit der Harmony wäre es doch sinnvoll sich hier auszutauschen. Evtl. wäre es auch denkbar 1-2 lircd.confs mitzuliefern (Müsste man mal durchspielen - wie schon geschrieben ich kann es nicht testen)

    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

  • Ach die "Event Spalte"... darauf muß man erstmal kommen, ich habe die linke Spalte benutzt, vielleicht sollte man das man mal nach "alt" -> "neu" umbenennen.

    Jetzt klappt es mit angehängter lircd.conf ich werde die auch ins VDR-Wiki hochladen, die könnte ihr auch gern mit in die Distribution packen, paßt zum Harmony-Profil "KLS VDR 1.6"


    Nochmal zum Verständnis:

    IR Befehle -> Serial-Receiver (z.B. Atric/Homebrew) an /dev/ttySx -> lircd (Ausgabe an nicht benutzen Socket in /var/run/lirc/lircd.$$ sowie uinput/event) -> event-Schnittstelle (/dev/inut/eventX), ggf. mit mapping -> eventlircd (lauscht auf Events im definierten Namespace) -> vdr (remote.conf muß zum Namespace passen)

    An welcher Stelle kann man debuggen?
    - "irw /var/run/lirc/lircd.$$" -> kommen die IR Events beim lircd an, passen die Tastencode (sollte KEY_* sein)
    - "cat /proc/bus/input/devices" -> es muß ein input device mit dem Namen "lircd" auftauchen (nicht nur eventlircd)
    - wie kann man jetzt testen ob die lirc events auch am event interface ankommen? Wenn ich den eventlircd kille startet er neu, stoppe ich ihn wird auch lircd gestoppt. Wenn ich es richtig verstehe könnte man ein evtest auf das lircd input-event device starten um zu kontrollieren ob was ankommt
    - "irw /var/run/lirc/lircd" -> das sind die Tastendrücke die nachher auch der vdr "sieht", entsprechend remote.conf (nicht verändern) werden die entsprechenden Aktionen ausgeführt

    Edit: lircd.conf gelöscht, waren noch einige Tasten falsch

    Edited once, last by Razorblade (October 23, 2011 at 4:40 PM).

  • Ach die "Event Spalte"... darauf muß man erstmal kommen, ich habe die linke Spalte benutzt, vielleicht sollte man das man mal nach "alt" -> "neu" umbenennen.


    Die Linke Spalte ist der VDR-Interne Name für die Tasten in der remote.conf, das ist seit Urzeiten so - siehe http://vdr-wiki.de/wiki/index.php/Remote.conf Im Prinzip ist die Tabelle ja nichts anderes als ein Teil der remote.conf mit der Tastenbelegung für die 0.4 ...

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Tja, Anleitungen sind immer etwas problematisch, wenn der Schreibende voraussetzt, dass man weiß wie es funktioniert :unsch

    Wenn du gute Ergänzungsvorschläge für die Abschnitte zur Fernbedienung (http://www.yavdr.org/documentation/de/ch02s02.html) bzw. den Lirc-Empfängern (http://www.yavdr.org/documentation/…l#Serial-Remote) in der yaVDR-Doku aus Sicht eines Einsteigers in dieses komplexe Thema hast, würde ich mich freuen.

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich würde mich nicht als Einsteiger in dem Thema sondern als Einsteiger in yavdr (und ein bißchen und Debian/Ubuntu, arbeite sonst privat mit Gentoo und beruflich mit RHEL) bezeichnen und genau das ist denke ich das Problem. Wenn ihr irgendwo intern definiert dass der Namespace sich ändert (immerhin macht es vdr ja wie selbst gesagt seit Ewigkeiten mit Lirc.xxx) dann sollte auch klar gezeigt/beschrieben werden an welcher Stelle die Änderungen nötig sind, damit jemand der sich zwar mit vdr, lircd und Linux generell auskennt auch auf eure Schiene kommt.

    Bitte nicht als Kritik verstehen, ich finde yavdr sehr gut und werde es auch für zukünftige Installationen bei Freunden nutzen. Aber ich bin seit mittlerweile über 9 Jahren mit dem vdr unterwegs und das nicht nur als Benutzer, also entschuldigt bitte meine "Ignoranz" gegenüber "ist eben so", ich will es verstehen, damit ich auch anderen helfen kann, bzw Probleme debuggen kann.

    Edited once, last by Razorblade (October 23, 2011 at 1:49 PM).

  • Bitte nicht als Kritik verstehen, ich finde yavdr sehr gut und werde es auch für zukünftige Installationen bei Freunden nutzen. Aber ich bin seit mittlerweile über 9 Jahren mit dem vdr unterwegs und das nicht nur als Benutzer, also entschuldigt bitte meine "Ignoranz" gegenüber "ist eben so", ich will es verstehen, damit ich auch anderen helfen kann, bzw Probleme debuggen kann.


    Ich bin für Anregungen, Beiträge und Konstruktive Kritik dazu sehr dankbar. Ich wollte dir auch nicht unterstellen, dass du keine Ahnung vom VDR hast, sondern dass sich mit der 0.4 und dem Umstieg auf Eventlircd vieles geändert hat, was die Fernbedienung betrifft. Meine Dokumentation dazu hat genau das Ziel die Interna des yaVDR besser zu beleuchten (weil die Entwickler verständlicherweise lieber am System basteln als aufzuschreiben was sie machen) - aber wie ich zunehmend merke ist es schwer alles Einfließen zu lassen, was der Einsteiger in das Thema an zusätzlichen Informationen benötigt. Und wenn man alles alleine machen muss, dauert es halt lange, bis es an einem Punkt angekommen ist, wo alles verständlich erklärt wird - zumal das Troubleshooting mit vielen neuen Unklarheiten bei den "echten" Einsteigern erst ab heute losgehen wird...

    Meine VDRs

    VDR 1: Intel DH67BL, Celeron 540, 4 GB Ram, POV Geforce GT 1030, Ubuntu 24.04 (yavdr-ansible), VDR 2.7.4, CIR-Empfänger
    VDR 2: Acer Revo 3610, Pinnacle PCTV SAT 452e, Medion X10, yaVDR 0.6
    Client 1: Raspberry Pi 2, Ubuntu 22.04 (yavdr-ansible), VDR 2.6.1

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!