MQTT Gateway 2.x

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • elmocito
    Dumb Home'r
    • 31.10.2018
    • 27

    Hallo zusammen,

    ich habe das Problem, dass ich verzweifelt versuche auf den MQTT Broker zu kommen, der auf dem Loxberry läuft.
    Setup:
    Loxberry läuft mit MQTT Broker + Z2M.
    Auf einer NAS laufen Home Assistant und Homebridge im Docker.
    Mit Home Assistant versuche ich auf den MQTT Broker zuzugreifen. Bin mir super sicher, dass die IP, der Port, der Username und das Passwort stimmen.

    Irgendeine Idee?
    Bei Stackoverflow hab ich nur den Beitrag gefunden: https://stackoverflow.com/questions/...78769#65278769

    Der hilft aber auch nicht so richtig weiter... :-/​

    Kommentar


    • Christian Fenzl
      Christian Fenzl kommentierte
      Kommentar bearbeiten
      Versuche mal mit einem beliebigen (Windows)-MQTT-Client (z.B. MQTT Explorer) zu verbinden, damit du mal Gewissheit hast, dass die Verbindung funktioniert.
      Bei der HA MQTT-Config musst du Zertifikate zur Authentifizierung abschalten. Irgendwo gibt's in HA sicher auch ein Logfile.
  • vegane_bockwurst
    Azubi
    • 25.09.2022
    • 4

    Hallo zusammen

    Ich kann beim MQTT Gateway Loxberry Frontend die Einstellungen der Topics unter "Incoming Overview" nicht sichern.

    Sprich ich klicke darauf, die Einstellung kriegt das Häckchen und wenige Sekunden später ist dieses wieder weg. Das betrifft alle Nachrichten (also auch ältere) und auch alle Optionen (Disable cache, Reset after send, do not forward).

    Probiert habe ich das mit Chrome wie auch Edge mit der 2.1.0 Version. In den Logs finde ich nichts.

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

Name: image.png
Ansichten: 326
Größe: 38,7 KB
ID: 358592

    Hat mir jemand einen Tipp?

    Aktuell habe ich noch keinen externen Storage angehängt, sollte es da irgendwo eine Logik geben, Dinge nur auf externen Devices zu speichern.

    Gruss
    Joel

    Kommentar

    • Christian Fenzl
      Lebende Foren Legende
      • 31.08.2015
      • 11217

      vegane_bockwurst Bitte mach mal den LoxBerry Healthcheck. Die Änderungen werden "on-the-fly" gespeichert. Wenn aber das Speichern nicht klappt, werden wieder die urspünglichen Werte angezeigt.
      Es schaut so aus, dass die Config nicht gespeichert werden kann. Deswegen der Healthcheck, ob vielleicht die Disk Read-Only gemounted ist.
      Sonst bitte mal die Logfiles durchsehen, ob da was zu sehen ist.
      Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

      Kommentar

      • vegane_bockwurst
        Azubi
        • 25.09.2022
        • 4

        Hallo Christian Fenzl

        Danke für deine Antwort!

        Der Healthcheck meldet alles grün bis auf den Debug Loglevel, den ich für mqtt erhöht habe.

        Im Log Manager unter der Gruppe "MQTT Gateway" sehe ich aktuelle Meldungen (jetzt ist 12:53, Meldungen bis und mit 12:52 sind da). Wenn ich auf dem GUI die Settings probiere zu aktivieren, werden jedoch keine zusätzlichen Logmeldungen generiert.

        Ich hab dann noch auf Linux unter /var/log und /opt/loxberry/log alle Logs durchgeschaut, die einen Zeitstempel um die 12:50 hatten - aber nirgends war etwas auffälliges.

        Das ist wirklich etwas rätselhaft. Werden die Einstellungen in die mqtt.json gespeichert? Ich hab mal geprüft, die gehören dem User loxberry und sind auch schreibbar.

        Gruss
        Joel

        Kommentar

        • Christian Fenzl
          Lebende Foren Legende
          • 31.08.2015
          • 11217

          Ja, die Daten landen in der mqtt.json. Kannst du prüfen, ob diese json-valide ist (z.B. hier: https://jsonformatter.curiousconcept.com/)

          Kannst du außerdem mal im Browser die DevTools öffnen, und schauen, ob du bei den Netzwerk-Requests Fehler bekommst, wenn du die Seite lädst und wenn du eine Checkbox änderst?
          Und ob sich der Timestamp der mqtt.json ändert bei einer Änderung?

          lg, Christian

          Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

          Kommentar

          • vegane_bockwurst
            Azubi
            • 25.09.2022
            • 4

            Hoi Christian Fenzl

            Okay ich denke ich bin ein bisschen weiter.

            Zuerst: mqtt.json ist valid und wird nicht aktualisiert, wenn ich einen Knopf drücke.

            Die DevTools Fehler haben mich erschlagen und zwar mit einem CORS Fehler, weil ich den loxberry als http und nicht https laufen liess. Das liess sich in Chrome umgehen, indem man das Flag deaktiviert.
            chrome://flags/#block-insecure-private-network-requests

            Anschliessend tauchten http 500 Fehler auf, sobald ich probiert habe ein Flag zu setzen:
            POST http://loxberry/admin/plugins/mqttgateway/ajax_php.php 500 (Internal Server Error)

            Die URL kann ich direkt zugreifen und er gibt mir die PIDs vom gateway und mosquitto aus, die korrekt & aktiv sind auf dem System. Ich hab also im apache Log nach Fehlern gesucht, aber da ist nichts.

            /opt/loxberry/log/system_tmpfs/apache2/php.log gibt's übrigens nicht, ich hätte erwartet, dass php dort vielleicht einen Fehler reinschreibt.

            Hier noch das Bild mit dem Stacktrace:
            Klicke auf die Grafik für eine vergrößerte Ansicht  Name: image.png Ansichten: 0 Größe: 21,8 KB ID: 358779​Gruss & danke
            Joel

            Kommentar

            • vegane_bockwurst
              Azubi
              • 25.09.2022
              • 4

              Ich habe jetzt mal den loxberry komplett neu installiert - jetzt läuft alles. Ich vermute ein Debian Upgrade hat mir was verschossen so, dass loxberry halb funktioniert hat und halb nicht mehr. Weshalb nirgends Logs waren und was die Ursache war bleibt mir jedoch ein Rätsel :-(

              Kommentar

              • PatrickG
                Dumb Home'r
                • 06.05.2022
                • 27

                He Leute
                Weiss jemand, ob ich einen Neustart des Loxberry über einen MQTT befehlt ausführen kann. So könnte ich über Loxone einen Neustart anfordern falls nötig.
                Geht das?

                Kommentar

                • svethi
                  Lebende Foren Legende
                  • 25.08.2015
                  • 6292

                  Das kannst Du auch ohne MQTT. Stand schonmal irgendwo. Die Frage ist nur … wenn nötig?! Wenn nötig, dann steht der Loxberry und wenn der steht, dann reagiert er auch darauf nicht mehr. War auch schon oft genug ein Thema. Da kannste lieber eine schaltbare Steckdose dranhängen
                  Miniserver; KNX; Vitogate; EnOcean (EnOceanPi); Loxone Air; Caldav-Kalenderanbindung; RaspberryPi und für keine Frickellösung zu schade :-)

                  Kommentar

                  • PatrickG
                    Dumb Home'r
                    • 06.05.2022
                    • 27

                    Nun leider ist das nicht immer der Fall, der Neustart eines Loxberry kann auch nötig werden, wenn eine Peripherie sich aufhängt. So z.B das Zigbee plugin oder ein USB Dongle.
                    Und aus diesem Grund würde ich gerne den Befehl über mqtt absetzen damit der Loxberry neu startet.
                    Sollte das nicht gehen, wäre ich froh über die Codezeile die man benötigt um über einen virtuellen Ausgang das Neustarten zu forcieren. Danke

                    Kommentar

                    • Christian Fenzl
                      Lebende Foren Legende
                      • 31.08.2015
                      • 11217

                      Per MQTT ginge es mit dem PHP Transformer, ist aber wahrscheinlich ein bisschen Spielerei, und braucht PHP-Code ala system("sudo Reboot") ; oder sowas in der Art.
                      https://wiki.loxberry.de/plugins/mqt...ecute_custom?s[]=php&s[]=transformer


                      Hier einfacher, wie's per HTTP geht:
                      https://wiki.loxberry.de/howtos_know..._neu_starten?s[]=reboot

                      LG, Christian
                      Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

                      Kommentar

                      • PatrickG
                        Dumb Home'r
                        • 06.05.2022
                        • 27

                        OK soweit klar, dann über http. Aber jetzt noch die dumme Frage, über den Standard Virtuellen Ausgang, kann ich ja nur UDP senden oder??? Wo kommt jetzt die http Zeile hin?

                        Kommentar

                        • Vossi
                          LoxBus Spammer
                          • 25.08.2015
                          • 456

                          Also in der Doku steht (Zitat):
                          Ein virtueller Ausgangsverbinder wird verwendet, um netzwerkfähige Geräte zu steuern. Das zu steuernde Gerät sollte ein zum Miniserver kompatibles Protokoll beherrschen (tcp, udp, http, wol).
                          Steht hier: https://www.loxone.com/dede/kb/virtu...und-ausgaenge/

                          Kommentar

                          • TomekWaw
                            LoxBus Spammer
                            • 25.07.2019
                            • 435

                            I found a strange bug today.

                            Lately I've enabled option to expand JSON data and my Zigbee motion sensors (Philips Hue, Aqara) stopped to report motion.

                            Detailed analysis makes me believe that such topics:

                            iobroker/deconz/0/Sensors/Philips_Motion_Sensor_6/presence=0

                            are perfectly fine processed by MQTT Gateway when option "Expand JSON data" is disabled.

                            And they stop right after it is enabled.

                            That's strange to me.
                            Noch ein oder zwei Jahre mit Loxone und ich werde Deutsch sprechen

                            Kommentar


                            • Christian Fenzl
                              Christian Fenzl kommentierte
                              Kommentar bearbeiten
                              The log of the Gateway would be fine, in Debug mode.
                          • TomekWaw
                            LoxBus Spammer
                            • 25.07.2019
                            • 435

                            Christian, here's the relevant part of the log in debug mode.
                            Seems it does not relate only to Philips Motion Sensor / presence topic.
                            I don't know why it even tries to expand it as a JSON when it doesn't seem to be.
                            Without "Expand" option it all works fine.

                            Click image for larger version  Name:	mqtt-debug.png Views:	0 Size:	631.0 KB ID:	360189
                            Noch ein oder zwei Jahre mit Loxone und ich werde Deutsch sprechen

                            Kommentar


                            • TomekWaw
                              TomekWaw kommentierte
                              Kommentar bearbeiten
                              Perhaps this is somehow related to option for converting binaries to 0 and 1

                            • Christian Fenzl
                              Christian Fenzl kommentierte
                              Kommentar bearbeiten
                              Ah, I see.
                              The value is „true“.
                              Some time ago, the Perl parser corrected a non-standard behaviour, that now leads to my exception.
                              A plain „true“ (not even required to be „{ true }“ is valid json, and I‘m currently not aware of this in my code.
                              The older Perl json lib did not accept „true“ as json, therefore the processing continued without json parsing.
                              I cannot fix this immediately, sorry.
                              I create an issue for this.
                              Zuletzt geändert von Christian Fenzl; 09.10.2022, 16:07.

                            • TomekWaw
                              TomekWaw kommentierte
                              Kommentar bearbeiten
                              Thanks. It's not a major issue for me, but it would be great if this could be fixed sometime in the future
                          Lädt...