GPIO - 2.x

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • joesie
    Smart Home'r
    • 10.11.2015
    • 34

    GPIO - 2.x

    Dies ist der LoxForum Thread für das GPIO Plugin.

    Aktuelle GPIO Version 2.0.7 (Release)

    LoxWiki Plugin-Seite: https://www.loxwiki.eu/display/LOXBERRY/GPIO

    Bitte beachtet, dass die Version 2.x des Plugins nicht mit der Version 1.0.x kompatibel ist. Ihr müsst sowohl die Konfiguration des Plugins, wie auch die Loxone Konfiguration anpassen!

    Schwerpunkte der Version 2.0
    • Um Änderungen der Eingänge zu erkennen müssen diese nicht mehr gepollt werden. In der aktuellen Version werden Interrupts verwendet. Vorteil: Zuverlässige Erkennung der Änderungen, bessere Performance des Systems
    • Die Kommunikation erfolgt nun über MQTT. Dadurch kann das Plugin deutlich vielseitiger eingesetzt werden und die Kommunikation ist einheitlicher zu anderen Plugins

    Ich wünsche Euch viel Erfolg und Spaß mit dem Plugin!

    Viele Grüße
    Jörg
    Zuletzt geändert von joesie; 06.04.2021, 12:05.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 193

    #2
    Hallo Jörg,
    erstmal vielen Dank für Deine Arbeit in die v2 des GPIO-Plugin.
    Ich nutze es u. a. für meine dezentrale Lüftersteuerung.
    Was ich bislang noch nicht hinbekommen habe, ist im MQTT-Plugin "Incoming overview" die Zustände der einzelnen IOs oder den Status angezeigt zu bekommen
    Im MQTT-Plugin "subscriptions" trage ich folgendes ein: loxberry-2/gpio/# (Hostname= loxberry-2). Case sensitiv macht dabei keinen Unterschied.
    Mit dem FHEM-Plugin erhalte ich mit "fhem/#" alle Daten im MQTT geliefert.

    Loxberry Sachstand= Raspberry Pi 3B+ mit aktuellen Loxberry v2.2.0.4
    MQTT-Plugin= Pre-Release von Christian v2.0.2
    GPIO-Plugin= v2.0.0

    Ich werde mal einen komplett neuen Loxberry aufziehen und dann wieder testen bzw. mich bei Dir melden.

    Viele Grüße
    Hesch@

    Kommentar


    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Bist Du weiter gekommen?
      Bitte aktuell nach dem Speichern von Änderungen im Plugin, den LB neu starten. Da ist noch ein offenes Thema, dass die Änderungen direkt übernommen werden.

    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Noch nicht. Bin gerade beim Neuaufsetzen des Loxberry.
  • Christian Fenzl
    Lebende Foren Legende
    • 31.08.2015
    • 11217

    #3
    @Hesch@ Probier mal,
    +/gpio/#
    zu abonnieren.
    Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

    Kommentar


    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Hat leider nichts in der "Incoming overview" verändert.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 193

    #4
    Hallo Joerg,
    habe jetzt mal einen Loxberry neu aufgesetzt und folgendes durchgeführt:
    1. MQTT-Plugin installiert
    2. MS im MQTT Plugin eingerichtet.
    3. Loxberry Neustart.
    4. Loxberry von 2.2.0.3 auf 2.2.0.4 update durchgeführt. Neustart durchgeführt.
    5. GPIO-v2 Plugin installiert. Es kam keine Fehlermeldung.
    6. Loxberry Neustart.
    7. Aufruf des GPIO-Plugin >> Fehlermeldungen
    7.1.
    Erste Fehlermeldung:

    Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Fehler 1.jpg Ansichten: 0 Größe: 49,6 KB ID: 296748
    Danach wurde beim Aufruf des GPIO-Plugins nur noch folgender Fehler angezeigt.
    Klicke auf die Grafik für eine vergrößerte Ansicht  Name: Fehler 2.jpg Ansichten: 0 Größe: 27,4 KB ID: 296749

    Installations-Log vom GPIO-Plugin:
    XbSkdnvkxp.log

    Hier auch falls informativ das Ergebnis vom Loxberry Selbsttest:
    healthcheck.txt

    Vielleicht mache ich ja irgend etwas falsch bei der Installation und Ihr habt einen Hinweis.

    VG
    Hesch@
    Zuletzt geändert von Hesch@; 17.03.2021, 22:35.

    Kommentar


    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      Same error like Hesch@ Also after a 60 minutes wait.

      Heathcheck looks ok
      Also in the instal log i cant find any errors.

      Loxberry= Raspberry Pi 2B Loxberry v2.2.0.4
      MQTT-Plugin= Pre-Release v2.0.2
      GPIO-Plugin= v2.0.0
      Zuletzt geändert von Davejje; 18.03.2021, 07:38.

    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Habe den Loxberry jetzt mal über Nacht laufen lassen. Leider keine Veränderung.
      Der Fehler beim Start des GPIO-Plugin ist immer noch da.
      Fehlt da vielleicht noch ein Linux-Packet?
      VG Hesch@
      Zuletzt geändert von Hesch@; 18.03.2021, 08:57.

    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Hi,
      Could you please send the following log files:
      - gpio2mqtt
      - GPIO CGI Log
      - Apache Log

      Thanks
      Jörg
  • Davejje
    Extension Master
    • 24.11.2017
    • 173

    #5
    joesie

    Now i see the problem is in de GPIO CGI Log this one has a error now i look again in te log center.

    Code:
    [COLOR=black][B]INFO:[/B] LoxBerry Version 2.2.0.4 ( is_raspberry.cfg )[/COLOR]
    
    [COLOR=black][B]INFO:[/B] GPIO Version 2.0.0[/COLOR]
    
    [COLOR=black][B]INFO:[/B] Loglevel: 3[/COLOR]
    
    [COLOR=red][B]ERROR:[/B][/COLOR] No configfile found
    
    18.03.2021 08:56:16 TASK FINISHED
    Angehängte Dateien
    Zuletzt geändert von Davejje; 18.03.2021, 10:25.

    Kommentar


    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Thank you,
      I will set up a complete fresh loxberry and hope that I can reproduce the problem you have.

    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      is it valuable if I also mention which other plugins are installed on this loxberry?

      1-wire NG V1.0.1
      Docker V2.0.1
      MQTT Gateway V2.0.2
      Weather 4 Loxone V 4.9.0.3

      And for sure
      GPIO V2.0.0

    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Yes that's not a problem. As long as you have enough free space on your SD card and the processor can handle it feel free to install all what you like.
  • joesie
    Smart Home'r
    • 10.11.2015
    • 34

    #6
    We found the bug. Please install the new Version.
    Many thanks for testing

    Kommentar


    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      Do i need to uninstall this version first?

    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Please wait a moment. I think I found another issue too

    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      No problem! Let me know and after that i will install the new version!
  • joesie
    Smart Home'r
    • 10.11.2015
    • 34

    #7
    So, on git you will find a version 2.0.4. please try it. On my complete new clean LB it works now.
    Please remove the current plugin before you start.

    Thanks a lot

    Kommentar


    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      I uninstall the old version and did a reboot.
      After that i install the version V2.0.4 and everything looks good! In can change settings at all!
      But the plugin managers shows me that V2.0.3 is still installed..
      But the install log shows me V2.0.4.zip.
  • joesie
    Smart Home'r
    • 10.11.2015
    • 34

    #8
    Hi, thats sounds good. Maybe I forgot to increase the version number. Now you can configure the MQTT and show if it works too.

    Kommentar


    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      For sure i was busy to setup the mqtt it looks like it work also!
      I love the new plugin! its working faultless now. And the speed improvment is super!
      Well done!
      Zuletzt geändert von Davejje; 18.03.2021, 14:52.

    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Glad to hear that. Thank you very much.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 193

    #9
    Hallo Jörg,
    vielen Dank für das Upgrade auf v2.0.3.
    Die Installation und das Starten des GPIO-Plugin funktioniert jetzt.

    Im MQTT-Incoming overview wird aber nur folgendes angezeigt:
    loxberry-3_gpio_status > Online
    Im MQTT subscriptions habe ich "loxberry-3/gpio/#" eingetragen.

    Stehe momentan auf dem bekanntlichen Schlauch, wie ich die 9 Ausgänge, bzw. den jeweiligen Status der Ausgänge, die ich im GPIO-Plugin definiert habe im MQTT angezeigt bekomme.

    Habe den Loxberry mehrfach neu gestartet.

    VG Hesch@

    Kommentar


    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Hallo Hesch,

      das sieht doch richtig super aus. Du siehst die Meldung vom Plugin, dass es Online ist. Somit funktioniert auch die Kommunikation und du hast dich korrekt subscript.

      Mehr siehst du aktuell nicht, da scheinbar an den Ein. und Ausgängen nichts passiert.
      Lass doch mal an einem konfiguriertem Eingang den Pegel schalten. Aus, An.
      Oder gib wie beschrieben den Befehl zum schalten an einen Ausgang, dann wirst du auch die Antworten im Incoming View sehen.

      Viel Erfolg beim ausprobieren.

    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Hallo Jörg,
      danke für die Info. Ich hatte gedacht, das Du wie Christian in #10 es beschrieben hat auch einen generellen Status (z. B. GPIO 1 On - Off) sendest. Das wäre dann sogar für eine Rückmeldung (Ist-Stand) an den MS von Vorteil.
      Ähnlich wie bei "Wiringpi" der Befehl readall.
      Zuletzt geändert von Hesch@; 18.03.2021, 22:33.
  • Christian Fenzl
    Lebende Foren Legende
    • 31.08.2015
    • 11217

    #10
    @joesi Da kommt mir der Gedanke, ob du nicht noch beim Start mal die Stati der konfigurierten GPIO‘s durchschickst.
    Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

    Kommentar


    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      @ Christian: Das ist genau das was ich meinte bzw. wonach ich gesucht hatte.

    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Gute Idee von Euch beiden. Ich hab mir ein Ticket dafür angelegt

    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      @Hesch: Ich habe gerade eine neue Version (2.0.5) released. Dieses Feature ist nun auch drin.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 193

    #11
    Hallo Jörg,
    habe gerade mal schalten wollen und im Browser "loxberry-3/gpio/set/1 on" eingegeben.
    Es kommt aber folgender Fehler:
    Fehler 404
    Die Adresse /gpio/set/1 on gibt es hier leider nicht.


    Können die GPIOs nicht über einen einfachen Browserbefehl geschaltet werden?

    VG Hesch@

    Kommentar


    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      Try to change youre number 1 with a gpio number for exampe 5, 6, 16, 17, 18 this is how it works in my version...
      To set a output with mqqt is not connected with the output numbers what you see in ge gpio plugin webinterface, but is connected with the real gpio output numbers.

      Correct me if im wrong...

    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Thanks for the tip with the real GPIO no. That’s it. Now everything works as it should.

    • Davejje
      Davejje kommentierte
      Kommentar bearbeiten
      No problem! Have fun with it..
  • Christian Fenzl
    Lebende Foren Legende
    • 31.08.2015
    • 11217

    #12
    Hesch@
    In deiner URL von #11.5 ist jedenfalls das Topic falsch.
    Wenn der Hostname im Topic verlangt wird, muss er auch im Topic stehen.
    Und gpio/... ist nicht gleich /gpio/...
    Ein „imaginäres“
    this/is/my/topic
    ist nicht das gleiche wie
    /this/is/my/topic
    Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

    Kommentar


    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Du hast ja leider so recht.
      Hatte ich beim "experimentieren" auch bemerkt und dann mit dem richtigen Topic inkl. Hostname hat es auch funktioniert.
      Dein Tipp mit dem MQTT Quick Publisher hatte mit geholfen.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 193

    #13
    Hallo Jörg,
    zumindest für mich taucht dabei noch eine Frage auf.
    Ist es auch möglich in einem MQTT-Befehl drei GPIOs gleichzeitig zu schalten?
    Beim GPIO-Plugin v1 war dieses für die Ausgänge 1 - 3 z. B. so möglich:
    http://<loxberry-IP>/plugins/gpio/?o0=on&o1=on &o2=on&o3=off

    VG Hesch@

    Kommentar


    • joesie
      joesie kommentierte
      Kommentar bearbeiten
      Ah, ok.
      klar, da hast Du 12 Verbinder bei 12 verwendeten GPIOs ...

    • Hesch@
      Hesch@ kommentierte
      Kommentar bearbeiten
      Und bei 10 MS Befehlen (ich steuere damit u. a. alle dezentralen Lüfter reversibel im Haus an) werden das dann 120 Ausgangsverbinder.
      Zuletzt geändert von Hesch@; 19.03.2021, 10:33.

    • Christian Fenzl
      Christian Fenzl kommentierte
      Kommentar bearbeiten
      Das werden doch nicht 120 Ausgangsverbinder, es bleiben genau 10.
  • Hesch@
    Extension Master
    • 31.08.2015
    • 193

    #14
    Hallo Christian,
    momentan schaltet aber jeder Ausgansverbinder über einen Befehl 10 GPIOs gleichzeitig. Z. B. 1001100100
    Wird eine andere Lüfterdrehzahl oder ähnliches ausgewählt werden andere GPIOs benötigt. Z. B. 1101011000
    Ich habe diese aufwendige Schaltung gemacht, damit die DC-Motoren definitiv immer nur an einer Anschlussleitung (Drehrichtung) mit Power versorgt werden.
    Ähnlich wie bei einem Rollladenmotor. Sicherstellung das niemals beide Phasen gleichzeitig mit Strom versorgt werden.

    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Bild 1.jpg
Ansichten: 1162
Größe: 144,5 KB
ID: 296988

    VG
    Hesch@

    Kommentar

    • Christian Fenzl
      Lebende Foren Legende
      • 31.08.2015
      • 11217

      #15
      Ich versteh die Schaltung nicht.
      Du zerlegt eine binär dekodierte Zahl mit dem Binärdecoder, und dann setzt Du sie in vielen Ausgängen wieder zusammen.
      An der Schaltung verhindert nichts, dass gewisse GPIOs nicht gleichzeitig EIN werden. Deine Requests wurden auch vom alten Plugin sequenziell abgearbeitet. Wenn gpio1=1&gpio2=0 gesendet wird, und gpio2 war EIN, war auch früher schon für die Zeit der Abarbeitung 1 und 2 gleichzeitig EIN.

      Korrekterweise müsstest du erst gewisse GPIOs 0 setzen, und danach die anderen GPIOs auf 1.

      Die gezeigten Ausgänge sollte es - unabhängig davon - nur einmal geben. Nach Loxone-Logik kann es einen eindeutigen Ausgang nur einmal geben (vgl. Digitalausgang).

      Auch wenn ich dein Beispiel nicht unbedingt das "Referenzbeispiel" ist:
      Zwei Vorschläge an joesie


      ​​​​​​1. Bei einem allgemeinen Topic des Plugin Json-Dataset akzeptieren:
      publish loxberry/gpio/set/json { "0": "on", "3": "off", "4":"off"}
      Das wäre primitiv zu parsen und zu loopen.

      2. Dezimalwert und Binärstrings akzeptieren
      publish loxberry/gpio/set/dec 54
      54 = 00110110
      publish loxberry/gpio/set/bin 00110110
      bin zuerst implementieren, und Dec rechnet in bin um und ruft die Bin-Funktion auf.
      Zuletzt geändert von Christian Fenzl; 19.03.2021, 12:48.
      Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

      Kommentar


      • joesie
        joesie kommentierte
        Kommentar bearbeiten
        Ja, sowas in der Art hatte ich mir auch überlegt. Ich kann im Moment nicht einschätzen, ob die Anforderung sehr speziell ist, oder von vielen gewünscht wird.
        Ich nehme das mal mit als Ticket auf

      • joesie
        joesie kommentierte
        Kommentar bearbeiten
        Ist in der aktuellen Version 2.0.5 umgesetzt (siehe Doku)
        Zuletzt geändert von joesie; 24.03.2021, 11:24.
    Lädt...