Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Mqtt - Variablen

    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

    Mqtt - Variablen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Humidor
      Humidor @haus-automatisierung last edited by

      @haus-automatisierung gut, dh zwischen Mqtt Standard und Victron ist ein Unterschied, das wird mich da wohl auch verwirren. Damit umschreibe ich ab jetzt nur noch. (lesen/holen/schreiben)

      ich sage dem ioBroker Broker, er soll bitte seine Daten senden
      ich mache das zyklisch alle 30s, sonst sendet er nach 60s nicht mehr.
      das wird im Cerbo Node Red mit einer Mqtt Out Node gemacht
      auf Mqtt In Node bekomme ich die Werte, die ich sehen will.

      haus-automatisierung 1 Reply Last reply Reply Quote 0
      • haus-automatisierung
        haus-automatisierung Developer Most Active @Humidor last edited by

        @humidor Am Ende weiß ich nicht genau, was Du vor hast.

        • Du hast einen MQTT-Broker (der läuft auf dem Cerbo).
        • Dieser erwartet von einem Client (z.B. Node-RED auf dem Cerbo) einen regelmäßig "Read-Request".
        • Dieser "Read-Request" ist aber eigentlich nur ein Publish auf R/<portal ID>/keepalive. Das braucht also in Node-RED eine MQTT-Out-Node. Payload kann auch leer sein. Also total egal. Zyklisch senden geht z.B. mit einer Inject Node.

        Jetzt ist die Frage, welche Rolle der ioBroker dabei spielt.

        1. Warum verbindet der sich nicht auch einfach mit dem MQTT-Adapter (im Client-Modus) gegen den MQTT-Broker im Cerbo?
        2. Was genau soll der ioBroker dann tun?

        Um nochmal auf die Ausgangsfragen einzugehen:

        @humidor sagte in Mqtt - Variablen:

        kann ich aus dem Blockly Variablen im Mqtt Master (am Victron Cerbo) erzeugen?

        Diese "Variablen" heißen Topics und sind nicht persistent. Um einen Datenpunkt im ioBroker zu erzeugen, muss einfach nur eine Nachricht auf einem abonnierten Topic gepublished werden. Dann wird diese automatisch angelegt.

        Ein schreiben dieser Datenpunkte führt dann wieder zu einem Publish auf dem Topic (dies ist auf dem Objekt in ioBroker hinterlegt).

        @humidor sagte in Mqtt - Variablen:

        Was ich nun will, ist die Regelung / Steuerung vom ioBroker mittels Blockly zu realisieren

        Am Ende schreibst Du damit einfach nur Datenpunkte. Wie jeden anderen Datenpunkt auch. Und der MQTT-Adapter macht aus diesem "steuere"-Befehl dann ein Publish auf MQTT.

        Wie genau was verknüpft werden soll, welche Rolle Node-RED und welche ioBroker spielt, habe ich nach wie vor nicht verstanden und müsste genauer definiert werden.

        1 Reply Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active last edited by

          Achso und es gibt noch einen MQTT-Cloud-Server, gegen welchen man sich auch verbinden könnte. Daher kommt scheinbar auch Deine Dokumentation. Dafür arbeitet der MQTT-Broker auf dem Cerbo als Relay und gibt alles an den Cloud-Server weiter.

          Willst Du das wirklich über den MQTT-Broker in der Cloud machen? Sind das verschiedene Standorte? Oder warum nicht den lokalen MQTT-Broker des Cerbo nutzen?

          Ich hatte die kompletten Zusammenhänge bei VenusOS und dem VRM mal hier dokumentiert: https://www.youtube.com/watch?v=QTDAZXycTlk

          Humidor 1 Reply Last reply Reply Quote 0
          • Humidor
            Humidor @haus-automatisierung last edited by Humidor

            @haus-automatisierung nein, keine Cloud im Spiel.
            in den Mqtt Out Nodes am Cerbo Node Red ist IP:Port hinterlegt, dh der Node kommuniziert hier nicht mit dem Cerbo Broker, sondern direkt mit dem ioBroker Broker.
            so habe ich es verstanden.
            Wenn der Cerbo Node Red Client mit dem Cerbo Broker kommunizieren soll, muss die lokale IP/hostname/127.xxxx hinterlegt sein.

            Bsp. Bilder zu einem anderen Cerbo
            Bildschirmfoto 2024-02-22 um 11.52.06.png Bildschirmfoto 2024-02-22 um 11.52.12.png

            der ioBroker mqtt.0 Broker zeigt diese an, die am Cerbo mit dem Mqtt out ..
            Bildschirmfoto 2024-02-22 um 11.53.53.png

            mqtt.1 Client ist ein Cerbo und mqtt.2 Client ist ein Cerbo
            im Node-Red vom ioBroker wird auf diese Cerbo Broker ein request gesendet
            die Topics sind dann im ioBroker Objektbaum aufgelistet

            haus-automatisierung 2 Replies Last reply Reply Quote 0
            • haus-automatisierung
              haus-automatisierung Developer Most Active @Humidor last edited by

              @humidor sagte in Mqtt - Variablen:

              dh der Node kommuniziert hier nicht mit dem Cerbo Broker, sondern direkt mit dem ioBroker Broker.

              Also nutzt du Node-RED als "Middleware" zwischen dem MQTT-Broker vom Cerbo und dem MQTT-Broker von ioBroker? Du zeigst ja immer nur Ausschnitte von Flows. Und die Fragen oben werden auch nicht beantwortet. Skizzier das gerne mal, schildere was wo genau konfiguriert ist und dann kann ich helfen.

              1 Reply Last reply Reply Quote 0
              • haus-automatisierung
                haus-automatisierung Developer Most Active @Humidor last edited by

                @humidor sagte in Mqtt - Variablen:

                der ioBroker mqtt.0 Broker zeigt diese an, die am Cerbo mit dem Mqtt out ..
                mqtt.1 Client ist ein Cerbo und mqtt.2 Client ist ein Cerbo
                im Node-Red vom ioBroker wird auf diese Cerbo Broker ein request gesendet

                Und wozu das Ganze? Ich würde mich für Node-RED oder ioBroker entscheiden. Wenn mqtt.1 und mqtt.2 doch alles bereits abonnieren und an alle Daten kommen, warum dann nochmal einen MQTT-Broker (mqtt.0) betreiben und diesen irgendwie aus Node-RED mit den gleichen Daten füttern?!

                Humidor 1 Reply Last reply Reply Quote 0
                • Humidor
                  Humidor @haus-automatisierung last edited by

                  @haus-automatisierung ich beantworte dir alle Fragen, dazu muss ich aber genau wissen was du sehen möchtest.

                  Aufgabe:

                  1. ioBroker = Steuerung der Regelung, schickt die Werte an den Cerbo BAT, der diese an die Endgeräte (3xMultiplus im ESS) weitergibt
                  2. ioBroker Clients verbinden sich auf 2 Cerbos (ESS/BAT) um die Daten von den Clients zu sehen
                  3. ioBroker kann nicht! auf alle Parameter der am Cerbo angeschlossenen Geräte zugreifen, das kann nur der Cerbo
                  4. der Cerbo dient dazu die Kommunikation und die übergebenen Parameter zu übergeben bzw. zu überwachen

                  wer nun Client und Broker ist, ist mir klar, wie die Kommunikation zwischen den Teilnehmern exakt abläuft, anscheinend nicht.

                  haus-automatisierung 1 Reply Last reply Reply Quote 0
                  • haus-automatisierung
                    haus-automatisierung Developer Most Active @Humidor last edited by

                    @humidor sagte in Mqtt - Variablen:

                    ioBroker Clients verbinden sich auf 2 Cerbos (ESS/BAT) um die Daten von den Clients zu sehen

                    Und warum nutzt Du diese Clients nicht auch um ein Publish durchzuführen und die gewünschten Einstellungen zu setzen? Verstehe nach wie vor die Rolle von dem MQTT-Broker in ioBroker (mqtt.0) nicht.

                    Humidor 1 Reply Last reply Reply Quote 0
                    • Humidor
                      Humidor @haus-automatisierung last edited by

                      @haus-automatisierung
                      das war auch falsch, die ioBroker Clients requesten beim Cerbo Broker und ich kann im ioBroker die Werte sehe und verwenden, reine Information.

                      die Frage die du stellst, ist die selbe die ich stelle
                      wie übergebe ich vom ioBroker die Werte und Steuerbefehler an den Cerbo.

                      haus-automatisierung 1 Reply Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @Humidor last edited by

                        @humidor sagte in Mqtt - Variablen:

                        wie übergebe ich vom ioBroker die Werte und Steuerbefehler an den Cerbo.

                        Gibt viele Wege.

                        • Entweder Du abonnierst alle Topics in der Instanzkonfiguration von mqtt.1 und mqtt.2 und publishst dann einmalig mit einem anderen Client (z.B. Node-RED oder MQTT-Explorer) eine Nachricht damit der Datenpunkt angelegt wird
                        • oder Du nimmst den Blockly-Baustein für ein Publish auf einem Topic (falls dieses auch abonniert ist, wird dafür auch ein Datenpunkt angelegt).
                        • oder Du legst das Objekt manuell in der Struktur an (Expertenmodus) und setzt das Topic im native-Attribut richtig (auf das gewünschte Topic).
                        Humidor 1 Reply Last reply Reply Quote 0
                        • Humidor
                          Humidor @haus-automatisierung last edited by Humidor

                          @haus-automatisierung
                          spielen wir bitte mal den 1. Punkt durch.
                          Instanzkonfiguration, lege ich dazu in dessen Settings etwas an?
                          "#" . bedeutet alles, aber allein mit diesen Einstellungen bekomme ich nichts im Objektbaum

                          ioB.mqtt.1 Client für Cerbo ESS
                          Bildschirmfoto 2024-02-22 um 12.40.15.png Bildschirmfoto 2024-02-22 um 12.40.21.png Bildschirmfoto 2024-02-22 um 12.40.26.png

                          • erst durch einen zyklischen request am Cerbo Broker, wird der vollständige Objektbau unter N/... angelegt (Victron docu)
                            (muss jetzt kurz 2h weg)
                          haus-automatisierung 1 Reply Last reply Reply Quote 0
                          • haus-automatisierung
                            haus-automatisierung Developer Most Active @Humidor last edited by

                            @humidor sagte in Mqtt - Variablen:

                            "#" . bedeutet alles, aber allein mit diesen Einstellungen bekomme ich nichts im Objektbaum

                            Richtig, das war ja nur Teil 1 (subscribe). Jetzt fehlt Dir ein Publish. Wie lautet denn das Topic welches Du schreiben möchtest?

                            Humidor 1 Reply Last reply Reply Quote 0
                            • Humidor
                              Humidor @haus-automatisierung last edited by

                              @haus-automatisierung meinst du den request, dass ich den Objektbaum bekomme oder das Topic auf das ich meine Regelungs/Steuerwerte schreibe?

                              haus-automatisierung 1 Reply Last reply Reply Quote 0
                              • haus-automatisierung
                                haus-automatisierung Developer Most Active @Humidor last edited by

                                @humidor Das MQTT-Topic, welches Du gerade publishen willst aus ioBroker heraus

                                Humidor 2 Replies Last reply Reply Quote 0
                                • Humidor
                                  Humidor @haus-automatisierung last edited by Humidor

                                  @haus-automatisierung du meinst das, vermute ich:
                                  Bildschirmfoto 2024-02-22 um 15.05.12.png
                                  das sind die Werte/Topics die ich aus dem ioBroker beschreibe, der Cerbo NodeRed Client liest diese ein und reicht sie nach überprüfung weiter

                                  1 Reply Last reply Reply Quote 0
                                  • Humidor
                                    Humidor @haus-automatisierung last edited by

                                    @haus-automatisierung nimma da??

                                    haus-automatisierung 1 Reply Last reply Reply Quote 0
                                    • haus-automatisierung
                                      haus-automatisierung Developer Most Active @Humidor last edited by

                                      @humidor Ne, ich werde hier nicht verstanden....

                                      1. Dir fehlen Werte im Objektbaum
                                      2. Du fragst wie man diese anlegt
                                      3. Ich zeige drei Möglichkeiten auf
                                      4. Du teilst einen Screenshot von Werten, welche gar nicht da sein können(?), weil Du ja wissen wolltest, wie man diese anlegt
                                      5. ???

                                      Nochmal: Auf welches MQTT-Topic (zu welchem Dir ja im ioBroker ein State fehlt), willst Du in Zukunft etwas aus dem ioBroker heraus schreiben?

                                      Humidor 1 Reply Last reply Reply Quote 0
                                      • Humidor
                                        Humidor @haus-automatisierung last edited by Humidor

                                        @haus-automatisierung ich verstehe nur Bahnhof...

                                        sagte, Punkt 1 (von 3) möchte ich näher ansehen,
                                        du fragst mich nach den Werten die ich aus ioBroker beschreiben will
                                        das sind die Werte, egal wie die jetzt formatiert sind oder wo sie liegen, das sind die Werte.
                                        das nächste ist, wo lege ich die Topics an.

                                        ich will nicht, dass über meinen ioBroker Broker gegangen wird
                                        dh es müssten im Cerbo Bat Mqtt Master die Topics angelegt werden, die ich dann beschreiben will, so mein Verständnis.

                                        ich verstehe diesen Satz nicht:
                                        Nochmal: Auf welches MQTT-Topic (zu welchem Dir ja im ioBroker ein State fehlt), willst Du in Zukunft etwas aus dem ioBroker heraus schreiben?

                                        wenn das heißen soll, ich soll das Topic nennen, das am Cerbo Bat Broker liegt und ich es aus dem ioBroker beschreiben will - kann ich nur antworten - das gibt es noch nicht.

                                        haus-automatisierung 1 Reply Last reply Reply Quote 0
                                        • haus-automatisierung
                                          haus-automatisierung Developer Most Active @Humidor last edited by

                                          @humidor sagte in Mqtt - Variablen:

                                          wenn das heißen soll, ich soll das Topic nennen, das am Cerbo Bat Broker liegt und ich es aus dem ioBroker beschreiben will - kann ich nur antworten - das gibt es noch nicht.

                                          Im MQTT-Broker? Da muss man keine Topics anlegen oder Registrieren. Wie schon öfter geschrieben. Einfach senden (publish) und wer etwas hören will (subscribe) macht damit etwas.

                                          Also musst Du schon wissen, auf welche Topics die andere Seite genau hört. Da wird ja nie etwas aktiv gesendet und automatisch angelegt, weil eben nur gehört wird, ...

                                          Daher musst Du das Topic kennen und manuell etwas aus einem Client deiner Wahl (siehe oben) publishen.

                                          Das war erstmal meine letzte Antwort. Wie gesagt, ich habe dazu schon viel gezeigt und alles im Detail erklärt. Wenn Dir in den Inhalten etwas fehlen sollten, einfach melden.

                                          Humidor 1 Reply Last reply Reply Quote 0
                                          • Humidor
                                            Humidor @haus-automatisierung last edited by Humidor

                                            @haus-automatisierung

                                            Einfach senden (publish) und wer etwas hören will (subscribe) macht damit etwas.

                                            wie? die Richtung ist ioBroker zu Cerbo
                                            dh Blockly/NodeRed published einen Wert mit einem Topic-Namen auf den mqtt.2 Client am ioBroker?

                                            Also musst Du schon wissen, auf welche Topics die andere Seite genau hört. Da wird ja nie etwas aktiv gesendet und automatisch angelegt, weil eben nur gehört wird, ...

                                            Cerbo Node-Red (Client) liest diese Topic ein und macht was mit dem Wert

                                            ich geb nicht auf!

                                            aus dem ioBroker Node Red (Client) habe ich neuen Topic beschrieben (publish).
                                            Bildschirmfoto 2024-02-23 um 15.47.22.png

                                            der Mqtt Node zeigt auf:
                                            127.xx ... der Topic wird im mqtt.0 Broker direkt angelegt
                                            Bildschirmfoto 2024-02-23 um 15.51.25.png

                                            Cerbo Bat ... der Topic wird im mqtt.2 Client angelegt durch den Cerbo Bat Broker (subscribe)
                                            Bildschirmfoto 2024-02-23 um 15.51.33.png

                                            soweit mal klar? OK ?

                                            am Cerbo NodeRed lese ich mit dem Mqtt Node In direkt auf den Cerbo Broker (127...)
                                            Bildschirmfoto 2024-02-23 um 15.54.05.png
                                            Wert kommt an.

                                            ich verändere den Wert im Cerbo NodeRed am Cerbo Broker
                                            Bildschirmfoto 2024-02-23 um 15.57.23.png
                                            Wert wird im ioBroker.mqtt.2 aktualisiert

                                            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

                                            522
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            2
                                            39
                                            1822
                                            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