Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Besser MQTT einsetzen für Spark Core und ESP8266?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Besser MQTT einsetzen für Spark Core und ESP8266?

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      StefSign last edited by

      Hi Marco,

      werde die nächsten Tage MQTT auf Spark Core und ESP8266 ausprobieren.

      Gerade beim ESP8266 sind die Preise und Möglichkeiten unglaublich gut!

      Da muss doch ein Pferdefuß sein.

      🙂

      Danke für Deine Vorarbeiten…

      Steve

      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        Es gibt neue Version von mqtt. Ziemlich überarbeitet. Auch mqtt-modul upgedated.

        Es war ein Denkfehler, dass mqtt-modul ein Sorglos-Paket ist. Ich dachte, dass subscribe auch modul managen wird.

        Es kann sein, dass die Adressen einbisschen sich ändern, z.b statt "/mqtt/0/blabla" => "mqtt/0/blabla"

        Es gibt auch Doku: https://github.com/ioBroker/ioBroker.mqtt#configuration

        1 Reply Last reply Reply Quote 0
        • V
          vader722 last edited by

          Hi Bluefox,

          jetzt läuft der Adapter garnicht mehr. Er startet, aber sobald sich ein Client connected crasht der Adapter.

          Ich hab ihn mal mit Hand gestartet und dabei kam dann diese Fehlermeldung:

          157_bildschirmfoto_2015-05-14_um_11.56.38.png

          Gruss Marco

          1 Reply Last reply Reply Quote 0
          • S
            StefSign last edited by

            Hallo,

            also erste Versuche mit http://www.mqttdashboard.com und dem MQTT Adapter gemacht.

            Arbeitet wie vermutet ==> bisher keine Probleme

            Steve

            1 Reply Last reply Reply Quote 0
            • S
              StefSign last edited by

              Hallo,

              so…erste Ergebnisse:

              • MQTT auf Spark Core installiert

              • Als Broker erstmal http://www.mqttdashboard.com genommen.

              • Auf ioBroker den MQTT Adapter (als Client) ebenfalls mit http://www.mqttdashboard.com verbunden.

              • Mosquitto auf meinem Mac installiert.

              • Im Mac Terminal konnte ich "mosquitto_pub -h http://www.mqttdashboard.com -t /inTopic -m GREEN" die grüne Spark LED einschalten.

              • Localen MQTT Broker mit "/usr/local/sbin/mosquitto" gestartet. Hier war das Kommando dann "mosquitto_pub -h 127.0.0.1 -t /inTopic -m GREEN"

              • Mann muss das Spark Programm natürlich anpassen, je nachdem welcher Broker verwendet wird.

              • ioBroker hat alles mitbekommen!

              ==> Geht!!

              🙂

              Werde jetzt mal über Nacht das Ganze beobachten. Morgen mal den MQTT Broker auf ioBroker probieren.

              Steve

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                @vader722:

                Hi Bluefox,

                jetzt läuft der Adapter garnicht mehr. Er startet, aber sobald sich ein Client connected crasht der Adapter.

                Ich hab ihn mal mit Hand gestartet und dabei kam dann diese Fehlermeldung:

                filename="Bildschirmfoto 2015-05-14 um 11.56.38.png" index="0">~~

                Gruss Marco `
                Es gibt neuere Version.

                1 Reply Last reply Reply Quote 0
                • ruhr70
                  ruhr70 last edited by

                  .

                  Ich weiss nicht, ob es da einen Zusammenhang gibt.

                  Ungefähr seit der Zeit, seit dem der mqtt Adapter geändert wurde, wirft mein owntracks Flow (nutzt in einer Variante den mqtt Adapter) nur noch Fehler raus.

                  Ich habe das gleiche Thema aber auch mit dem mqtt Node in Node red. Da dürfte es ja eigentlich kein Zusammenhang geben.

                  Wo vorher die Daten reinkamen und dann über ein JSON Node liefen, bekomme ich heute nur Zahlenkolonnen.

                  123,34,116,115,116,34,58,34,49,...
                  

                  Die letzten verwertbaren Daten kamen vom 13.05. gegen 20:00 Uhr.

                  Komisch… da die mqtt node-red Node auch nicht funktioniert, würde ich ja sagen, dass es nicht am Adapter liegt.

                  An Owntracks dürfte sich aber auch nichts geändert haben.

                  Sowohl der ioBroker mqtt Adapter, als auch die Node in Node-red sind beide auf Port 1883 eingestellt.

                  Das hat bisher funktioniert.

                  1 Reply Last reply Reply Quote 0
                  • S
                    StefSign last edited by

                    Morgen,

                    zwei Ergebnisse habe ich auch zu bieten:

                    Spark Client:

                    • Verliert die Connection zu Broker…wird wohl die nächtliche Telekom Trennung sein.

                    • Nur ein Reset hat die Verbindung wieder aufgebaut.

                    • Werde mal einen lokalen MQTT Broker probieren und schauen ob es dabei stabil über die Zeit läuft.

                    ioBroker als MQTT Broker:

                    • Funktionierte erstmal nicht…jetzt wo ich die Fehlermeldung kopieren wollte...ging es.

                    • Leider habe ich das alte Log gelöscht, sinngmäß stand drin "MQTT.1 terminated..."

                    • Wäre es besser einen MQTT Broker wie Mosquitto statt dessen zu nutzen?

                    Steve

                    1 Reply Last reply Reply Quote 0
                    • V
                      vader722 last edited by

                      Ich hab die Version 0.2.4 grad mal getestet:

                      • ich bekomme ein Connect

                      • einmal bekam ich auch die ganzen Stati von hm-rpc beim Connect (so ist es auch parametriert)

                      • ansonsten bekomme ich gar keine Messages (getestete subscription: #, hm-rpc/#, /#)

                      • das LogFile von ioBroker zeigt manchmal an wenn ich eine neue Subscription starte (meist nach dem ersten Connect nach Boot) ansonsten meist nicht

                      Getestet hab ich unter OSx mit MQTT.fx

                      Gruss Marco

                      1 Reply Last reply Reply Quote 0
                      • S
                        StefSign last edited by

                        Hi Marco,

                        MQTT.fx sieht nett aus, aber probier doch mal Mosquitto. Interessant ist der letzte Teil von http://nthn.me/posts/2012/mqtt.html.

                        Welchen Vorteil hat ioBroker als MQTT Broker?

                        Steve

                        1 Reply Last reply Reply Quote 0
                        • Bluefox
                          Bluefox last edited by

                          @vader722:

                          Ich hab die Version 0.2.4 grad mal getestet:

                          • ich bekomme ein Connect

                          • einmal bekam ich auch die ganzen Stati von hm-rpc beim Connect (so ist es auch parametriert)

                          • ansonsten bekomme ich gar keine Messages (getestete subscription: #, hm-rpc/#, /#)

                          • das LogFile von ioBroker zeigt manchmal an wenn ich eine neue Subscription starte (meist nach dem ersten Connect nach Boot) ansonsten meist nicht

                          Getestet hab ich unter OSx mit MQTT.fx

                          Gruss Marco `
                          Nehme 0.2.5. Du hattest keine Maske definiert, dann hat Broker auch nichts genommen. Fixed.

                          1 Reply Last reply Reply Quote 0
                          • S
                            StefSign last edited by

                            Morgen,

                            gestern mal den ESP8266 mit MQTT getestet…na ja.

                            Umgebung:

                            • Olimex ESP8266 Dev

                            • Firmware NodeMCU

                            • MQTT Client mittels Lua https://github.com/dukov777/esp8266-evb-lua

                            • Esplorer IDE (kein Schreibfehler)

                            Ergebnis:

                            • Ist viel umständlicher eine Entwicklungsumgebung aufzubauen.

                            • Lua Programme sind wohl nicht so stabil…der 8266 hat sich immer wieder resettet.

                            • Mir ging immer wieder der Speicher aus "Out of Memory"

                            ==> Noch nicht ausgereift! Werde es mal weiter verfolgen.

                            BTW, Spark Photon ist "on the way"

                            Steve

                            P.s. Danke für die neue MQTT Version...

                            1 Reply Last reply Reply Quote 0
                            • V
                              vader722 last edited by

                              Ich hatte schon eine (verschiedene Masken eingegeben, Effekt war aber der selbe).

                              Daraufhin habe ich die neue Version mal ausprobiert und es sieht folgendermassen aus:

                              157_bildschirmfoto_2015-05-16_um_09.16.56.png

                              Subscription, dieses mal mit Mosquitto:

                              157_bildschirmfoto_2015-05-16_um_09.19.07.png

                              Zuerst werden alle States brav übertragen. Danach kommt jedoch nur eine Message von "system/adapter/hm-rpc/1/connected" und diese zyklisch. Alle anderen Werte, welche sich laut "Ereignisse" ändern kommen anscheinend nicht an:

                              157_bildschirmfoto_2015-05-16_um_09.18.42.png
                              (Ich habe ein paar Leerzeilen eingefügt, nachdem die Übertragung aller Werte durch ist)

                              Wenn ich das recht verstehe müssten doch alle, sich ändernden Werte in meiner Subscription auftauchen ?

                              @StefSign

                              ` > MQTT.fx sieht nett aus, aber probier doch mal Mosquitto. Interessant ist der letzte Teil von http://nthn.me/posts/2012/mqtt.html.

                              Welchen Vorteil hat ioBroker als MQTT Broker? `
                              Du hast den Zugriff auf die ioBroker Objekte/Ereignisse. Wenn ioBroker Client wäre, müsstest Du erstmal die Stati auf den Mosquitto Server pushen..so geht das aus ioBroker heraus.

                              Gruss Marco

                              1 Reply Last reply Reply Quote 0
                              • ruhr70
                                ruhr70 last edited by

                                .

                                ich muss noch einmal nachfragen…

                                seit ein paar Tagen erhalte ich über mqtt (sowohl im mqtt Adapter, als auch im mqtt Node in Node-red) keinen lesbaren Text mehr, sondern nur noch eine Zahlenkolonne, mit Komma getrennt.

                                So fängt z.B. so eine Kolonne an:

                                123,34,116,115,116,34...usw.,
                                

                                Liegt das an der neuen Version des mqtt Adapters?

                                Zu dem Zeitpunkt fing das ungefähr an.

                                Wenn ich so Zahlen gespeichert habe…

                                Kann ich diese irgendwie umwandeln?

                                1 Reply Last reply Reply Quote 0
                                • ruhr70
                                  ruhr70 last edited by

                                  @ruhr70:

                                  .

                                  ich muss noch einmal nachfragen…

                                  seit ein paar Tagen erhalte ich über mqtt (sowohl im mqtt Adapter, als auch im mqtt Node in Node-red) keinen lesbaren Text mehr, sondern nur noch eine Zahlenkolonne, mit Komma getrennt.

                                  So fängt z.B. so eine Kolonne an:

                                  123,34,116,115,116,34...usw.,
                                  

                                  Liegt das an der neuen Version des mqtt Adapters?

                                  Zu dem Zeitpunkt fing das ungefähr an.

                                  Wenn ich so Zahlen gespeichert habe…

                                  Kann ich diese irgendwie umwandeln? `

                                  OK, mit diversen Versuchen habe ich nun rausbekommen, dass es sich dabei um die einzelnen Zeichen in utf-8 dezimal und durch Komma getrennt handelt.

                                  Über die Seite http://software.hixie.ch/utilities/cgi/ … f8-decoder bekomme ich die Zahlenkolonnen decodiert, wenn ich beim EIngabeformat Freeform Numeric auswähle.

                                  Dann habe ich immer noch zwei Fragen 😉 nun etwas anders:

                                  1.) liegt nun ein "Fehler" beim mqtt vor? Oder muss ich bei mir suchen (hab da nichts dran geändert).

                                  2.) wenn das so gewollt ist. Hat jemand einen Code parat, mit dem man de Stream im obigen Format wandeln kann?

                                  1 Reply Last reply Reply Quote 0
                                  • Bluefox
                                    Bluefox last edited by

                                    @ruhr70:

                                    1.) liegt nun ein "Fehler" beim mqtt vor? Oder muss ich bei mir suchen (hab da nichts dran geändert).

                                    2.) wenn das so gewollt ist. Hat jemand einen Code parat, mit dem man de Stream im obigen Format wandeln kann? `
                                    Wo bei dir? SparkCore mit C?

                                    Wie betreibst du MQTT Adapter als Server oder als Client?

                                    1 Reply Last reply Reply Quote 0
                                    • Bluefox
                                      Bluefox last edited by

                                      @vader722:

                                      Ich hatte schon eine (verschiedene Masken eingegeben, Effekt war aber der selbe).

                                      Daraufhin habe ich die neue Version mal ausprobiert und es sieht folgendermassen aus:

                                      filename="Bildschirmfoto 2015-05-16 um 09.16.56.png" index="3">~~

                                      Subscription, dieses mal mit Mosquitto:

                                      filename="Bildschirmfoto 2015-05-16 um 09.19.07.png" index="1">~~

                                      Zuerst werden alle States brav übertragen. Danach kommt jedoch nur eine Message von "system/adapter/hm-rpc/1/connected" und diese zyklisch. Alle anderen Werte, welche sich laut "Ereignisse" ändern kommen anscheinend nicht an:

                                      filename="Bildschirmfoto 2015-05-16 um 09.18.42.png" index="2">~~
                                      (Ich habe ein paar Leerzeilen eingefügt, nachdem die Übertragung aller Werte durch ist)

                                      Wenn ich das recht verstehe müssten doch alle, sich ändernden Werte in meiner Subscription auftauchen ?

                                      @StefSign

                                      ` > MQTT.fx sieht nett aus, aber probier doch mal Mosquitto. Interessant ist der letzte Teil von http://nthn.me/posts/2012/mqtt.html.

                                      Welchen Vorteil hat ioBroker als MQTT Broker? `
                                      Du hast den Zugriff auf die ioBroker Objekte/Ereignisse. Wenn ioBroker Client wäre, müsstest Du erstmal die Stati auf den Mosquitto Server pushen..so geht das aus ioBroker heraus.

                                      Gruss Marco `
                                      48_mqttsettings.jpg

                                      Mach bitte Flag AN. Dann wirst du auch Zustände und nicht nur Befehle bekommen.

                                      1 Reply Last reply Reply Quote 0
                                      • ruhr70
                                        ruhr70 last edited by

                                        @Bluefox:

                                        @ruhr70:

                                        1.) liegt nun ein "Fehler" beim mqtt vor? Oder muss ich bei mir suchen (hab da nichts dran geändert).

                                        2.) wenn das so gewollt ist. Hat jemand einen Code parat, mit dem man de Stream im obigen Format wandeln kann? `
                                        Wo bei dir? SparkCore mit C?

                                        Wie betreibst du MQTT Adapter als Server oder als Client? `

                                        Ne… das hat bei mir mit dem Spark Core nichts zu tun...

                                        Ich hatte mich da mal drangehangen, da ungefähr zum Zeitpunkt der Änderungen am mqtt Adapter ich die Meldungen über mqtt nur noch als Dezimalzahlen mit utf-8 Werten erhalte.

                                        Vorher war es lesbarer Text. Siehe: http://forum.iobroker.org/viewtopic.php … =708#p5230

                                        Und das über zwei Wege gleichzeitig:

                                        1.) mqtt- Adapter schreibt in eine ioBroker Variable (mqtt.0.owntracks. …)

                                        2.) Node-red mqtt Node liefert ebenfalls nur noch Dezimalzahlen

                                        Komisch ist, dass es sowohl Node-red, als auch den mqtt-Adapter betrifft.

                                        Daher würde ich technisch den Fehler eher bei der iOS App Owntracks sehen.

                                        Komisch ist aber auch der zeitliche Zusammenhang mit der mqtt-Adapter Version und an der iOS App habe ich nichts geändert.

                                        Kann natürlich Zufall sein...

                                        1 Reply Last reply Reply Quote 0
                                        • Bluefox
                                          Bluefox last edited by

                                          Ich kenne doch deine Anlage nicht. Kannst du mir ein paar Details geben?

                                          Ich habe nur Vermutungen.

                                          • Du hast owntracks iOS App als MQTT Client

                                          • Du hast node-red als Broker/Server auf dem port 1883

                                          • Und parallel dazu mqtt-ioBroker-Adapter als Server auf einem Anderem port?

                                          Stimmt das?

                                          1 Reply Last reply Reply Quote 0
                                          • Bluefox
                                            Bluefox last edited by

                                            @ruhr70:

                                            .

                                            Ich weiss nicht, ob es da einen Zusammenhang gibt.

                                            Ungefähr seit der Zeit, seit dem der mqtt Adapter geändert wurde, wirft mein owntracks Flow (nutzt in einer Variante den mqtt Adapter) nur noch Fehler raus.

                                            Ich habe das gleiche Thema aber auch mit dem mqtt Node in Node red. Da dürfte es ja eigentlich kein Zusammenhang geben.

                                            Wo vorher die Daten reinkamen und dann über ein JSON Node liefen, bekomme ich heute nur Zahlenkolonnen.

                                            123,34,116,115,116,34,58,34,49,...
                                            

                                            Die letzten verwertbaren Daten kamen vom 13.05. gegen 20:00 Uhr.

                                            Komisch… da die mqtt node-red Node auch nicht funktioniert, würde ich ja sagen, dass es nicht am Adapter liegt.

                                            An Owntracks dürfte sich aber auch nichts geändert haben.

                                            Sowohl der ioBroker mqtt Adapter, als auch die Node in Node-red sind beide auf Port 1883 eingestellt.

                                            Das hat bisher funktioniert. `
                                            Im /opt/iobroker/node_modules/iobroker.mqtt/main.js

                                            gibt es Zeile 434 (oder in der Nähe)

                                            if (typeof packet.payload == 'object') packet.payload = packet.payload.toString();
                                            

                                            Kannst du die Zeile auf

                                            if (typeof packet.payload == 'object') packet.payload = packet.payload.toString('utf8');
                                            

                                            Ändern und Adapter neu starten?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            759
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            45
                                            6545
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo