Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Folder anlegen unter mqtt.1.

    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

    Folder anlegen unter mqtt.1.

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

      @mickym Danke. So habe ich es auch verstanden.
      Nur habe ich das soweit auch gemacht und für mich sieht es richtig aus.
      Der Name und die Struktur stimmt. Aber der Wert erreicht nicht das Ziel.

      Und es gibt ja noch einige Möglichkeiten da was zu konfigurieren.

      Es würde halt helfen, wenn jemand da eine funktionierende Konfiguration hätte. Dann könnte man vergleichen, wo meine anders ist.

      Fehler im Log habe ich nicht. Ich sende unbestätigt. Dann wird der Wert kurz grün angezeigt und dann rot und er wird ignoriert.

      mickym 2 Replies Last reply Reply Quote 0
      • mickym
        mickym Most Active @Sven Schumacher last edited by

        @sven-schumacher Mach in deiner mqtt Konfig deines Brokers ALLE Haken weg und schreibe - wenn die Struktur stimmt unbestätigt in die cmd Datenpunkte.

        1 Reply Last reply Reply Quote 0
        • Samson71
          Samson71 Global Moderator @mickym last edited by

          @mickym sagte in Folder anlegen unter mqtt.1.:

          Also grundsätzlich ist es falsch wenn man behauptet die DTU legt selbst die Ordner an.

          Habe ich auch so nicht behauptet. OpenDTU kenne ich auch gar nicht. Fakt ist aber, dass bei AhoyDTU auch die Steuerdatenpunkte vorhanden waren im Adapter als dieser Server/Broker war. Erst bei der Umstellung auf Mosquitto und Nutzung als Client haben diese gefehlt und ich musste diese selber anlegen.

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

            @samson71 War auch nicht an Dich gerichtet - da gab es aber jemand weiter unten im Thread. 😉 - Im Übrigen ist es wie gesagt völlig egal, welches System angebunden ist. Topics auf die ein Gerät hört werden NIE von dem Gerät selbst gepublished. Wer die Datenpunkte angelegt hat - kann ich Dir nicht sagen, aber sicher nicht das Gerät selbst. Wie soll das denn sonst bitte unterscheiden, ob es was machen soll oder nicht. Sobald ein Gerät ein topic gepublished hat, merkt sich das Gerät nicht, dass es dieses Topic gepublished hat. Wenn eine Bestätigung gewünscht ist muss man es über QoS Level 2 schicken, aber bei Level 0 (Standard) wird einfach gefeuert und das wars. Im MQTT gibts kein ACK Flag.

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

              @sven-schumacher sagte in Folder anlegen unter mqtt.1.:

              Fehler im Log habe ich nicht. Ich sende unbestätigt. Dann wird der Wert kurz grün angezeigt und dann rot und er wird ignoriert.

              Das ist verkehrt dann wurde bestätigt gesendet. GRÜN im Admin ist ein BESTÄTIGTER Wert, ROT im Admin ist ein UNBESTÄTIGTER Wert. ROT ist also kein Fehler.
              und wie gesagt alle Haken raus:

              59035dbe-845a-4d0b-9491-4ccc45900907-image.png

              Prüfen, ob bei eigenen States die richtige Maske eingetragen ist. Am Besten ist man STELLT da gar nichts EIN - dann macht man am wenigsten kaputt.

              Als Broker sammelst Du Daten - da muss nichts gepublished werden, weder beim Verbinden noch sollte man das Publishen einschränken - das muss man nur wenn man dummerweise auch noch die Zustände angeklickt hat. Diese Kombi ist aber nur dafür gedacht, wenn man aus anderen iobroker Instanzen publishen will und dann empfiehlt es sich, dies auch über eigene Instanzen zu machen.

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

                @mickym Es sind alle Haken raus und auch der beim Senden (Bestätigt) ist kein Haken.
                Die Maske ist mqtt.1.* weil das Instanz 1 ist. Also alles wird angeboten, was unter dieser Instanz liegt und sonst nichts.

                Der Datenpunkt ist so definiert:

                {
                  "common": {
                    "name": "limit_persistent_absolute",
                    "desc": "Manuell erzeugt",
                    "role": "variable",
                    "type": "number",
                    "read": true,
                    "write": true,
                    "def": 0
                  },
                  "type": "state",
                  "native": {},
                  "_id": "mqtt.1.1141123456789.cmd.limit_persistent_absolute",
                  "acl": {
                    "object": 1638,
                    "state": 1638,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator"
                  },
                  "from": "system.adapter.admin.0",
                  "user": "system.user.admin",
                  "ts": 1685033551820
                }
                

                ich hab nur die SN hier verändert wegen Datenschutz.

                Und so sieht das Logfile aus:

                
                mqtt.1
                2023-05-30 13:21:07.652	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/restart" with regex /mqtt\.1\.[^.]*\.cmd\.restart/
                
                mqtt.1
                2023-05-30 13:21:07.650	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/restart" with regex /^[^\.]*\.cmd\.restart/
                
                mqtt.1
                2023-05-30 13:21:07.631	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/power" with regex /mqtt\.1\.[^.]*\.cmd\.power/
                
                mqtt.1
                2023-05-30 13:21:07.629	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/power" with regex /^[^\.]*\.cmd\.power/
                
                mqtt.1
                2023-05-30 13:21:07.625	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_nonpersistent_absolute" with regex /mqtt\.1\.[^.]*\.cmd\.limit_nonpersistent_absolute/
                
                mqtt.1
                2023-05-30 13:21:07.623	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_nonpersistent_absolute" with regex /^[^\.]*\.cmd\.limit_nonpersistent_absolute/
                
                mqtt.1
                2023-05-30 13:21:07.619	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_nonpersistent_relative" with regex /mqtt\.1\.[^.]*\.cmd\.limit_nonpersistent_relative/
                
                mqtt.1
                2023-05-30 13:21:07.617	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_nonpersistent_relative" with regex /^[^\.]*\.cmd\.limit_nonpersistent_relative/
                
                mqtt.1
                2023-05-30 13:21:07.613	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_persistent_absolute" with regex /mqtt\.1\.[^.]*\.cmd\.limit_persistent_absolute/
                
                mqtt.1
                2023-05-30 13:21:07.612	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_persistent_absolute" with regex /^[^\.]*\.cmd\.limit_persistent_absolute/
                
                mqtt.1
                2023-05-30 13:21:07.606	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_persistent_relative" with regex /mqtt\.1\.[^.]*\.cmd\.limit_persistent_relative/
                
                mqtt.1
                2023-05-30 13:21:07.604	info	Client [OpenDTU-11820156] subscribes on "DTU/+/cmd/limit_persistent_relative" with regex /^[^\.]*\.cmd\.limit_persistent_relative/
                
                mqtt.1
                2023-05-30 13:21:07.260	info	Client [OpenDTU-11820156] connected with secret xxx
                
                mqtt.1
                2023-05-30 13:21:05.544	info	Starting MQTT-WebSocket authenticated server on 0.0.0.0:1886
                
                mqtt.1
                2023-05-30 13:21:05.541	info	Starting MQTT authenticated server on 0.0.0.0:1885
                
                Marc Berg 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active last edited by

                  @sven-schumacher Das schaut in meinen Augen alles gut aus. Funktioniert power und restart auch nicht?

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

                    @mickym Es ist egal welchen Befehl ich senden will.
                    Es wird alles ignoriert.

                    ich habe in der dtu das Base-Topic "DTU/" gesetzt ... das sorgt auch dafür, dass alle States mit "DTU/" anfangen.

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

                      @sven-schumacher sagte in Folder anlegen unter mqtt.1.:

                      @mickym Es ist egal welchen Befehl ich senden will.
                      Es wird alles ignoriert.

                      ich habe in der dtu das Base-Topic "DTU/" gesetzt ... das sorgt auch dafür, dass alle States mit "DTU/" anfangen.

                      Na das ist der Fehler - weil dann der Pfad ja heißt:

                      DTU/seriennr/cmd/limit_nonpersistent_absolute - sehe ich jetzt gerade erst.

                      Also Deine gesamte Struktur darf nicht unter mqtt.1.seriennr.cmd liegen sondern unter
                      mqtt.1.DTU.seriennr.cmd

                      Sven Schumacher 2 Replies Last reply Reply Quote 0
                      • Sven Schumacher
                        Sven Schumacher @mickym last edited by

                        @mickym Was daran soll falsch sein?
                        Die DTU legt die Toppics so an. Und sie sollte dann auch die Befehle so erwarten, oder etwa nicht?

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

                          @sven-schumacher sagte in Folder anlegen unter mqtt.1.:

                          @mickym Was daran soll falsch sein?
                          Die DTU legt die Toppics so an. Und sie sollte dann auch die Befehle so erwarten, oder etwa nicht?

                          OK - also hast Du dann den cmd Ast unter

                          mqtt.1.DTU.seriennr.cmd.limit_nonpersistent_absolute
                          
                          1 Reply Last reply Reply Quote 0
                          • Sven Schumacher
                            Sven Schumacher @mickym last edited by

                            @mickym Mh ... der NAME der Topics enthält den kompletten Pfad, so wie du es auch schreibst.
                            Aber die ID im Baum enthält NICHT "DTU/".

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

                              @sven-schumacher Mach halt mal einen Screenshot von Deinen mqtt.1. Objekten Du kannst ja die Seriennr. schwärzen

                              mickym Sven Schumacher 2 Replies Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @mickym last edited by

                                @mickym

                                @mickym sagte in Folder anlegen unter mqtt.1.:

                                @sven-schumacher Mach halt mal einen Screenshot von Deinen mqtt.1. Objekten Du kannst ja die Seriennr. schwärzen.

                                Wie gesagt ich habe das Gefühl dass Du und das Gerät aneinander vorbei redet. 😁

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

                                  @mickym
                                  So kommt das Limit von der DTU zum IOBroker:

                                  {
                                    "_id": "mqtt.1.yyy.status.limit_absolute",
                                    "common": {
                                      "name": "DTU/yyy/status/limit_absolute",
                                      "write": false,
                                      "read": true,
                                      "role": "variable",
                                      "desc": "mqtt server variable",
                                      "type": "number",
                                      "unit": "W"
                                    },
                                    "native": {
                                      "topic": "DTU/yyy/status/limit_absolute"
                                    },
                                    "type": "state",
                                    "acl": {
                                      "object": 1638,
                                      "state": 1638,
                                      "owner": "system.user.admin",
                                      "ownerGroup": "system.group.administrator"
                                    },
                                    "from": "system.adapter.admin.0",
                                    "user": "system.user.admin",
                                    "ts": xxx
                                  }
                                  

                                  und so versuche ich zu schicken:

                                  {
                                    "common": {
                                      "name": "DTU/yyy/cmd/limit_persistent_absolute",
                                      "desc": "Manuell erzeugt",
                                      "role": "variable",
                                      "type": "number",
                                      "read": true,
                                      "write": true,
                                      "def": 0
                                    },
                                    "type": "state",
                                    "native": {},
                                    "_id": "mqtt.1.yyy.cmd.limit_persistent_absolute",
                                    "acl": {
                                      "object": 1638,
                                      "state": 1638,
                                      "owner": "system.user.admin",
                                      "ownerGroup": "system.group.administrator"
                                    },
                                    "from": "system.adapter.admin.0",
                                    "user": "system.user.admin",
                                    "ts": xxx
                                  }
                                  
                                  mickym 1 Reply Last reply Reply Quote 0
                                  • mickym
                                    mickym Most Active @Sven Schumacher last edited by

                                    @sven-schumacher sagte in Folder anlegen unter mqtt.1.:

                                    "_id": "mqtt.1.yyy.status.limit_absolute",

                                    Passt nicht.

                                    das muss als _id enthalten

                                    mqtt.1.DTU yyy.status.limit_absolute
                                    

                                    Schmeiss alles weg - lass nochmal Publishen - aber Deine topics da fehlt das DTU

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

                                      0637830a-826e-4a6e-b9c1-7e290519a540-image.png b70c9928-1f86-4d6f-958c-950a50d70992-image.png

                                      Wie gesagt ... genau SO kommen ja alle Daten an.
                                      In der ID steht nichts von "DTU/" , aber beim Namen schon.

                                      Und deshalb sollte meines Erachtens auch so abgerufen werden.

                                      Aber im Logfile wird "subscribes on "DTU/+/cmd/limit_persistent_absolute" with regex /mqtt.1.[^.]*.cmd.limit_persistent_absolute/" bestellt. Da steht DTU und keine Seriennummer vor dem cmd/

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

                                        @sven-schumacher Ja wie ich dachte alles verkehrt. Diese ganze Struktur muss unter DTU oder Du löscht in der DTU das Base-Topic raus.

                                        Du hast doch unter

                                        05bfd01e-988f-451c-b114-bbb9aeda1ad8-image.png

                                        ein dtu topic - hast du schon mal geschaut, wie da die Struktur aussieht?

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

                                          @mickym Ich habe zuerst das Base-Topic eingetragen und dann erst die Verbindung zum IOBROKER.
                                          Und dann hat der das genau SO angelegt.

                                          Also verstehe ich jetzt nicht wirklich, was da falsch ist. Der Name enthält das Basetopic, aber die ID eben nicht. Das habe ich mir nicht ausgedacht, sondern die openDTU

                                          das kleine "dtu" ist nicht von mir.

                                          4e271d87-0e85-4ebd-86a8-e704786e0371-image.png

                                          mickym Samson71 2 Replies Last reply Reply Quote 0
                                          • mickym
                                            mickym Most Active @Sven Schumacher last edited by mickym

                                            @mickym Ja aber der Name muss mit der Hierarchie der ID übereinstimmen.

                                            Wie gesagt das passt nicht. Keine Ahnung woher die Inkonsitenz herkommt, vielleicht hast du ein Subscribe Pattern definiert. Dann kommt das auch durcheinander. Was hast Du als Subscribe Pattern?

                                            4480e45e-a935-4fcc-b121-bd5f89cd7912-image.png

                                            sollte bei einem Broker immer # sein.

                                            Lösche die ganze Struktur nochmal mit einem Base-Topic DTU müssen die Datenpunkte alle unter
                                            mqtt.1.DTU angelegt werden, sonst passt das nicht. Der Name ist in meinen Augen lediglich beschreibend.

                                            Wenn Dein Client
                                            "DTU/+/cmd/limit_nonpersistent_absolute" subscribed und da ist nichts (wie gesagt der Name ist im iobroker ist Schall und Rauch), dann wird der Datenpunkt unter
                                            mqtt.1.DTU.seriennr.cmd.limit_nonpersistent_absolute gesucht.

                                            Solange also die vom Gerät gepublishten Werte bei einem Base Topic DTU nicht unter einem Ordner DTU auftauchen, ist Deine Konfiguration schief.

                                            Sven Schumacher 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

                                            598
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            77
                                            4481
                                            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