Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Verständnisfrage zigbee2mqtt

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Verständnisfrage zigbee2mqtt

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Chris_78 last edited by

      Hi zusammen,

      ich bin vor kurzem vom deconz-Stick zum CC26X2R1 umgestiegen. Die Umstellung zum Zigbee-Adapter
      hat auch soweit gut funktioniert.

      Allerdings habe ich mir alternativ auch zigbee2mqtt angeschaut.
      Installation und Anbindung über Mosquitto an den IOBroker MQTT-Adapter hat auch gepasst.

      Die Daten von zigbee2mqtt kommen in folgendem Format in IOBroker an:

      Beispiel Bewegungsmelder:
      {"temperature":25.83,"linkquality":45,"illuminance":6551,"illuminance_lux":4,"update_available":false}

      test.png

      Jetzt kommt meine Verständnisfrage 🙂

      Wie verarbeite ich die Daten am besten weiter? Muss ich den Inhalt selber (per Skript) auswerten, und bei Änderungen
      die Nachrichten im obigen Format senden?
      Ich habe über MQTT bisher nur die Shellies am laufen. Dort werden für die Daten großteils eigene Datenpunkte angelegt.
      Zur Steuerung wird der jeweilige Command-Datenpunkt genutzt.

      Wie funktioniert das ganze bei zigbee2mqtt? Muss ich z.B. NodeRed nutzen das MQTT direkt "versteht"?

      Angaben zum System:
      Proxmox: Debian VM(s) - Pentium Silver J5005
      Software soweit alles aktuell (Node.js 12.18.3 / JS-Controller: 3.1.6)
      zigbee2mqtt: eigene VM (Debian)
      mqtt-broker: mosquitto (eigene VM / Debian)

      Jey Cee mickym 2 Replies Last reply Reply Quote 0
      • Jey Cee
        Jey Cee Developer @Chris_78 last edited by

        @Chris_78 sagte in Verständnisfrage zigbee2mqtt:

        Allerdings habe ich mir alternativ auch zigbee2mqtt angeschaut.

        Eigentlich ist das keine Alternative, der Zigbee Adapter baut nämlich auf diesem Projekt auf.

        C 1 Reply Last reply Reply Quote 1
        • C
          Chris_78 @Jey Cee last edited by

          @Jey-Cee

          Danke für die Info. Ich hatte im Netz recht häufig gelesen, dass direkt zigbee2mqtt eingesetzt wird.
          Allerdings eher im Bereich HomeAssistant oder NodeRed.

          Wie würde denn grundsätzlich die optimale Vorgehensweise sein die Daten weiterzuverarbeiten?
          Mich "reizt" doch noch etwas der Gedanke viele Geräte zentral über MQTT ansprechen zu können
          (systemunabhängig, evtl. Anbindung an eine andere Plattform,...).

          Hast du eine Idee?

          arteck 2 Replies Last reply Reply Quote 0
          • arteck
            arteck Developer Most Active @Chris_78 last edited by arteck

            @Chris_78 installier das Projekt zigbee2mqtt (Eintellung nicht vergessen da muss der MQTT Iobroker Server ren) und...
            MQTT Adapter im iobroker fettisch

            C 1 Reply Last reply Reply Quote 0
            • C
              Chris_78 @arteck last edited by

              @arteck
              Installiert habe ich es bereits (aktuell ist die VM nicht aktiv, da ich den Zigbee Adapter am laufen habe).
              Konfiguriert und lauffähig ist zigbee2mqtt ebenfalls.

              Wie im 1. Beitrag beschrieben liegt mein Problem darin, die MQTT-Nachrichten zu verarbeiten.
              Es wurde für jedes Gerät jeweils nur ein Datenpunkt angelegt, in dem alle Informationen des Geräts
              geschrieben werden.

              Beispiel Datenpunkt Bewegungsmelder (Screenshot im 1. Beitrag):
              {"temperature":25.83,"linkquality":45,"illuminance":6551,"illuminance_lux":4,"update_available":false}

              Muss ich obigen Datenpunkt per Skript durchsuchen/"zerlegen" und mir die passenden Infos rausholen,
              oder gibt es einen eleganteren Weg?
              Und wie müssen die Nachrichten aussehen, wenn ich z.B. on/off states für einen Schalter senden möchte?

              1 Reply Last reply Reply Quote 0
              • arteck
                arteck Developer Most Active @Chris_78 last edited by

                @Chris_78 sagte in Verständnisfrage zigbee2mqtt:

                Mich "reizt" doch noch etwas der Gedanke viele Geräte zentral über MQTT ansprechen zu können
                (systemunabhängig, evtl. Anbindung an eine andere Plattform,...).

                also wenn du so was schreibst geh ich von aus dass du dich mit dem Protoll auseinander gesetzt hast und weisst was zu tun ist..

                ansonten mach das bitte zuerst..

                C 1 Reply Last reply Reply Quote 0
                • C
                  Chris_78 @arteck last edited by

                  @arteck

                  Ich finde es echt schade, wenn man nach Tipps und Ideen fragt so oft mit dem Punkt RTM "abgefrühstückt" wird...

                  Weil ich Punkte wie "Systemunabhängig" und "andere Plattformen" geschrieben habe muss man sich komplett mit dem Protokoll
                  auseinandersetzen?
                  Wie ich geschrieben habe wüsste ich eine Variante, habe aber nach einer eleganteren Methode gefragt.
                  Fragen scheint hier aber zu viel zu sein.

                  Auch werden Posts anscheinend gar nicht richtig gelesen. Du schreibst in deiner vorletzten Antwort, ich solle zigbee2mqtt installieren,
                  das war bereits im 1. Beitrag alles beschrieben.

                  Naja wie auch immer Thema kann aus meiner Sicht zu...

                  1 Reply Last reply Reply Quote 0
                  • arteck
                    arteck Developer Most Active last edited by arteck

                    @Chris_78 jep bin nur über dein Beitrag drüber geflogen SRY meinerseits aber

                    sagte in Verständnisfrage zigbee2mqtt:

                    Installation und Anbindung über Mosquitto an den IOBroker MQTT-Adapter hat auch gepasst.

                    wozu der Mosquitto Server wenn iobroker einen eigenen mitbringt.. und da sind wir weider bei "beschäftige dich bitte mit dem Protokoll" es gibt genügen literatur dafür... Ich werde dir jetzt hier keine persönliche Session starten um mit dir die Besonderheiten wie man was anlegt und wie man sich über MQTT unterhält .. was bietet iobroker für MQTT..

                    es wird erwertet (zumindest von mir) dass derjenige der was auf die beine stellen will sich auch damit beschäftigt..

                    es gibt keine "einzelne nur die beste Methode", viele wege führen nach Rom und nur wenn man weiss wie es funktioniert kann man FÜR SICH ALLEINE die Methode finden mit der man klar kommt ..

                    C 1 Reply Last reply Reply Quote 0
                    • C
                      Chris_78 @arteck last edited by Chris_78

                      @arteck said in Verständnisfrage zigbee2mqtt:

                      @Chris_78 jep bin nur über dein Beitrag drüber geflogen SRY meinerseits aber

                      sagte in Verständnisfrage zigbee2mqtt:

                      Installation und Anbindung über Mosquitto an den IOBroker MQTT-Adapter hat auch gepasst.

                      wozu der Mosquitto Server wenn iobroker einen eigenen mitbringt.. und da sind wir weider bei "beschäftige dich bitte mit dem Protokoll" es gibt genügen literatur dafür... Ich werde dir jetzt hier keine persönliche Session starten um mit dir die Besonderheiten wie man was anlegt und wie man sich über MQTT unterhält .. was bietet iobroker für MQTT..

                      Natürlich wäre der Mosquitto nicht unbedingt notwendig. Allerdings hatte ich hier das ein oder andere Mal über Stabilitätsprobleme des MQTT-Adapter als Broker gelesen.
                      Ob dies noch oder überhaupt so ist, weiß ich allerdings nicht.
                      Allerdings finde ich es flexibler gewisse Dinge vom Hauptsystem/ioBroker zu trennen. So könnte man relativ einfach den Mosquitto an ein anderes System anbinden oder
                      parallel mitnutzen.

                      es wird erwertet (zumindest von mir) dass derjenige der was auf die beine stellen will sich auch damit beschäftigt..

                      Ist nicht so, dass ich mich nicht damit beschäftige, allerdings hatte ich gehofft, hier den einen oder anderen Denkanstoss bzw. Tipp zu bekommen. Dachte dazu wäre das Forum da.

                      z.B.
                      Warum liefern die Shelly-Geräte bereits eine vernünftige Daten-Struktur, während die Zigbee-Geräte alles in ein Datenfeld schreiben?
                      Liegt das daran, dass die Shellys native MQTT unterstützen und intern bereits ein Mapping durchführen?

                      es gibt keine "einzelne nur die beste Methode", viele wege führen nach Rom und nur wenn man weiss wie es funktioniert kann man FÜR SICH ALLEINE die Methode finden mit der man klar kommt ..

                      Also ist das Forum nicht zum Fragen stellen gedacht, bzw. man darf erst Fragen stellen, nach dem man sich Wochen (oder wie lange auch immer) ALLEINE eingearbeitet hat?
                      Da habe ich eine andere Einstellung zu... Ich dachte man darf auch während der Lernphase Fragen stellen...

                      Dutchman 1 Reply Last reply Reply Quote 0
                      • Dutchman
                        Dutchman Developer Most Active Administrators @Chris_78 last edited by

                        @Chris_78

                        Ich glaube hier wird aneinander vorbei geredet ?
                        Deine Frage ist eigentlich: erklärt mir mal wie ich zigbee 2 mqtt mit iobroker einsetzen kan, mja die Antwort ist einfach

                        • installiere mqtt Server (was bringt dir mosquitto seperat brauchst es am Ende in iobroker
                        • setze dich mit den Strukturen auseinander wie man json verarbeitet und in datenpunkte schreibt
                        • mach dich schlau in der Logic und lies dich ein wie iobroker states verarbeitet

                        Alternatieve : installiere die zigbee Adapter und mache es damit, den alles was du fragst ist in dem realisiert, da stecken Stunden/Wochen und Monate Arbeit drin der source Code is opensource und sichtbar für jedermann

                        Wir haben bereits ein Auto, du bist noch dabei raus zu finden die Karosserie zu entwerfen möchtest aber nen kompletten Bauplan vom Auto eh Mja ... verstehst ?

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          Chris_78 @Dutchman last edited by Chris_78

                          @Dutchman said in Verständnisfrage zigbee2mqtt:

                          Danke Dutchman, deine Antwort hat mich weiter gebracht.

                          @Chris_78

                          Ich glaube hier wird aneinander vorbei geredet ?
                          Deine Frage ist eigentlich: erklärt mir mal wie ich zigbee 2 mqtt mit iobroker einsetzen kan, mja die Antwort ist einfach

                          • installiere mqtt Server (was bringt dir mosquitto seperat brauchst es am Ende in iobroker

                          Warum ich den Mosquitto einsetze habe ich ja bereits oben beschrieben. Die Daten sind auch bereits im MQTT-Adapter
                          im ioBroker vorhanden.

                          • setze dich mit den Strukturen auseinander wie man json verarbeitet und in datenpunkte schreibt
                          • mach dich schlau in der Logic und lies dich ein wie iobroker states verarbeitet

                          Das sind eigentlich die entscheidenden Punkte bzw. eigentlich fast alles was ich wissen wollte. Weiter oben hatte ich nach
                          einer "eleganteren" Variante gefragt. Von dem was ich raus lese muß ich wohl doch den Weg "zu Fuß" nehmen. 🙂

                          Alternatieve : installiere die zigbee Adapter und mache es damit, den alles was du fragst ist in dem realisiert, da stecken Stunden/Wochen und Monate Arbeit drin der source Code is opensource und sichtbar für jedermann

                          Wir haben bereits ein Auto, du bist noch dabei raus zu finden die Karosserie zu entwerfen möchtest aber nen kompletten Bauplan vom Auto eh Mja ... verstehst ?

                          Das fertige Auto fährt ja hier auch. Aber vielleicht gefällt mir ja das Auto mit weniger Ausstattung besser 😉

                          Dutchman 1 Reply Last reply Reply Quote 0
                          • Dutchman
                            Dutchman Developer Most Active Administrators @Chris_78 last edited by

                            @Chris_78 sagte in Verständnisfrage zigbee2mqtt:

                            Das sind eigentlich die entscheidenden Punkte bzw. eigentlich fast alles was ich wissen wollte. Weiter oben hatte ich nach
                            einer "eleganteren" Variante gefragt. Von dem was ich raus lese muß ich wohl doch den Weg "zu Fuß" nehmen.

                            Problem ist, das wen du die manuell lösen willst ziemlich auf Niveau von Adapter Bau kommst
                            Man kan mit scripten objecte erstellen und Werte setzen, auch json auslesen

                            Docu von JavaScript Adapter mal angeschaut da stehen eigentlich al diese Funktionen beschrieben 😉

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

                              @Chris_78 Dein Frage hat ja nicht mit irgendwelchen Adaptern zu tun. Wenn Du über Node-Red die Datenpunkte verarbeitest, brauchst Du die Datenpunkte auch nicht zu extrahieren, sondern kannst über die JSON Node direkt auf die Werte zugreifen.

                              Ansonsten um aus einem JSON String separate Datenpunkte zu generieren - das wurde zum Beispiel hier schon diskutiert: https://forum.iobroker.net/topic/35018/mqtt-string-generell-aufteilen

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

                                @mickym said in Verständnisfrage zigbee2mqtt:

                                @Chris_78 Dein Frage hat ja nicht mit irgendwelchen Adaptern zu tun. Wenn Du über Node-Red die Datenpunkte verarbeitest, brauchst Du die Datenpunkte auch nicht zu extrahieren, sondern kannst über die JSON Node direkt auf die Werte zugreifen.

                                Ansonsten um aus einem JSON String separate Datenpunkte zu generieren - das wurde zum Beispiel hier schon diskutiert: https://forum.iobroker.net/topic/35018/mqtt-string-generell-aufteilen

                                Ich habe mir inzwischen ein Skript erstellt, mit dem ich die MQTT-Messages auf einzelne Datenpunkte aufsplitte. Funktioniert soweit gut.
                                NodeRed habe ich mir zum Testen ebenfalls mal installiert. Könnte evtl. einige Logiken von IOBroker übernehmen. Werde weiter Testen 😉

                                Und danke für den Link. Das "generische" Skript sieht ebenfalls interessant aus. Muss ich mir auch etwas genauer anschauen. 😉

                                C 1 Reply Last reply Reply Quote 0
                                • C
                                  Chris_78 @Chris_78 last edited by

                                  Kurzer Zwischenstand meines "Expirementes": 🙂

                                  Aktuell habe ich mich an NodeRed gewöhnt. Folgendes habe ich über NodeRed umgesetzt:

                                  • Alexa Einbindung
                                  • statt Zigbee-Adapter Nutzung von Zigbee2MQTT
                                  • sämtlicher MQTT Traffic (Shelly und Zigbee Geräte) läuft nun über NodeRed bzw. NodeRed holt sich alles notwendige vom Mosquitto. Wichtige oder notwendige Sachen werden an IOBRoker weitergeleitet
                                  • Folgende Adapter sind im IOBRoker nicht mehr notwendig: IOT, MQTT, Zigbee und evtl. Javascript

                                  Einige Skripte habe ich bereits nach NodeRed umgezogen, ob ich alles auf NodeRed umziehen kann weiß ich noch nicht genau.

                                  NodeRed läuft aktuell sehr performant und stabil.

                                  Was haltet ihr davon, eher nur Spielerei oder doch einigermassen sinnvoll? 😉

                                  O 1 Reply Last reply Reply Quote 0
                                  • O
                                    Oskar @Chris_78 last edited by

                                    @Chris_78
                                    hallo, ich habe versucht mit Hilfe von anderen Users eine Schaltung in NodeRed zu bekommen, jedoch erkennt meine Alexa kein Gerät. Nachdem Du ja Alexa eingebunden hast, könntest Du mir dabei helfen,
                                    lg Oskar

                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      Chris_78 @Oskar last edited by Chris_78

                                      @Oskar

                                      Als Erweiterung/Palette in NodeRed habe ich folgenden genutzt:
                                      "node-red-contrib-alexa-home" (dieser funktioniert ohne Alexa-Skill und kann fast direkt genutzt werden)

                                      In Node-Red sieht das ganze dann folgendermaßen aus:

                                      test.png

                                      In der Function habe ich die "true"/"false" Werte aus dem Payload rausgeholt und als neuen Payload gespeichert:

                                      if (msg.payload.on === true) {
                                          msg.payload = true;
                                      } else {
                                          msg.payload = false;
                                      }    
                                      return msg;
                                      

                                      Ansonsten ist noch wichtig, dass der Port gemappt wird (da neuere Echo Geräte den Port 80 nutzen).
                                      Dies wird mit folgendem Befehl durchgeführt (Port 80 wird auf Port 60000 gemappt):
                                      sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 60000

                                      Falls die Änderung dauerhaft sein soll (ansonsten muss obiger Befehl nach jedem Neustart erneut durchgeführt werden):
                                      iptables-save > /etc/iptables/rules.v4

                                      Den letzten Befehl jedoch besser noch mal auf folgender Seite abgleichen (je nach Linux-System sind leichte Abweichungen vorhanden):
                                      https://www.poftut.com/how-to-save-and-restore-iptables-rules-permanently-in-ubuntu-centos-fedora-debian-kali-mint/

                                      Ich hoffe die Infos helfen dir weiter.

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      1.1k
                                      Online

                                      31.7k
                                      Users

                                      79.7k
                                      Topics

                                      1.3m
                                      Posts

                                      6
                                      17
                                      1490
                                      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