Script im Libreelec 12 funktioniert nicht, aufgrund von Raspi 5 und gpiozero

  • Hallo und guten Abend

    Ich habe auf meinem Raspi5 Libreelec 12.0.2 installiert. Vorher hatte ich einen Raspi 4 mit libreelec 10 und folgendes Script um per Fernbedienung (über lirc) einen GPIO Pin auf „High“ zu setzen. Dieser aktivierte ein Relais, welches wiederum ein HDMI-Switch aktivierte.

    Das hat auch bisher sehr gut funktioniert. Mit dem Raspi 5 und libreelec 12.0.2 geht das Script nicht mehr.

    Ich habe rausgefunden, dass Rpi.GPIO in dem Addon „Raspberry Pi Tools“ durch „gpiozero“ ersetzt wurden ist. Leider reichen meine Programmierkenntnisse nicht aus um das Script umzustellen und per google komme ich auch nicht wirklich weiter. Ich würde mich freuen wenn Ihr mir helfen könntet. Da ich echt gerne von Raspi 4 auf 5 wechseln will und auch endlich ein aktuelles libreelec nutzen möchte.

    Vielen Dank im voraus

  • Für Deinen Einsatzfall kann man zwar auf gpiozero wechseln. Die erste Wahl ist es aber nicht (mehr), da es aufgrund immer noch unbehobener Bugs die Nebenwirkung haben kann die Ressourcen nicht wieder freizugeben. Besser ist lgpio oder idealerweise (lib)gpiod zu verwenden. Letzteres ist besser gepflegt aber etwas komplexer in der Umsetzung.

    Dein Skript sieht für mich etwas "schräg" aus. GPIO Pin 23 soll als Ausgang agieren. Der Code in der Endlos-Schleife prüft ob der selbe Ausgang derzeit auf Low gesetzt ist und setzt ihn dann auf High und umgekehrt. Oder sollte der PIN ursprünglich toggeln? Auch der Aufruf von quit() zum Ausbrechen aus der Schleife ist ein nicht empfohlener Weg und macht den Einsatz einer Schleife an sich nutzlos. Hast Du eine bereits veränderte oder von ChatGPT bereitgestellte Version hier gepostet?

    Im Skript selbst kann ich da keinen Bezug zur Fernbedienung erkennen. Hast Du das Skript auf eine bestimmte Taste gemapped?

Jetzt mitmachen!

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