Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. SOLVED: zigbee2mqtt setup

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    SOLVED: zigbee2mqtt setup

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

      @hipohop Das ganze Problem ist leider der neue admin5 Adapter - da wurde mqtt ein Ei gelegt und leider werden diese ganzen Überprüfungen für den Adapter nicht ausgeschaltet (ist meines Erachtens genauso unsinnig, wie für selbst erstellte Datenpunkte).

      Schau mal ob Du überall ein Stift-symbol bei Deinen states hast.

      ed4d19e0-3d10-4927-a302-311b9cc6c5df-image.png

      und dann schau, ob nicht ein Haufen Fehlermeldungen im Protokoll sind, dass irgendwelche Datenpunkte nicht erstellt werden konnten.

      Nee sehe schon - fehlt - oh dieses blöde JS, Admin5 Update.

      58de2667-bc3b-4371-82f5-06b39fed15a1-image.png

      Erstelle Dir ein neues JS im JavaScript Adapter und kopiere dieses Code rein:

      /**
      * Zweck:       Korrigiert übergeordnete Ordnerstrukturen eines Datenpunkts
      * Datum:      07.08.2021
      * Autor:       @fastfoot
      */
      
      //              In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
      
      let arr = [],
        id = '';
      
      const ids = $('mqtt.0.*');
      ids.each(idTmp => {
        arr=idTmp.split('.');
        arr.splice(arr.length-1);
        id=arr.join('.');
        if(arr[0] === '0_userdata' || arr[0] === 'alias' || arr[0] === 'mqtt' || arr[0] === 'javascript'){
            correctObject(id, arr);
        }
      })
      
      function correctObject(id,arr){
        if(arr.length === 2) return;
        if(!existsObject(id)){
            let obj = {};
            obj = {
                type: 'folder',
                common:{
                    name: arr[arr.length - 1]
                }
            }
            extendObject(id, obj, e => {
                if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
            })
        }
        arr.splice(arr.length - 1);
        id = arr.join('.');
        correctObject(id, arr);
      }
      

      Lass das Skript einmal laufen, stopp es dann wieder dann sollte alle Objekte da sein und Du solltest unter jedem "Folder" wieder Datenpunkte manuell anlegen können.

      Wenn Du das mit dem Skript nicht willst, dann musst Du die Objekte manuell erstellen.

      Wenn Dein zigbee2mqtt direkt unter mqtt.0 ist, dann geh auf die Ebene 0 und erstelle ein Verzeichnis mit dem Namen zigbee2mqtt - damit wird dies dann nachträglich als FolderObjekt angelegt.

      Das Ganze ist leider seit August letzten Jahres so und irgendwie will man diese Überprüfung unbedingt global beibehalten.

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

        @mickym
        Ich habe das Skript ausgeführt. Stelle aber keine Veränderung fest.
        Aus deinem Erläuterungen habe ich leider nicht ganz verstanden, ob und wo ich jetzt noch einen neuen Folder "zigbee2mqtt" anlegen muss?

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

          @hipohop sagte in zigbee2mqtt setup:

          @mickym
          Ich habe das Skript ausgeführt. Stelle aber keine Veränderung fest.
          Aus deinem Erläuterungen habe ich leider nicht ganz verstanden, ob und wo ich jetzt noch einen neuen Folder "zigbee2mqtt" anlegen muss?

          Sind nun an den Punkten nachdem Du das Skript ausgeführt hast nun Bleistiftsymbole neben den Objekten? Also dort die ich in Deinem Screenshot als fehlend markiert habe?

          1 Reply Last reply Reply Quote 0
          • hydrotec
            hydrotec @hipohop last edited by

            @hipohop sagte in zigbee2mqtt setup:

            ..., dass meine Devices in mqtt-client (von iobroker) automatisch erscheinen.

            Welchen mqtt Adapter hast du installiert?
            Es gibt zwei.
            antwort_MQTT_Adapter_sendet_keine_Daten_04.png
            Würde dir den oberen empfehlen. Eben als Client eingerichtet.
            In diesem Beitrag sind (weiter unten) zwei screenshots mit den Einstellungen drin.
            Und wie schon erwähnt, in diesem Beitrag ist eine Anleitung wie du zigbee2mqtt ganz einfach in ioBroker einbinden kannst.
            Ob du dich bei dem mqtt-payload-format für json, attribute oder attribute_and_json entscheidest, ist erst einmal egal.
            Sobald mosquitto über einen topic ein payload von zigbee2mqtt empfängt, und ioBroker diesen topic aboniert hat, werden automatisch die Objekte angelegt. Da musst du nichts weiter zutun.
            Etwas tricky wird es mit den Objekten, welche ein payload in Richtung mosquitto absetzen sollen.
            Wie @mickym schon geschrieben hat, ist es etwas unglücklich, das man da nicht ohne weiteres an die Objekte kommt.
            In diesem Post habe ich eine alternative Methode beschrieben, wie man die Datenpunkte auch unter admin5 an die Richtige Stelle bekommt.

            Lies dir bitte alles in Ruhe durch, und wenn dann noch Fragen sind, gerne noch einmal melden.
            (nicht vergessen, das sind Beispiele von meiner Umgebung, du musst die topics an deine Struktur anpassen)

            @mickym sagte in zigbee2mqtt setup:

            @hipohop Das ganze Problem ist leider der neue admin5 Adapter - da wurde mqtt ein Ei gelegt und leider werden diese ganzen Überprüfungen für den Adapter nicht ausgeschaltet ...

            Das Ganze ist leider seit August letzten Jahres so und irgendwie will man diese Überprüfung unbedingt global beibehalten.

            Kann dich voll und ganz verstehen, vor allem wenn man schon mit vorherigen admin Versionen gearbeitet hat.
            Zum Glück müssen die publish-topics nur einmal angelegt werden.
            Ich fände es auch angenehmer, das direkt in ioBroker anlegen zu können.

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

              @hydrotec sagte in zigbee2mqtt setup:

              @mickym sagte in zigbee2mqtt setup:

              @hipohop Das ganze Problem ist leider der neue admin5 Adapter - da wurde mqtt ein Ei gelegt und leider werden diese ganzen Überprüfungen für den Adapter nicht ausgeschaltet ...
              Das Ganze ist leider seit August letzten Jahres so und irgendwie will man diese Überprüfung unbedingt global beibehalten.

              Kann dich voll und ganz verstehen, vor allem wenn man schon mit vorherigen admin Versionen gearbeitet hat.
              Zum Glück müssen die publish-topics nur einmal angelegt werden.
              Ich fände es auch angenehmer, das direkt in ioBroker anlegen zu können.

              Es geht schon noch - man muss halt nur diese ganzen Objekte immer wieder manuell erstellen. Na ja ich habe es nun mehrere Male angesprochen, aber es bewegt sich nichts. Inzwischen kann man zwar wieder Datenpunkte erstellen, aber nur nach dem vorgegebenen Schema. Das im mqtt ein Folder auch ein State haben kann, sieht dieses Konzept nicht vor. Wie gesagt es wäre so einfach, wenn man für mqtt und 0_userdata das alles wieder auf den vorigen Stand zurückdrehen würde. Für die Adapterentwickler kann man dann ja von mir aus dieses jetzige Verfahren beibehalten. Aber das jetzige Konzept wird nie das flexible mqtt Konzept nachbilden können. Da gibt es eben nicht unterschiedliche Objekte, sondern einfach states (so wie es vorher auch war).

              H 1 Reply Last reply Reply Quote 1
              • H
                hipohop @mickym last edited by

                @mickym @hydrotec
                Ich danke euch erstmal ganz herzlich für eure Hilfe.
                Werde das ganze jetzt mal mit dem MQTT Broker/Client versuchen und mich ggfs. nochmal melden

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

                  @hipohop Lass alle Optionen aus, dann solltest Du mit subscriben von # ein Abbild des mosquitto brokers bekommen:

                  5f6f42cd-8e17-45d0-b3b8-4e1dced5fc64-image.png

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

                    @mickym
                    Also mit dem "richtigen" mqtt client geht 👍 es - so weit so gut.
                    Die Objekte werden automatisch angelegt
                    Vielen Dank nochmal - wäre ich nicht drauf gekommen.
                    Ich mach für heute Schluß

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      dimaiv @hipohop last edited by

                      @hipohop
                      Hier ist genau das was du suchst:
                      https://forum.iobroker.net/post/660650

                      Ist ein Adapter der direkt mit dem Z2M kommuniziert.

                      hydrotec 1 Reply Last reply Reply Quote 0
                      • hydrotec
                        hydrotec @dimaiv last edited by hydrotec

                        @dimaiv

                        nur mal interessehalber, weden die public-topics in ioBroker automatisch mit angelegt?


                        EDIT: Vergessen zu fragen, hast du den im Einsatz?

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          dimaiv @hydrotec last edited by

                          @hydrotec
                          Habe ich nicht. Ich benutze Zigbee Adapter, und kein z2m extern.

                          Ich denke, man macht nix kaputt, wenn man es einfach probiert. Falls was ist, kann ich deine Fragen direkt an die Entwickler stelen.

                          hydrotec 1 Reply Last reply Reply Quote 0
                          • hydrotec
                            hydrotec @dimaiv last edited by

                            @dimaiv sagte in zigbee2mqtt setup:

                            Ich denke, man macht nix kaputt, wenn man es einfach probiert. Falls was ist, kann ich deine Fragen direkt an die Entwickler stelen.

                            Dankeschön für die Rückmeldung.

                            Hat mich ja nur einmal interessiert, selber nutze ich zigbee2mqtt über mosquitto.
                            Ist halt Geschmacksache, bzw. jeder wie er kann, wie ich etwas an ioBroker anbinde.

                            H 1 Reply Last reply Reply Quote 0
                            • H
                              hipohop @hydrotec last edited by

                              @hydrotec @mickym
                              Hier ein kleine Zusammenfassung: Es funktioniert jetzt 🙂

                              Die Verwendung des anderen mqtt Clients hat bei mir den Durchbruch gebracht.
                              Alle topics wurden automatisch angelegt auch die Topics zum schreiben (z.B. meiner OSRAM SmartPlug+ Steckdosen) wurden automatisch angelegt.
                              Ich habe ein wenig probieren müssen bis ich die richtige Syntax gefunden habe, aber bei mir funktioniert folgendes.

                              setState("mqtt.0.zigbee2mqtt.OSRAM4.set","OFF");

                              Vielen Dank euch allen für die tolle Hilfe!

                              PS: Kann ich den Thread hier irgendwie als closed/solved markieren?

                              Thomas Braun hydrotec 2 Replies Last reply Reply Quote 0
                              • Thomas Braun
                                Thomas Braun Most Active @hipohop last edited by

                                @hipohop sagte in zigbee2mqtt setup:

                                PS: Kann ich den Thread hier irgendwie als closed/solved markieren?

                                Den ersten Eintrag entsprechend editieren.

                                1 Reply Last reply Reply Quote 0
                                • hydrotec
                                  hydrotec @hipohop last edited by

                                  @hipohop sagte in zigbee2mqtt setup:

                                  @hydrotec @mickym
                                  Hier ein kleine Zusammenfassung: Es funktioniert jetzt 🙂

                                  Dankeschön für die Rückmeldung 👍
                                  Schön das es jetzt wie gewünscht funktioniert.

                                  Ich habe ein wenig probieren müssen bis ich die richtige Syntax gefunden habe, aber bei mir funktioniert folgendes.

                                  setState("mqtt.0.zigbee2mqtt.OSRAM4.set","OFF");

                                  Das kommt daher, das du bei dir in der zigbee2mqtt Konfiguration unter mqtt-payload-format : json eingetragen hast.
                                  Für die Zukunft, also wenn du komplett auf ioBroker umgezogen bist, würde ich dir, erst mal für den Übergang attribute_and_json empfehlen. Und später dann auf attribute zu wechseln. Dann wird dein payload gleich in einzelne Objekte zerlegt.
                                  Ist dann einfacher zigbee2mqtt zu steuern, bzw. mit scripts zu arbeiten.
                                  (zum Testen, kannst du den ganzen Objektbaum löschen, wird ja wieder angelegt)

                                  Vielen Dank euch allen für die tolle Hilfe!

                                  Immer wieder gerne 😉

                                  PS: Kann ich den Thread hier irgendwie als closed/solved markieren?

                                  Da war @Thomas-Braun schneller.
                                  (bei mir ist ja noch früh am Morgen 😉 )

                                  Gruß, Karsten

                                  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

                                  851
                                  Online

                                  32.0k
                                  Users

                                  80.4k
                                  Topics

                                  1.3m
                                  Posts

                                  5
                                  24
                                  10226
                                  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