GPIO - 2.x

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Hesch@
    Extension Master
    • 31.08.2015
    • 194

    #61
    Hi Jörg,
    komme leider auch erst jetzt wieder zum Testen Deiner neuen v2.1.0.
    Was ich aber gleich nach der Installation von v2.1.0 (05.07.2021) festgestellt habe, ist folgendes:
    1.
    Es werden im MQTT keine States der GPIOs mehr angezeigt.
    2.
    Ein toggeln der GPIOs über einen einfachen UDP-Befehl im Browser ist wohl nicht mehr möglich, da WiringPi nicht mehr installiert wird, sondern die Befehle über py-Scripte erfolgen.
    3.
    Die GPIOs werden, zumindest bei mir, auf zwei Loxberry-Testsystemen mit aktuellem Loxberry-Softwarestand, nicht geschaltet.
    Ein Befehl "publish loxberry-3/gpio/set/json {"12":"on"}" setzt zwar in der MQTT-Übersicht den virt. Input "loxberry-3_gpio_set_json_12" auf 1. Der Raspberry GPIO wird aber nicht geschaltet. Auch ein "Off" setzt nur den virtl. Input Value wieder auf 0.

    Hast Du noch einen Tipp wo ich weiter ansetzen muss?

    VG Helge
    Zuletzt geändert von Hesch@; 03.11.2021, 17:15.

    Kommentar


    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Hallo @Hesch@,
      Zu 1 und 3: Das hatte ich getestet und bei mir hatte es funktioniert. Das müssten wir uns dann bei Dir ggf. nochmal zusammen anschauen. Ggf. läuft MQTT bei den Geräten nicht richtig?

      Zu 2: Ja das ist richtig. Das wird so auch nicht mehr unterstützt werden. Ich glaube es ist wichtig, dass wir auf dem LB die gleichen Kommunikationswege gehen. Aus meiner Sicht ist da der Weg der Plugins über MQTT der richtige. Zum MS ist es dann immer die gleiche Prozedur.
  • comtel
    Smart Home'r
    • 11.07.2016
    • 32

    #62
    Hallo,
    ich habe heute von 2.0.7 auf 2.1.0 geupdatet. Direkt nach dem Update haben alle Relais angezogen. Ich habe dann einen Neustart des Pi gemacht, beim Neustart sind die GPIO abgefallen und dann nach dem der Loxberry wieder gestartet hat direkt wieder aktiviert. Habe dann wieder 2.0.7 installiert, hier ist alles OK, schaltet so wie gewünscht.
    Kann man die States der GPIO beeinflussen oder umstellen?
    LG

    Kommentar


    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Hallo,
      diese dafür notwendige Umschaltung zwischen "Aktiv High" und "Aktiv Low" der GPIOs das hat joesie glaube ich mal angedeutet. Wir werden sehen.
  • joesie
    Smart Home'r
    • 10.11.2015
    • 34

    #63
    Ja der aktuelle Dev Stand ist schon so, dass die Ausgänge invertiert werden können. So kann man, abhängig von der Situation, entscheiden was man möchte

    Kommentar


    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Hallo Joerg. Kann ich diesen "Dev Stand" schon im Git o. ä. als Prerelease finden? In der v2.10 habe ich diesen "Schalter" nicht gefunden.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 194

    #64
    Hallo Jörg,
    jetzt habe ich mal versucht die aktuelle v2.1.0 aus github zum laufen zu bekommen. Leider nein.

    Ich habe einen Loxberry ganz neu aufgesetzt und als Loxberry-4 (Hostname) im Netz eingebunden.
    LB auf v2.2.1.2 update durchgeführt.
    Als nächstes MQTT-Plugin v2.0.4 installiert und konfiguriert.
    Danach nur das aktuellste GPIO-Plugin v2.1.0 vom github installiert und wieder konfiguriert.

    Folgendes ist mir dabei aufgefallen:
    Die GPIOs die konfiguriert wurden, können im GPIO-Plugin durch das "Invertieren" zwischen HIGH und LOW getoggelt werden. Das am RaspberryPi angeschlossene Aufsteckmodul welches Du auch benutzt, zeigt dieses auch durch die LEDs an.

    Ein z. B. GPIO 12 lässt sich aus Loxone aber nicht mit dem JSON-Befehl publish loxberry-4/gpio/set/json {"12":"on"} ein oder ausschalten.
    Auch ein "normaler" Befehl wie z. B. publish loxberry-4/gpio/set/12 on lässt den GPIO 12 mit v2.1.0 nicht schalten.
    In der Incoming-Übersicht von MQTT werden die Miniserver Virtual Inputs aber richtig gesetzt. Soll heißen, der Last Value in der MQTT-Übersicht wird zwischen 0 und 1 getoggelt. Nur der GPIO des Raspi selbst leider nicht. Auch ein ändern des Loxberry Hostname von Loxberry-4 auf Loxberry hat keinen Erfolg.

    Erst ein Downgrade zurück auf das GPIO-Plugin v2.0.7 lässt die GPIOs mit den gleichen Loxone-Befehlen in der MQTT-Übersicht toggeln und der GPIO vom Raspi selbst wird auch sofort zwischen HIGH und LOW geschaltet.
    Jetzt habe ich erstmal keine Erklärung mehr, woran das liegen kann.

    Mit welchen Befehlen lässt Du denn in der v2.1.0 die GPIOs umschalten? Zumindest in der v2.0.7 importierts Du einige Module mehr an.
    Werde mir aber mal die drei Dateien Channel.py, gpio2mqtt.py und MqttClient.py näher anschauen und versuchen etwas "reverse engineering" zu betreiben.

    VG Hesch@
    Zuletzt geändert von Hesch@; 14.11.2021, 15:49.

    Kommentar

    • Hesch@
      Extension Master
      • 31.08.2015
      • 194

      #65
      Hallo Jörg,
      habe heute Nacht mal etwas mit python und der RPi.GPIO ohne das GPIO-Plugin experimentiert. Zumindest mit dem folgenden einfachen Python-Script (gpiotest.py) toggelt der GPIO wie er soll:
      Code:
      import RPi.GPIO as GPIO
      import time
      
      led = 24
      
      GPIO.setmode(GPIO.BCM)
      GPIO.setup(led, GPIO.OUT)
      
      try:
      while True:
      GPIO.output(led, 1) # 1/0, True/False, GPIO.HIGH/GPIO.LOW accepted
      time.sleep(5) # 5 seconds light on
      GPIO.output(led, False)
      time.sleep(5) # 5 seconds light off
      
      except KeyboardInterrupt:
      print (" Quit")
      GPIO.output(led, GPIO.LOW)
      GPIO.cleanup()
      Hast Du noch einen anderen Ansatz?

      VG Hesch@

      Kommentar

      • Rosenberg
        Azubi
        • 05.12.2021
        • 9

        #66
        Hallo zusammen, ich suche nach einer Möglichkeit den GPIO Output zu invertieren. Besonders beim Starten ist das bei meiner Anwendung ein Problem. Gibt es hier eine Möglichkeit ? Danke Lg Christoph

        Kommentar

        • Hesch@
          Extension Master
          • 31.08.2015
          • 194

          #67
          Hallo Rosenberg und willkommen untern den Loxberrys

          bei mir läuft die Version 2.1.0 leider wie oben beschrieben nicht. Kann auch mom. nicht sagen ob es am GPIO liegt oder an der Schnittstelle zum MQTT-Plugin.
          In der v2.1.0 ist es möglich zwischen Aktiv.High und Aktiv.Low zu toggeln.
          Ich hatte mir aber schon im Mai diesen Jahres die v2.0.7 selber etwas "modifiziert". Ich habe die States High und Low einfach umgedreht, da ich das für eine Relaisplatine so brauche.
          Kannst ja mal die angehängte v2.0.7-1 von mir installieren und austesten.

          VG Hesch@

          LoxBerry-Plugin-GPIO-2.0.7-1 2021.05.01.zip
          Angehängte Dateien

          Kommentar

          • Rosenberg
            Azubi
            • 05.12.2021
            • 9

            #68
            Hi Hesch, danke für die netten Worte. Habe bei mir aktuell noch die v2.0.7 laufen, ich werde aber mal die neue Version installieren und testen. Ich kämpfe gerade damit, das dass erstellte Root Passwort nicht gültig ist.. Suche ich auch grad nach einer Erklärung. Danke ich werde mir dein Plugin dann auch mal gleich ansehen. Lg Christoph

            Kommentar


            • Hesch@
              Hesch@ kommentierte
              Kommentar bearbeiten
              Hi Rosenberg,
              du weißt aber schon, dass Du dich als Root im Loxberry nicht direkt anmelden kannst oder?
              Immer erst über z.B. Putty als User Loxberry anmelden und dann als "SU".

            • Rosenberg
              Rosenberg kommentierte
              Kommentar bearbeiten
              Hi, danke bin C Programmierer, er nimmt mir mit sudo su das Passwort nicht. Wüsste aber nicht warum es ein anderes sein sollte. Habe gerade das 2.1.0 installiert und nix geht mehr xD

            • Rosenberg
              Rosenberg kommentierte
              Kommentar bearbeiten
              Hi Hesch, war jetzt kurz auf der 2.1. da ging gar nichts mehr. Bin wieder zurück auf die 2.0.7. allerdings tut sich jetzt auch nichts mehr. Kennst du das Problem?
          • Rosenberg
            Azubi
            • 05.12.2021
            • 9

            #69
            Hi, wollte kurz meine Erfahrungen noch Teilen, in der V2.1 passt irgendwas nicht habe ich jetzt nicht genauer mir angeschaut. Bin jetzt zurück in die 2.0.7 und habe den Code nach meinen Bedürfnissen angepasst. Thema Root Passwort anscheinend brauche ich eine stärkere Brille .... Schönen Abend

            Kommentar


            • Hesch@
              Hesch@ kommentierte
              Kommentar bearbeiten
              Hi Rosenberg,
              hast Du die v2.7.0 jetzt zu Deinem Zweck umprogrammieren können und funktioniert diese jetzt wieder?

            • Rosenberg
              Rosenberg kommentierte
              Kommentar bearbeiten
              Hi, nein hab in der alten Version die Änderungen gemacht.
          • joesie
            Smart Home'r
            • 10.11.2015
            • 34

            #70
            Hallo Rosenberg,
            was hast Du denn für ein Problem mit der Version 2.1.0? Warum konntest Du die nicht installieren, bzw. was war der Fehler? Ich benötige eine detaillierte Rückmeldung von Euch um das Plugin zu verbessern.

            Kommentar


            • joesie
              joesie kommentierte
              Kommentar bearbeiten
              Wenn es zu einem Fehler kommt, oder das Plugin grad irgendwie scheinbar nicht schaltet, dann schreibe ich normalerweise in den Error Response eine kurze Meldung. Außerdem gibt es immer eine detaillierte Info im Logfile. Wenn ihr diese Meldungen einfach hier mit reinkopiert, kann ich Eich schneller helfen. Mit nur kaputt, kann ich leider nicht wirklich etwas anfangen,

            • Rosenberg
              Rosenberg kommentierte
              Kommentar bearbeiten
              Hi joesie,
              ich konnte es ganz normal installieren, wie bereits geschrieben war auch ein setzen und löschen möglich nur wurde der physikalische Ausgang nicht geschaltet. Ich war leider kurz angebunden, desswegen gelöscht zurück der Version 2.0.7 die ja nur verkehrt war und die Änderungen vorgenommen, allerdings Hard gecoded.

              Lg Christoph
          • joesie
            Smart Home'r
            • 10.11.2015
            • 34

            #71
            Hesch@
            Hi Hesch,
            du kannst die aktuelle Version (Dev Version) gerne mal ausprobieren. Dazu musst Du nur das Repo als Zip Datei runterladen.
            Da hast Du die invertierten Ein- und Ausgänge und sogar den ersten Wurf vom PWM Support

            Kommentar


            • Hesch@
              Hesch@ kommentierte
              Kommentar bearbeiten
              Hi joesie,
              danke für die Info. Das hatte ich aber schon, wie in #64 und #65 ausführlich beschrieben, versucht. Leider ist mit der aktuellen v2.1.0 nicht möglich, GPIOs vom Raspberry zu schalten. Und ich glaube Rosenberg hat kein Problem die v2.1.0 zu installieren, sondern kann mit dieser neuen Version auch keine GPIOs schalten. Mit v2.0.7 geht es auch bei Ihm, wie auch bei mir.

            • Rosenberg
              Rosenberg kommentierte
              Kommentar bearbeiten
              @Hesch@ exakt

            • joesie
              joesie kommentierte
              Kommentar bearbeiten
              Hi ihr Beiden,

              ich frage deswegen so nach, weil die Version 1.1.0 bei mir funktioniert. Deswegen kann ich ohne detaillierter Beschreibung leider auch nichts machen. Ich finde es halt schade, dass ihr die Zeit lieber zum patchen der alten Version verwendet und nicht mal genauer schaut, warum die aktuelle bei Euch nicht funktioniert. Um das Plugin robust zu bekommen, benötige ich Nutzer wie Euch, die mir detaillierte Rückmeldung geben, was warum und wie nicht funktioniert.
          • Hesch@
            Extension Master
            • 31.08.2015
            • 194

            #72
            Hi joesie,
            habe gerade gesehen, das Du vor zwei Tagen noch an der Channel.py und an der MqttClient.py etwas verändert hast.
            Hab diese Version aus dem Github installiert, leider aber auch hier kein Toggeln der GPIOs möglich.
            Wieder zurück auf v2.0.7 und es kann wieder fröhlich "getoggelt" werden.

            Edit: 4:19 Uhr
            Habe jetzt mal in der Channel.py u. a. in der Funktion "setOutput" diesen Befehl eingefügt: GPIO.output(21, 0) # zusätzlich eingefügt
            Da ich den GPIO 21 schon vorher in dem GPIO-Plugin als Ausgang definiert hatte, hatte ich erwartet, dass zu dem auf "Invertiert" gesetzten GPIO 16 der GPIO 21 immer auch auf High bzw. 1 gesetzt wird. Leider Nein Nur GPIO 16 wird getoggelt.

            Jetzt stehe ich erstmal gehörig auf dem Schlauch.

            VG Hesch@
            Zuletzt geändert von Hesch@; 07.12.2021, 03:24.

            Kommentar

            • joesie
              Smart Home'r
              • 10.11.2015
              • 34

              #73
              Hesch@
              Hallo Hesch,

              ich hab mir das ganze heute nochmal angeschaut. Hab versehentlich einen Fehler eingecheckt. Bitte lade mal die aktuelle Version hier runter: https://github.com/joesie/GPIO/archi...ads/master.zip

              Bei mir kann ich da die Eingänge problemlos sowohl einzeln, wie auch gleichzeitig mehrere über json schalten.

              Grüße
              Joesie

              Kommentar

              • Hesch@
                Extension Master
                • 31.08.2015
                • 194

                #74
                Hi joesie,
                danke Dir für das Update. Leider toggeln aber auch mit dieser PreVersion die GPIOs nicht. Nur wie oben in #64 und #65 beschrieben wird der MQTT-Status von "loxberry-4_gpio_set_16" von 0 auf 1 gesetzt. Was ich auch aus Loxone so anstoße. Auch ein "loxberry-4_gpio_set_json_12" setzt im MQTT den Status richtig. Der GPIO wird aber nicht geschaltet. Einzig die von Dir implementierte GPIO Umschaltung "Invertiert" funktioniert und lässt die GPIOs wirklich toggeln.

                Rosenberg
                Aber evtl. kann ja Rosenberg auch nochmals testen.

                VG Hesch@

                20211207_221332_123_gpio_MQTT.log
                Zuletzt geändert von Hesch@; 07.12.2021, 21:18.

                Kommentar


                • Rosenberg
                  Rosenberg kommentierte
                  Kommentar bearbeiten
                  Ich kanns gerne mal testen bin allerdings grade sehr eingespannt mit arbeiten, vl schaff ich es am Wochenende. Schönen Abend
              • joesie
                Smart Home'r
                • 10.11.2015
                • 34

                #75
                Hallo Hesch@ ,
                aus dem angefügtem Logfile sieht man, das du unter anderem die Pins 12 und 16 als Output geschaltet hast. Soweit, so gut.

                Danach sieht man leider nichts mehr. Es kommt am Plugin scheinbar kein MQTT Kommando an. Deswegen schaltet das Plugin auch nicht. Du bekommst vom Plugin auch keinen Response.

                Hast Du den Topic richtig eingestellt? Womit setzt du die Kommandos ab?
                Wir können uns das auch gerne mal gemeinsam ansehen, gern auch mit Rosenberg zusammen.


                Kommentar


                • Hesch@
                  Hesch@ kommentierte
                  Kommentar bearbeiten
                  Hallo joesie,
                  die Kommandos setze ich mit dem Loxone Miniserver Gen. 1 ab.
                  Funktioniert ja auch in v2.0.7 sehr gut. Und in der v2.1.0 kommen in der MQTT-Incoming Übersicht die Befehle (Statusmeldungen) ja auch an. Status wie in #74 beschrieben wird in MQTT auch von 0 auf 1 getoggelt und auch wieder zurück auf 0.
                  Was mir momentan nicht klar ist, warum mit der v2.0.7 alles sofort geht (GPIO schalten) und nach der Installation der v2.1.0 nicht mehr. In MQTT verändere ich gar nichts. Was sollte ich da auch schalten bzw. umändern müssen?
              Lädt...