ansible KODI beenden per Fernbedienung funktioniert nicht/endet mit Crash

  • Hi,


    hab erfolgreich yaVDR ansible auf meinem J3455 installiert und nach ein paar kleinen Problemen (kein Ton/kein Bild beim boot ohne TV), die ich dank des Forum lösen könnten, läuft er soweit sehr gut. Dafür an dieser Stelle vielen Dank!


    Leider gib es jedoch ein Problem beim beenden von KODI via Ferbedieunung. Wenn ich den PowerKey meiner Hama MCE drücke, passiert folgendes:

    - Endweder ich lande im "Frontend detached" Bildschrim, drücke dann eine Taste und bin dann wieder in KODI, drücke nochmal Power und ende in der Shell

    - oder ich laden direkt in der Shell


    Dummerweise lässt sich der Rechner wenn ich in der Shell geladet bin dann nur noch Hard-Resetten, regulärer reboot via SSH oder Shell ist dann nicht mehr möglich.


    KODI "zu Fuß", also über das Powermenü beenden funktioniert so wie es soll.


    Vielleicht noch relevant, Pulseaudio hab ich rausgeworfen und "-a hw:0,3 & -p hw:0,3" in der 50-softhddevice.conf eingetragen.

    Hat jamend eine Idee woduch diese Verhalten kommt und was ich dagegen machen kann?


    Gruß HrzM

  • Bei yavdr-ansible verhält sich KEY_POWER2 etwas anders und es passiert mehr als nur KODI zu stoppen - das Frontend-Skript reagiert da standardmäßig zusätzlich darauf und versucht mit einer kleinen Verzögerung den Shutdown über den VDR einzuleiten.


    Wenn das gerade nicht sinnvoll möglich ist (z.B. weil der VDR gerade etwas besseres zu tun hat wie laufende Aufnahmen), dann bleibt das gerade gewählte Frontend gestopppt/detached und das Hintergrundbild geändert und es werden regelmäßig ein erneute Shutdown-Versuche gestartet, was durch das Drücken von Tasten auf der Fernbedienung abgebrochen werden kann. In dem Fall wird das gewählte Frontend wieder gestartet/attached.


    Man kann dem Frontend-Skript sagen, dass es nicht auf KEY_POWER2 reagieren soll (dann mischt es sich beim Druck auf KEY_POWER2 nicht mehr ein, dadurch wird aber z.B. auch das VDR-Frontend nicht mehr detached, wenn es gerade aktiv ist und der VDR nicht unmittelbar herunterfahren kann) - dazu müsstest du in der /etc/yavdr-frontend/config.yml den Eintrag für KEY_POWER2 entfernen (also z.B. Zeilen 89-90 auskommentieren oder einen ungenutzten Tastennamen statt KEY_POWER2 setzen).

    Code
    1. lirc:
    2. socket: /run/lirc/lircd
    3. keymap:
    4. KEY_POWER2:
    5. action: poweroff

    Für was Wechseln zwischen KODI und dem VDR-Frontend, kannst du auch eine Taste auf der Fernbedienung belegen - in der /var/lib/vdr/.lircrc gibt es dafür bereits eine Vorlage - da musst du dann noch den gewünschten Tastennamen statt KEY_HOME setzen - die Taste links oben mit dem e im Kreis auf der Hama MCE liefert z.B. KEY_CHANNEL (den Eintrag dafür in der /var/lib/vdr/remote.conf sollte man in dem Fall bei gestopptem VDR entfernen).

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich benutze die Ausschalten-Taste der PC-Fernbedienung (bzw. des VDRs) zum Ausschalten des Rechners.

    Zum Umschalten zwischen Kodi und yaVDR benutze ich eine andere Taste (default: KEY_HOME).

    Und wenn Kodi gerade an ist, dann ist das quasi wie ausschalten von Kodi - und zurück zum VDR.

    Wenn ich den VDR dann ganz abschalten möchte, benutze ich KEY_POWER2.

    Würde also an deiner Stelle in Kodi einfach nicht die Ausschalten-Taste drücken, sondern die zum Umschalten (default: KEY_HOME).

    MyVDR: yaVDR-Ansible - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod *broken*
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Danke für die Rückemeldung bin erst heute zum testen gekommen.


    Ich hab die /etc/yavdr-frontend/config.yml wie beschrieben die Zeilen auskommentiert (während KODI lief, ca 4 Std), als ich KODI via FB-PowerKey beendet wollte war das Verhalten ähnlich wie oben beschrieben, jeodch bin ich beim zweiten beenden nicht in der Shell gelandet, sondern wieder in KODI, allerdings ohne KODI bedienen bzw. überhaupt etwas mache zu können.


    Nach dem Neustart hab dann weiter getestet. Jetzt ist so, dass ich einmal KODI starten und per PowerKey beenden kann und dann im VDR-Frontend lande, aber wenn ich das ein zweites mal versuche, lande ich entweder direkt bei KODI-Start oder bei beenden in der Shell.


    Mir ist inzwischen aufgefallen, das ich, wenn ich per SSH einen reboot absetzet nur etwas warten muss bis der Rechner neu startet.


    Am liebsten hätte ich es vom Verhalten her so wie bei den yaVDRs zuvor, wenn ich im KODI auf den PowerKey drücke komm ich zurück zum VDR-Frontend.



    Folgeden zeigt im übrigen syslog wenn ich ein zeites mal versuche KODI zu starten und wie beschrieben in der shell lande:

  • Kannst du bitte mal den aktuellen Stand der /etc/yavdr-frontend/config.yml anhängen?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Bis auf Zeile 89-90 unverändert.


  • Ich habe den Fehler im Config-Parser mal abgefangen (da kam ein None statt dem erwarteten Dictionary zurück, wenn man die Zeilen auskommentiert) und eine zusätzliche Methode yavdr_compat_poweroff eingebaut, die man statt poweroff nutzen kann. Wenn man die Power-Taste drückt und der VDR nicht das aktive Frontend ist, wechselt er zurück zum VDR, wenn der VDR bereits das aktive Frontend ist, macht er einen Shutdown-Versuch.


    Code: config.yml
    1. lirc:
    2. socket: /run/lirc/lircd
    3. keymap:
    4. KEY_POWER2:
    5. action: yavdr_compat_poweroff


    Edit: Das Paket python3-yavdrfrontend in Version 0.0.58 wurde erfolgreich gebaut und veröffentlicht.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    The post was edited 1 time, last by seahawk1986 ().

  • Hmm, irgendwie ist noch was quer...


    Folgendes hab ich gemacht:

    - apt-get update

    - apt-get dist-upgrade

    - config.yml wie beschrieben angepasst


    Wenn ich jetzt KODI starte komme ich mit POWER_KEY2 zurück zum yaVDR-Frontend. Versuche ich KODI erneut zu starten lande ich in der shell :(.

    Es spielt übrigens kein Rolle ob ich KODI mit der Ferbedienung (POWER_KEY2) oder über das Menü beende. Der VDR scheint läuft dann scheinbar noch, es ist "nur" das Frontend weg.



    syslog wenn versuche KODI erneut zu starten.


    Nebenbei:

    Wieso ist der "shutdown -r now" eigentlich verzögert und gibt es eine Möglichkeit das Frontend vis Shell wieder zu starten?

  • Was für Hardware hast du denn?

    Wieso ist der "shutdown -r now" eigentlich verzögert

    Systemd versucht Dienste sauber zu beenden und schießt sie erst nach einem Timeout ab, wenn sie nicht darauf reagieren.


    und gibt es eine Möglichkeit das Frontend vis Shell wieder zu starten?

    Ja, aber wenn der X-Server crasht würde ich erst mal versuchen das anzugehen.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Die EDID darf für KODI nicht in der Xorg-Konfiguration stehen, sonst gibt es Crashes. Es genügt, wenn man die als Boot-Parameter mitgibt. Damit KODI die Modes nach Bedarf wechseln kann, darf man sie nicht mit dem video= Kernelparameter festnageln - den für yaVDR-tauglichen Ansatz, der nebenbei auch die Nutzung von mehr als einem Bildschirm erlaubt, hatte ich in Zusammenfassung Intel VAAPI & edid.bin verlinkt.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Die gute Nachricht ist, wechsel zwischen KODI und VDR-Frontend funktioniert jetzt.


    Allerdings hab ich jetzt wieder kein Bild wenn ich ohne TV/Verstärker starte :(


    Ich hab "video=HDMI-A-1:1920x1080@50D" aus dem Grub rausgenomme und jetzt nur noch die edid.bin drin, also:

    GRUB_CMDLINE_LINUX="drm.edid_firmware=HDMI-A-1:edid/edid.bin" aus der /etc/X11/xorg.conf.d/20-intel.conf sind ich die EDID-Parameter auch wieder rausgeflogen. Als es dann nicht ging hab ich sicherheitshalber das playbook für yavdr-xorg laufen lassen um auszuschließen da ich etwas in der 20-intel.conf verbastelt hab.


    aktuelle 20-intel.conf:

  • Wird die EDID denn erfolgreich aus dem initramfs geladen (müsste man in der Ausgabe von dmesg sehen)?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich glaube schon, bin mir unsicher wie ich das sehen kann.


  • Hi seahawk,


    dein Tipp aus Installation auf J4205 schlägt fehlt mit dem zusätzlichen Parameter video=HDMI-A-2:e bzw. bei mir dann video=HDMI-A-1:D hat mein Problem gelöst.


    Der Eintrag für den Grub sieht jetzt wie folgt aus: GRUB_CMDLINE_LINUX="video=HDMI-A-1:D drm.edid_firmware=HDMI-A-1:edid/edid.bin"boot ohne TV klappt. Das Umschalten zwischen KODI und yaVDR-Fronted funtioniert jetzt auch wie gewünscht.


    Nochmal, tausend Dank!

  • Gerne, das war gemein, dass sich das Verhalten des Kernels da mittendrin geändert hat, damals (TM) hat das noch einfach so funktioniert...

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)