Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. [gelöst] ioBroker als MQTT Client, wie?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] ioBroker als MQTT Client, wie?

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @Chris 1 last edited by

      @chris-1 Na wie gesagt, da kann ich wenig zu sagen. Wenn Du es schaffst in Deinen mqtt-Broker zu schreiben, dann bin ich wieder im Spiel. Ansonsten bin ich bzgl. Basteln mit ESP32 und flashen von Software außen vor. War froh, dass ich ohne Löten ein/zwei Geräte mit Tasmota flashen konnte.

      Wie gesagt, wenn es dann in mqtt drin ist und Du versuchst dann mit Logik was miteinander zu verbinden, dann kann ich ggf. wieder unterstützen.

      Chris 1 1 Reply Last reply Reply Quote 0
      • Chris 1
        Chris 1 @mickym last edited by

        @mickym Na ich pub/sub doch auf mosquitto schon fleissig 🙂

        mickym 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @Chris 1 last edited by

          @chris-1 Gut also klappt Dein Schalten jetzt ?

          Chris 1 1 Reply Last reply Reply Quote 0
          • Chris 1
            Chris 1 @mickym last edited by

            @mickym Jupp,
            aber ich würde halt so manches gerne noch vereinfachen und Probleme auch einfach auslagern, daher die Idee mit ESP32.
            Bei der EQ-3 Geschichte (Thermostat) zB würde ich die BLE Probleme im PC umschiffen. Der ESP würde sich munter mit der Heizung unterhalten und pub/sub dann direkt an mosquitto machen.

            mickym 1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @Chris 1 last edited by

              @chris-1 Gut aber das Schalten der zigbee Lampe über mqtt hatte ja gestern noch nicht geklappt und shelly hattest Du ja auch noch nicht implementiert.

              Chris 1 1 Reply Last reply Reply Quote 0
              • Chris 1
                Chris 1 @mickym last edited by Chris 1

                @mickym Zigbee-Lampe steuern geht via mqtt. Um Shelly hab ich mich noch nicht gekümmert, läuft bisher via WIFI bzw. ioBroker.Adapter

                Wenn ich mich recht entsinne, dann kann man die Shelly aber direkt über die Browser-Konfiguration der Shelly auf MQTT umschalten. Werde ich bei Gelegenheit machen. Dann könnte auch der ioBroker.Adapter für Shelly raus fliegen.

                Ach, lach ... Lampe. Wenn ich nach Hause komme und Dämmerung/dunkel ist, dann schaltet sich meine Zimmerbeleuchtung an, falls sie aus war, sobald ich nach Hause komme 🙂

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @Chris 1 last edited by

                  @chris-1 Genau bei mir ist im Shelly direkt auf mqtt umgeschaltet. - Die Cloud funktioniert dann nicht mehr, aber im lokalen Netz geht auch die App wieder. 🙂 - Halt keine Historie das ist klar.

                  Chris 1 1 Reply Last reply Reply Quote 0
                  • Chris 1
                    Chris 1 @mickym last edited by

                    @mickym Ich möchte gar keine Cloud. Mir ist am liebsten, wenn das alles rein lokal läuft.

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Chris 1 last edited by

                      @chris-1 sagte in ioBroker als MQTT Client, wie?:

                      @mickym Ich möchte gar keine Cloud. Mir ist am liebsten, wenn das alles rein lokal läuft.

                      Na dann passt es ja.

                      1 Reply Last reply Reply Quote 0
                      • F
                        Fam3xCE @mickym last edited by

                        @mickym ich nochmal....
                        Wie hast du die Datenpunkte angelegt, da bei dir beim Ordner "tischlampe" auch das json angezeigt wird?

                        mickym 1 Reply Last reply Reply Quote 0
                        • mickym
                          mickym Most Active @Fam3xCE last edited by mickym

                          @fam3xce tischlampe ist ein state, der von zigbee2mqtt selbst kommt und deshalb ursprünglich nur als state Datenpunkt automatisch angelegt wird. Das ist das topic, was Du dort unter friendly name anlegst. Die Geräte als die mqtt-topics wohin dann gepublished wird, legst Du im zigbee2mqtt selbst an, in dem Du das Gerät entsprechend benennst:

                          8cb9cf0b-303b-41c3-94a0-69ec8aa65390-image.png

                          Die Datenpunkte darunter also .../tischlampe/set und .../tischlampe/get musst Du selbst anlegen.
                          Das geht entweder in dem Du über ein anderes tool (MQTT-Explorer, Node-Red mqtt Nodes), über sendTo des Adapters auf dieses topic eine Nachricht publishst oder Du legst den Datenpunkte im admin selbst an.

                          Dazu musst Du, wie hier beschrieben in dem Expertenmodus wechseln:
                          Da der Admin es nicht zulässt unter einem state noch einen Datenpunkt anzulegen, musst Du diesen Admin überlisten.

                          Dazu gehst Du in die Hierarchie drüber (meist folder) und legst den Datenpunkt wie folgt an:

                          8319e380-ac2e-437a-b48f-4c997f6657ba-image.png

                          Durch den Punkt wird die Hierarchie übersprungen beim Anlegen.

                          F 1 Reply Last reply Reply Quote 0
                          • F
                            Fam3xCE @mickym last edited by Fam3xCE

                            @mickym danke. Das mit zigbee2mqtt war klar, nur konnte ich dann in iobroker unter diesem Datenpunkt nichts anlegen.
                            Jetzt mit "name.set" als neue Bezeichnung gehts.

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

                              @mickym Wie legt man eigentlich unter Userdata "sauber" einen Datenpunkt/Gerät/..? an, welcher einen DP von mqtt spiegelt und/oder quasi-kopiert?

                              Sinn in meinen Augen ist nicht nur, dass man eine übersichtliche Struktur über alle Verwendeten Protokolle-Grenzen hinweg erstellen kann, sondern vor allem auch die Archivierung/History?
                              Es ist doch bestimmt nicht sinn, dass man unzählige Scripts erstellt, die den Kram immer rüber kopieren.

                              zB bei Device-Reset oder ioBroker.Adapter update/tausch gehen ja ggf diverse Daten verloren (Stromverbrauch oder Meßwerte, die man zwar real-/in-time abfragen kann, welche jedoch nicht public archiviert werden

                              mickym 1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @Chris 1 last edited by mickym

                                @chris-1 Um Teile oder auch um einzelne Werte aus JSON von den Originalpunkten zu entkoppeln legst Du Dir Alias an.

                                Willst Du beispielsweise einen Wert aus JSON in einem einzelnen Datenpunkt speichern, weil Du die Historie speichern möchtest, dann siehst Du hier ein Beispiel.
                                https://forum.iobroker.net/post/864336

                                Wenn Du mit Node-Red als Logikmaschine arbeitest, dann habe ich einen Flow, der Dir aus von Dir gewählten JSONs oder Du kannst theoretisch auch einen Baum nutzen in einzelne Datenpunkte unter userdata_0 anlegt und auch aktualisiert.

                                Hier mein Flow - kannst Dir ja mal durchlesen, was der kann: https://forum.iobroker.net/topic/43856/json-oder-javascript-objekt-in-iobroker-datenpunkte-zerlegen

                                Generell -

                                Archivierung findet nicht im direkt im iobroker statt. Der iobroker verwaltet nur aktuelle Zustände. Für die Archivierung für irgendwelche Grafen gibt es diverse Adapter: History, SQL-Adapter, Influx Adapter die dann eine Historie der Datenpunkte aufzeichnen und in den entsprechenden Datenbanken speichern.

                                Chris 1 2 Replies Last reply Reply Quote 1
                                • Chris 1
                                  Chris 1 @mickym last edited by

                                  @mickym Bis Node-Red und NOCH weitere Ergänzungen ist noch Weg zu gehen. Ich versuche erstmal mehr hier in ioBroker zu verstehen und bin heil froh, dass der temp voll aufgedrehte Debuglevel bei mosquitto schon einen guten Austausch (mosquitto, zigbee2mqtt service, zigbee2mqtt ioBroker.Adaper und mqtt ioBroker.Client) anzeigt

                                  mickym 1 Reply Last reply Reply Quote 0
                                  • mickym
                                    mickym Most Active @Chris 1 last edited by

                                    @chris-1 Ich habe Dir ja nur angeboten, dass Du damit schnell JSONS in einzelne Datenpunkte unter userdata erstellen kannst. Da helfe ich gerne - ist nicht so kompliziert.

                                    Das mit den Alias - ist Bestandteil der Basis Iobroker - Funktionalität.

                                    Chris 1 1 Reply Last reply Reply Quote 0
                                    • Chris 1
                                      Chris 1 @mickym last edited by

                                      @mickym said in ioBroker als MQTT Client, wie?:

                                      Archivierung findet nicht im direkt im iobroker statt. Der iobroker verwaltet nur aktuelle Zustände. Für die Archivierung für irgendwelche Grafen gibt es diverse Adapter: History, SQL-Adapter, Influx Adapter die dann eine Historie der Datenpunkte aufzeichnen und in den entsprechenden Datenbanken speichern.

                                      sql-Adapter ist schon installiert, damit werd ich mich auch noch beschäftigen (postgreSQL)

                                      1 Reply Last reply Reply Quote 0
                                      • Chris 1
                                        Chris 1 @mickym last edited by Chris 1

                                        @mickym Das mit dem Alias war ein echt guter Tipp!

                                        Habe an diversen Stellen nochmal nachgelesen und auch ein Video von "verdrahtet" gesehen, in welchem ein darauf aufsetzendes Plugin (Adapter) vorgestellt wird.

                                        Was ich im Endeffekt wohl am meisten daraus mit genommen habe, ist mal diese Objektbeschreibung (Alias über Plugin erstellt), die hoffendlich ein paar gedankliche Lücken schliesst

                                        Bildschirmfoto vom 2022-11-22 20-11-00.png

                                        Diese 18 Zeilen sind echt mächtig hilfreich!

                                        Danke, dass Du mich auf den richtigen Pfad gesetzt hast!

                                        Ich hatte mit sowas (vgl Screenshot) schon herum experimentiert, aber wohl an den falschen stellen gedreht

                                        mickym 1 Reply Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @Chris 1 last edited by mickym

                                          @chris-1 Na wenn Du den Thread, den ich gepostet habe, hat der Alias ein im Moment schon gutes Interface. Da brauchst Du keinen Adapter mehr. Da ist ja ein neuer Alias Tab dabei - mehr braucht es da nicht. da brauchst Du nicht das common-JSON zu bearbeiten.

                                          Du musst aufpassen, dass Du gerade das was im Netz seit mehr als 1 Jahr rumsteht, heute nicht mehr aktuell ist und man heute anders macht.

                                          Chris 1 1 Reply Last reply Reply Quote 0
                                          • Chris 1
                                            Chris 1 @mickym last edited by Chris 1

                                            @mickym Dieser Plugin/Adapter ist für mich als Neuling recht praktisch, um mir sozusagen erstmal Templates zu schaffen.
                                            Allein schon diese erste, um zu verstehen, was der Alias bzw. selbst erzeugte DP (auch Gerät?) ist und wo das ganze hin zeigt bzw seinen Ursprung hat, allein diese kleine Info (id, _id, from, user) hilft wohl viel für das Verständnis.

                                            Hiernach kann ich auf Deinem Weg schneller gehen 🙂

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            542
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            153
                                            10008
                                            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