Kann man unter enigma2 irgendwie abfragen ob das Gerät am HDMI Port eingeschaltet ist?

  • Eine Frage an die enigma2 Spezialisten!


    Kann man per python Funktion unter Enigma2 irgendwie abfragen

    ob das Gerät (Fernseher) am HDMI Port eingeschaltet ist?

    Vielleicht gibt es eine enigma2 Funktion hierfür, oder man kann einen Event registrieren

    der aufgerufen wird ob das HDMI Gerät eingeschaltet oder ausgeschaltet wird.

    Oder es gibt ein Hardware Port, dass man abfragen kann?


    Hat jemand eine Idee?


    /Willi/

  • Hast du das HDMI-CEC 2.0 installiert?


    Wenn ja, kannst du im Menü -> Einstellungen -> Geräte -> HDMI CEC 2.0 dort über die blaue Taste die HDMI-CEC-Geräte anzeigen lassen.

    Wenn du bei dem ausgewählten Gerät dann die Info-Taste drückst, wird in der letzten Zeile der Geräte-Status angezeigt.


    Wenn du dir dann den Code dazu anschaust, kannst du da ggf. was daraus verwenden.

    In der Info zum Gerät ist auch der Geräte-Typ (z.B. TV) gelistet - der TV hat in der Regel die logische Adresse 0.

    Gruß Sven (aka Dreamy)


    DM920 mit unstable OE2.5 DP
    One mit unstable OE2.6 DP

  • Sven H


    Dein Tipp hat mir weitergeholfen: Ich habe damit jetzt die Aufnahmetimer Funktion so

    modifiziert, dass diese im Auto Timer Modus die Box nach einer Aufnahme automatisch

    in den Deep Standby (Power Off) Modus versetzt wenn der Fernseher aus ist. Dies aber

    unterlässt wenn der Fernseher eingeschaltet ist.


    Allerdings funktioniert die Abfrage des HDMI Gerätestatus doch nicht so smooth wie ich

    erwartet habe. Die Zustandsänderung (Gerät an oder aus) wird nur sehr verzögert weiter-

    gegeben und auch nur dann wenn man zyklisch eine Abfrage an den enigma2 Kernel schickt.

    Ich benutze hierzu eine Timerfunktion die alle 10 Sekunden eine Abfrage durchführt.


    HDMI-CEC 2.0 macht dies selbst nicht. Möchte man den aktuellen Status haben muss

    man vorher unter dem Gerätemenue noch Aktualisieren drücken.


    Der Abfrage Code ist erstaunlicher Weise sehr einfach:


    Python
    from Plugins.SystemPlugins.CEC.Cec import cec
    .
    .
        cec.onCheckDevices()
        if len (cec.devices) > 0:
            TVOff = cec.devices[0].powerState

    TVOff wird auf 0 gesetzt wenn das HDMI Gerät eingeschaltet ist, ansonsten auf ungleich 0


    Das nur zur Info!


    /Willi/