Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. iobroker als mqtt server um Daten zu verteilen

    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

    iobroker als mqtt server um Daten zu verteilen

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jkoller84 @mickym last edited by

      Hallo! Ich hab das ganze hinbekommen, die Tips mit den Datenpunkten waren hilfreich!

      Jetzt hab ich auch endlich verstanden wie ich Datepunkte publishen kann (aus dem ecovacs-deebot Ordner und auch Daten aus den Shellies.
      Ich habs auch hinbekommen, dass ich Daten per MQTT von der Steuerung zum Broker schicken kann, allerdings gibts da noch ein kleines Problem.

      Ich versuche den Deebot zu starten (Befehl "clean" in der Struktur ecovacs-deebot/0/control)
      Per MQTT Befehl sehe ich, dass sich in der control Struktur der "Button" bei "clean" von hellgrau auf schwarz färbt (und im Infotext steht dann statt "false" "true", allerdings fährt Roboter nicht los?

      Wenn ich allerdings mit der Maus auf den Button drücke, dann färbt er sich auch schwarz und der Roboter fährt los?

      Übersehe ich da etwas?

      Aus der Steuerung (Edomi) schicke ich folgenden Befehl "ecovacs-deebot/0/control/clean|true",
      dieser kommt auch im iobroker an und wird im pfad "mptt.0.ecovacs-deebot/0/control/clean|true" an,
      wird auch auf die ecovacs-deebot/0/control/clean geschrieben, diese scheint ebenfalls mit "true" auf, allerdings fährt er nicht los?

      Muss ich da mit dem "true" noch etwas anderes mitschicken?

      Ich hab 2 Bilder angehängt, da sieht man es, die Daten sind anscheinend richtig, allerdings ist da anscheinend ein Unterschied zwischen auf den Button klicken und den Button per MQTT beschreiben.
      MQTT publish client_1.png

      iobroker.png

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

        @jkoller84 Im Adapter musst die Datenpunkte immer unbestätigt schocken - das kann aber mqtt nicht, da mqtt nicht weiß von bestätigt oder unbestätigt. Du musst also mittels eines Alias oder Deiner Logikmaschine wenn sich im mqtt der Wert aktualisiert den aktiv in den Adapter schreiben.

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

          @mickym
          Hallo danke für die Antwort, aber die verstehe ich jetzt nicht ganz?
          Der wert wird über MQTT geschickt taucht um mqtt-Verzeichnis auf, wird aber auch auf den ecovacs Adapter geschrieben.
          Sehe den Wert im Ecovacs Adapter ja auf true gehen?
          Siehe Bild oben?

          Homoran mickym 2 Replies Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @jkoller84 last edited by

            @jkoller84 sagte in iobroker als mqtt server um Daten zu verteilen:

            Sehe den Wert im Ecovacs Adapter ja auf true gehen?
            Siehe Bild oben?

            aber auch bestätigt geht auf true.
            Damit ist für den Adapter alles erledigt.
            bestätigt müsste mit false geschickt wrrden, dann weiß der Adapter dass er was tun muss, setzt das um und stellt anschließend bestätigt auf true - fertig

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

              @jkoller84 Na das ist aber das Problem, mit dem automatisch auf den ecovacs Adapter zu schreiben. Das passiert halt mir dem ACK=true. Deswegen halte ich nichts davon den Baum eines Adapters in den mqtt- Zweig zu nehmen. Für das Publishen von Zuständen ja, aber nicht nicht für die Steuerung von aussen.

              Mach das weg und setze liebe einen Alias, der den Wert aus dem Mqtt Adapter liest, aber selbst in den Ecovavs Adapter speichert.
              Der mqtt Adapter setzt alle empfangenen Werte auf ACK=true. - Da er sie selbst gesetzt hat und published nur ACK=false Werte.

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

                @mickym

                jetzt verstehe ich was Ihr damit meint.
                Allerdings wie lege ich einen Alias an und sage dem er soll auf den ecovacs-deebot/0/control/clean schreiben wenn über mqtt auf den alias gepublisht wird?

                Ich kenne mich im iobroker absolut nicht aus, bin erst seit Sonntag dabei mir das System selbst verständlich zu machen...

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

                  @jkoller84 Ja mit dem Alias geht doch nicht. Es geht deshalb nicht, weil der Alias das nicht gleich durchreichen kann - sonst gäb es Endlosschleifen. Ich schau mal, ob das mit dem mqtt-Client geht - ansonsten ,usst Deine Logikmaschine verwenden . Also vergiß, was ich zum Alias gesagt habe. Ich versuch das mal mit dem mqtt-Client zu testen - hast Du den mqtt Client Adapter installiert.

                  OK mit dem mqtt-Client Adapter geht es eigentlich. Das heißt die bestätigeten Werte werden unbestätigt weiter gegeben.

                  Hast Du denn den mqtt-Client Adapter installiert, wie ich empfohlen hatte, wenn Du nur einzelne Werte publishst?

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

                    @mickym

                    ich hab den mqtt-Broker/client installiert,
                    da ich den Broker benötige, Meine Shellies melden alle Ihre Stati darüber und ich Melde auch den kompletten Info Ordner vom deebot an meine Haussteuerung.
                    Wenn ich den mqtt-client nehme, brauche ich erst wieder einen eigenen mqtt broker im netz, dann hab ich wieder eine Software mehr am Server rennen...
                    Ich hab 47 Shellies im Netz hängen, die Ihre Stati alle über den Broker an Edomi weiterreichen...
                    mit dem reinen mqtt client geht das nicht oder?

                    Ich brauche MQTT zum empfangen aller Shelly-Daten und zum senden von Steuerbefehlen an die Shellies,

                    • Lesen und steuern vom Deebot
                    Homoran mickym 3 Replies Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @jkoller84 last edited by

                      @jkoller84 sagte in iobroker als mqtt server um Daten zu verteilen:

                      Wenn ich den mqtt-client nehme, brauche ich erst wieder einen eigenen mqtt broker im netz

                      @mickym sagte in iobroker als mqtt server um Daten zu verteilen:

                      Um einen einzelnen Datenpunkt zu veröffentlich empfehle ich Dir lieber noch den mqtt-Client Adapter zusätzlich zu installieren und unter einem eigenen topic zu publishen

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

                        @jkoller84 Nochmal Du kannst den mqtt-Client Adapter zusätzlich installieren, das ist für Deine Zweche am Besten geeignet.

                        den mqtt-Broker Client betriebst Du nur als Broker und daran flanscht Du noch den mqtt-Client dran.

                        cf7203e2-0cc5-440e-95f0-4485eb598015-image.png

                        Und den Broker lässt Du im Großen und ganzen in Ruhe.

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

                          @mickym

                          ich hatte den client installiert, allerdings hab ich da irgendwas falsch eingestellt gehabt, daher hat sich die CPU aufgeschaukelt bis auf 100% Auslastung, daher habe ich die Instanz wieder deaktiviert (vermutlich wo eine Schleife eingebaut).
                          Die Instanz ist immernoch vorhanden, allerdings verstehe ich jetzt nicht wie ich das hinbasteln soll das das funktioniert?

                          Ich lasse den Broker seine Arbeit machen (der schubst ja auch korrekt alle meine Stati durch die ich brauche (Edomi bekommt sämtliche Daten der Shellies und auch alle Datenpunkte vom Ecovacs-deebot.

                          Aber du meinst ja für die Retoure (Steuerbefehl von Edomi zum Ecovacs-deebot den mqtt client verwenden?
                          Der Rest funktioniert ja? Oder muss ich das funktionierende publishen auch alles umstellen?

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

                            @jkoller84 sagte in iobroker als mqtt server um Daten zu verteilen:

                            Melde auch den kompletten Info Ordner

                            Auch wenn Du Bäume nimmst - dann ist es am stabilsten für das Publishen eine eigene Instanz von dem Broker/Client Adapter zu nehmen. Und dann dort aber nichts zu subscriben, sondern nur Publishen:

                            Ich mach das mit dem tr-064 Adapter, wenn ich Bäume publishen will.

                            Der Publishing Instanz sollte man dann aber einen eigenen Präfix geben, sonst wird das im Broker nicht mehr importiert:

                            6caf49d7-9ee6-4583-ac11-40f509aa739a-image.png

                            In Deinem Fall also von dem mqtt Client/Server 2 Instanzen und dem mqtt-Client eine Instanz:

                            1. mqtt.0 als Broker
                            2. mqtt.1 als Publishing Instanz
                            3. mqtt-client.0 zum Steuern und veröffnetlichen einzelner Datenpunkte.

                            Das hat sich deswegen hochgeschaukelt, weil Du Endlosschleifen mit Publishen und Subscriben produziert hast.

                            1 Reply Last reply Reply Quote 0
                            • J
                              jkoller84 @jkoller84 last edited by

                              @jkoller84

                              hab gerade gesehen, sobald ich die Instanz mqtt-client aktivere habe ich dasselbe Problem wieder, die CPU jammert mit 100% vor sich hin...

                              J mickym 2 Replies Last reply Reply Quote 0
                              • J
                                jkoller84 @jkoller84 last edited by

                                @jkoller84

                                ah jetzt versteh ich auch ein paar Dinge mehr... ok ich werd das mal umbasteln versuchen.
                                ich hab mit MQTT bis jetzt noch nix am Hut gehabt...

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

                                  @jkoller84 sagte in iobroker als mqtt server um Daten zu verteilen:

                                  @jkoller84

                                  hab gerade gesehen, sobald ich die Instanz mqtt-client aktivere habe ich dasselbe Problem wieder, die CPU jammert mit 100% vor sich hin...

                                  Dann hast Du an Deinem Broker was verkehrt eingestellt. Mach bei dem Broker ALLE Haken raus und da publishst Du keinen Info Adapter noch sonst was.

                                  Bei Broker ist das oben auch leer:
                                  9551cc2a-399d-486b-a70b-6d7835508559-image.png

                                  Man kann ggf. Zustände publishen - aber ich würde davon absehen und lieber eine eigene Instanz machen, dort werden dann Zustände gepublished. Wenn Du beides gleichzeitig machst, dann schaukelt sich das System bis zur Unendlichkeit hoch.

                                  Der unteren Instanz habe ich einen eigenen Prefix "iobroker" verpasst, damit werden alle Bäume die Du veröffentlichst unter dem Topic iobroker veröffentlicht. Das musst halt dann im Edomi anpassen. Aber damit werden Endlosschleifen vermieden.

                                  In dem mqtt-client Adapter brauchst erst mal gar nicht viel machen. Du wählst dann den Datenpunkt mit dem Zahnrad aus unterwelchem Datenpunkt und topic Du kommunizieren möchtest. Ich werde Dir das kurz an einem Video verdeutlichen.

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

                                    @mickym

                                    ah... Gott im Himmel, ich danke für deine Hilfe, ich hab beim Broker eigentlich einfach nur den Adapter installiert, hab nix an oder abgewählt, allerdings waren da schon Haken gesetzt.

                                    Ich hab bei den Einstellungen bzw. Freigaben der einzelnen Datenpunkten hinten das Zahnrad geöffnet, da steht dann oben als Überschrift

                                    Einstellungen mqtt-client

                                    Also sollte das ja so passen oder?

                                    Hier ein Bild davon.
                                    Einstellungen.png

                                    Ist das so in Ordnung?

                                    Einstellungen.png

                                    Einstellungen2.png

                                    Einstellungen3.png

                                    Einstellungen4.png

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

                                      @jkoller84 Ja aber nichts als Objekt publishen. MQTT kennt eigentlich nur Strings.

                                      So und bei dem Steuerungsdatenpunkt, da musst halt eintragen unter welchem Datenpunkt das subscribed wird.

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

                                        @mickym
                                        ok also ich hab das jetzt umgesetzt was du gesagt hast, ich hab auch das Präfix gesetzt, jetzt sehe ich im
                                        Objektbaum
                                        "mqtt.0"
                                        den Unterordner ioBroker vom mqtt-client und auch die darin enthaltenen Ordner
                                        ecovacs-deebot und Shellies-Jalousien

                                        hab den subscribe pfad in Edomi auch angepasst von
                                        ecovacs-deebot/info/# auf iobroker/ecovacs-deebot/info/#
                                        allerdings kommt jetzt beim Edomi nix mehr an?

                                        hab ich das jetzt ned ganz verstanden?
                                        das Präfix setze ich doch auch nur mit einem / vor den eigentlichen subscribe-Pfad? oder brauche ich für das Präfix ein anderes Zeichen?
                                        Einstellungen5.png

                                        Einstellungen6.png

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

                                          @jkoller84 Hast Du für das Publishen des ganzen Baums 2 Instanzen genommen?

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

                                            @mickym
                                            ähhh
                                            du fragst da Sachen,
                                            ich hab 1x den mqtt-broker laufen
                                            und 1x den mqtt-client
                                            und hab bei allen datenpunkten dieselben Einstellungen vorgenommen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            884
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            29
                                            2746
                                            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