Geräte werden von Z2M nicht in MQTT übertragen

Hallo zusammen,
Ich habe in meinem HA Mosquitto-MQTT und Z2M installiert. Es hat auch kurz alles funktioniert, aber nun werden keine Daten mehr von Z2M nach MQTT übertragen.
In Z2M sieht es so aus:

Aber in HA/MQTT leider so:

Habe Z2M und MQTT schon deinstalliert und installiert, ohne Erfolg.
Es ist mir aber aufgefallen, dass die Geräte sowohl unter Z2M, als auch unter MQTT, nach der Neuinstallation sofort da waren. Es wird wohl bei der Neuinstallation nicht alles entfernt?!
Verstehe nicht, wo das Problem liegt. Hat jemand noch eine Idee.
Auch den P1 habe ich gelöscht und neu angelernt, auch ohne Erfolg.
Habe heute noch 2 Zigbee Steckdosen bekommen. Diese werden im Z2M sofort eingebunden, tauchen aber nicht im MQTT auf.
Im Protokoll von Z2M und MQTT kann ich keine Fehler erkennen.
Ich hoffe es hat noch jemand eine Idee.
Gruß
Oli

Da Deine Screenshots hier als fehlerhaft angezeigt werden:
Beitag_Fehler

Überprüf mal per MQTT Explorer

ob Du Deinen MQTT Broker mit den unter HA dafür eingerichteten User und dessen Benutzernamen und PW, erreichen kannst. Falls ja wird vermutlich irgendetwas bei der MQTT Einrichtung bei Z2M und/oder der HA MQTT Integration nicht stimmen.

VG Jim

Hab ich gleich gemerkt und verbessert, aber du warst schneller. Ich habe ursprünglich MQTT für die Tasmota Wifi Steckdosen angelegt. Dort hatte ich einen anderen User. Aber nachdem ich es schon mehrfach deinstalliert und installiert habe, stimmt da nichts mehr. Mit dem Tool komme ich nicht klar und wo finde ich die verschiedenen Kennwörter?
Gruß
Oli

Na so schwer ist das ja nun auch nicht. :rofl: Du musst lediglich drei Dinge eintragen:

  1. Die IP von Deinem MQTT Broker.
  2. Den MQTT Benutzername und dessen PW.

Ich kann Dir nicht sagen wie Du bei Dir was eingerichtet hast. Wenn Du Dich an die Doku des MQTT Broker Addons für HA gehalten hast solltest Du es so eingerichtet haben wie es darin auch steht. Nämlich so:

Create a new user for MQTT via your Home Assistant’s frontend SettingsPeopleUsers , (i.e. not on Mosquitto’s Configuration tab). Notes:

  1. This name cannot be homeassistant or addons, those are reserved usernames.
  2. If you do not see the option to create a new user, ensure that Advanced Mode is enabled in your Home Assistant profile.

Aber wie schon gesagt, ich kann Dir nicht sagen wie Du was wo eingerichtet hast. :slightly_smiling_face:

Edit: Bevor ggf. die Frage kommt. Bei Z2M werden dort die MQTT Daten eingetragen


und bei der HA MQTT Integration dann dort per 3-Punkte Menüpunkt rechts

und dann “Neu konfigurieren” —>

VG Jim

Hi,
ich bin mir nicht sicher ob das der Grund ist, aber deine Bridge (welche auch immer) ist ziemlich veraltet, die Version 6.10 mit EZSP sollte nicht mehr verwendet werden.
2025-03-04 18_05_18-Window

Ansonsten was steht denn im Z2M-Protokoll?

Danke euch erst mal für die Tipps und die ausführliche Erklärung.
Werde es in den nächsten Tagen ausprobieren, aber erst einmal den Stick, den ich neu gekauft habe :face_with_raised_eyebrow:, auf die aktuelle Version bringen.
Gruß
Oli

Der Händler, der den Stick ggf. als Palettenware vor Jahren gekauft hat, macht sicher keine Firmware Updates für seine Kunden. :rofl: :wink:

1 „Gefällt mir“

So, Stick ist aktualisiert.
Tool getestet. Wenn ich aber, wie in deinem Screenshot mqtt.eclipse.org auswähle, bekomme ich diese Info:
grafik
Wähle ich test.mosquitto.org ohne User, tut sich was. Mit User Connection refused: Not authorized.
Im Mosquitto Broker sind die Einstellungen so:


In der MQTT Integration sieht es so aus:

Wenn ich das richtige Passwort eingebe und speichere kommt ok, wenn ich wieder rein schaue, ist mein Passwort weg. In Z2M unter MQTT das gleiche. Nach dem Speichern, schmeißt er immer wieder meinen User raus und setzt addons ein.
Ich habe im Mosquitto Broker unter yaml so
grafik
meinen eigenen User hinzugefügt. Nach dem Neustart war der Eintrag wieder weg. Ich habe irgendwie das Gefühl, dass etwas schreibgeschützt ist und deshalb nichts angepasst werden kann.
Ich habe den Mosquitto Broker unter HA laufen, also wird die IP des Brokers die gleiche wie HA sein. Ich finde auch keine MQTT Dateien im File Editor oder MQTT Einträge in der Configuration.yaml. Mein HA läuft als VM.
Weitere gute Ideen, wo ich noch ansetzen kann?
Gerne sagen, wenn ihr noch andere Infos braucht.
Gruß
Oli

Moin

welche Name da für eine Verbindung steht bzw. ausgewählt wurde spielt keine Rolle. :laughing: Das ist nur ein x-beliebiger Name den Du selber irgendwie vergeben kannst. Relevant ist die IP die dort einträgst, denn das ist die Verbindung die der MQTT Explorer dann zu dem - in dem Fall Deinen - MQTT Server mit dessen IP aufbaut.

Davon ist auszugehen und genau diese IP gibst Du bei dem MQTT Explorer dann an und wenn Du keine Änderungen an dem MQTT Broker Port vorgenommen haben solltest dann sollte der MQTT standardmäßig über den Port 1883 erreichbar sein.

Was jetzt das Thema User, Username und Passwort betrifft: Wie schon gesagt weiß ich nicht was Du da wo und wie eingerichtet hast. Wenn Du seber irgendwo einen MQTT Broker User eingerichtet hast und Dich nicht an den üblichen Weg gehalten hast der auch in der MQTT Broker Addon Doku beschrieben wurde - sprich für den MQTT Broker einen User unter HA anzulegen - sondern auch noch zusätzlich per logins: einen optionalen, eigenen User angelegt hast, dann musst Du leider selber schauen welche User Du jetzt wo und wie nutzt und welche Konfigurationen dafür dann wo notwendig sind.

Anm.: Ich vermute mal das Dein Problem halt daran liegt das Du selber nicht so genau weißt was Du jetzt wo, wofür und wie genau eingerichtet hast. :slightly_smiling_face: Ja als Einsteiger kann es schon sein das man da ggf. ins trudeln kommt und das ist auch erst einmal nicht so schlimm, aber es macht es halt komplizierter Dir ggf. zu helfen. Daher: Alles was es für den MQTT Broker braucht ist ein User der unter HA gem. MQTT Broker Addon Doku dafür angelegt wird.


Dieser angelegte HA User wird dann von Z2M automatisch genutzt und Du kannst ihn ebenfalls für Deine Tasmota Steckdosen nutzen, in dem Du dort den Benutzernamen und dessen Passwort bei den MQTT Einstellungen einträgst. Bsp.:

Wenn Du mit verschiedenen Benutzernamen bei dem MQTT Broker arbeiten wilst ist das zwar auch möglich, aber es macht es eigentlich nur unnötig kompliziert.

Edit weil ich das vergessen hatte: Das HA bei Dir in einer VM läuft spielt in dem Fall keine Rolle. Etwas anderes wäre es wenn Dein MQTT Broker irgendwo anders - z.B. getrennt in einem extra Docker oder einem LXC laufen würde.

VG JIm

Hallo Jim,
vor Zigbee hatte ich mal mit Tasmota laufen.

  1. Da er mir ja ein Ergebnis ausgibt. müsste das doch mit dem MQTT passen?!

grafik

  1. Wie ich oben schon geschrieben habe, kann ich weder im Z2M den “addons” User überschreiben, noch im MQTT das Kennwort. Es steht danach immer dieses wieder drin!
    Auch der in HA angelegte User wird nicht genommen.


Oder ist das ein Standard, nachdem man das Passwort geändert hat? Dann versteh ich nicht, warum es das Auge gibt!

  1. Auch wenn ich meinen User so in die yaml-Datei einfüge
    grafik
    und dann auf speichern drücke, den Neustart von Mosquitto Broker bestätige, fliegt mein Eintrag wieder raus.
    Hier noch ein Auszug den MQTT Protokolls:
[11:20:03] INFO: Certificates found: SSL is available
cont-init: info: /etc/cont-init.d/mosquitto.sh exited 0
cont-init: info: running /etc/cont-init.d/nginx.sh
cont-init: info: /etc/cont-init.d/nginx.sh exited 0
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun mosquitto (no readiness notification)
services-up: info: copying legacy longrun nginx (no readiness notification)
[11:20:04] INFO: Starting NGINX for authentication handling...
[11:20:04] INFO: Starting mosquitto MQTT broker...
2025-03-06 11:20:04: Warning: Mosquitto should not be run as root/administrator.
2025-03-06 11:20:04: mosquitto version 2.0.20 starting
2025-03-06 11:20:04: Config loaded from /etc/mosquitto/mosquitto.conf.
2025-03-06 11:20:04: Loading plugin: /usr/share/mosquitto/go-auth.so
2025-03-06 11:20:04:  ├── Username/password checking enabled.
2025-03-06 11:20:04:  ├── TLS-PSK checking enabled.
2025-03-06 11:20:04:  └── Extended authentication not enabled.
2025-03-06 11:20:04: Opening ipv4 listen socket on port 1883.
2025-03-06 11:20:04: Opening ipv6 listen socket on port 1883.
2025-03-06 11:20:04: Opening websockets listen socket on port 1884.
s6-rc: info: service legacy-services successfully started
2025-03-06 11:20:04: Opening ipv4 listen socket on port 8883.
2025-03-06 11:20:04: Opening ipv6 listen socket on port 8883.
2025-03-06 11:20:04: Opening websockets listen socket on port 8884.
2025-03-06 11:20:04: mosquitto version 2.0.20 running
2025-03-06 11:20:04: New connection from 172.x.x.x:42400 on port 1883.
2025-03-06 11:20:04: New connection from ::1:40040 on port 1883.
[11:20:04] INFO: Successfully send discovery information to Home Assistant.
2025-03-06 11:20:04: New client connected from 172.x.x.x:42400 as mqttjs_3b02c35c (p2, c1, k60, u'addons').
2025-03-06 11:20:04: Client <unknown> disconnected due to protocol error.
[11:20:04] INFO: Successfully send service information to the Supervisor.
2025-03-06 11:20:09: New connection from 172.x.x.x:38595 on port 1883.
2025-03-06 11:20:09: New client connected from 172.x.x.x:38595 as auto-6B6F7177-4542-4204-3F94-4A9C1555F46D (p2, c1, k60, u'user').
2025-03-06 11:20:10: New connection from 192.168.x.x:65371 on port 1883.
2025-03-06 11:20:10: New client connected from 192.168.x.x:65371 as DVES_1DFDBA (p2, c1, k30, u'user').
2025-03-06 11:20:10: New connection from 192.168.x.x:61755 on port 1883.
2025-03-06 11:20:10: New client connected from 192.168.x.x:61755 as DVES_148798 (p2, c1, k30, u'user').
2025-03-06 11:20:10: New connection from 192.168.x.x:64180 on port 1883.
2025-03-06 11:20:10: New client connected from 192.168.x.x:64180 as DVES_148ABD (p2, c1, k30, u'user').
2025-03-06 11:20:10: New connection from 192.168.x.x:62693 on port 1883.
2025-03-06 11:20:10: New client connected from 192.168.x.x:62693 as DVES_4477DE (p2, c1, k30, u'user').
2025-03-06 11:20:10: New connection from 192.168.x.x:64776 on port 1883.
2025-03-06 11:20:10: New client connected from 192.168.x.x:64776 as DVES_447A0A (p2, c1, k30, u'user').
2025-03-06 11:20:10: New connection from 192.168.x.x:64170 on port 1883.
2025-03-06 11:20:10: New client connected from 192.168.x.x:64170 as DVES_1E0ED8 (p2, c1, k30, u'user').
2025-03-06 11:20:10: New client connected from 192.168.x.x:64170 as DVES_1E0ED8 (p2, c1, k30, u'user').
2025-03-06 11:20:10: New client connected from 192.168.x.x:64170 as DVES_1E0ED8 (p2, c1, k30, u'user').

Anscheinend hat er ja auch Geräte gefunden, aber die werden nicht eingetragen/angezeigt.
Wie gesagt sende ich dir gerne mehr infos zu, um dem Problem auf die Spur zu kommen.
Wie kann ich evtl. MMQTT und Z2M komplett zurücksetzen? Eine Deinstallation hilft nicht, da danach sofort die Geräte wieder vorhanden sind!
Gruß
Oli

Die Gretchenfrage ist: :laughing: Hast Du unter HA jetzt einen User angelegt der dann von dem MQTT Broker benutzt wird und werden kann und so wie es in der MQTT Broker Addon Doku beschrieben ist, oder nicht? Wenn ja wird dieser bei der Ersteinrichtung von Z2M quasi automatisch genutzt und das ist auch der Grund warum in der Z2M Konfiguration unter Einstellungen → MQTT das “addons” als Username steht. Das ist vollkommen normal.

Was das Thema HA MQTT Integration: Wenn Du dort das Passwort nicht geändert hast und dann auf das Auge rechts klickst, kommt natürlich diese password_not_changed Anzeige. Das ist bei mir auch nicht anders.
MQTT_Integration_PW
Trotzdem muss dort bei Benutzername aber der Username eingetragen sein den Du unter HA für den MQTT Broker angelegt hast.

Bei Dir ist scheinbar das Problem das Du versuchst irgendwo und irgendwie Deinen scheinbar zusätzlich eingerichteten MQTT Broker User zu nutzen und je nachdem wo und wie Du das dann machst geht das schief.

Ich weiß nicht wie viel Du bei Dir schon eingerichtet hast, wie lange Du den MQTT Broker bereits nutzt und wie wichtig Dir die bisher erfassten Daten davon sind. Wenn Dir die bisher erfassten Daten - in erster Linie dürfte das dann ja wohl Deine Tasmota Steckdosen betreffen - egal sein sollten dann würde ich an Deiner Stelle einen Neuanfang machen und dann den MQTT Broker so einrichten wie es die Doku sagt.

Nein eine Art “Reset”, bei dem dann irgendwelche Standardwerte benutzt werden und alles quasi wieder bei Null beginnt, gibt es nicht. Dazu muss der MQTT Broker und in Deinem Fall am besten auch gleich noch die HA MQTT Integration und das Z2M Addon kompl. deinstalliert werden. Bei Z2M sollten man für einen kompl. Neuanfang am besten auch noch die Z2M Ordner unter HA löschen, oder zumindest alle Dateien darin.

Das sollte so nicht der Fall sein wenn man nach der Deinstallation HA kompl. neu startet. In Deinem Fall die HA VM kompl. herunterfahren und dann neu starten/booten.

So lange da bei Dir scheinbar irgendwelche unterschiedlichen MQTT Broker User “herumschwirren”, die dann bei Dir auch noch zusätzlich “Verwirrung” stiften, wird das vermutlich nichts. :slightly_smiling_face: Es macht m.M.n. auch nicht wirklich Sinn das jetzt irgendwie mit unterschiedlichen MQTT Broker Usern “hinzufrickeln”, insbesondere dann nicht wenn man - so wie Du - nicht so wirklich versteht was man da wo macht, oder machen muss. Auch wenn man natürlich durchaus mit mehreren unterschiedlichen MQTT Benutzern arbeiten könnte.

VG JIm

Da ich nicht wirklich Daten habe würde ich gerne von vorne anfangen!

  1. Ich deinstalliere Z2M inkl. der 2 erstellten Ordner
  2. Ich deinstalliere M-MQTT
  3. Ich lösche den MQTT-User unter Personen
  4. Neustart der VM
  5. Installation von M-MQTT ohne Benutzer
  6. Installation von Z2M ohne Benutzer
    Danach dürften keine Geräte mehr unter Z2M sein und auch unter MQTT nicht?
    Die Kommunikation zwischen Z2M und MQTT erfolgt automatisch, durch HA.

So müsste es doch funktionieren?
Gruß
Oli

:slightly_smiling_face: es fehlt der wichtigste Punkt: Das anlegen eine HA Benutzers für den MQTT Broker.


Beispiel:
HA_MQTT_Benutzer

Der Weg der Kommunkation ist: Z2M —> HA MQTT Integration —> MQTT Broker
Alle genannten Komponenten nutzen dann den HA User den Du für den MQTT Broker angelegt hast.

Anm.: Wenn vorher alles gelöscht und die HA VM neu gestartet wurde, sollten eigentlich alle alten Daten weg sein. Die Betonung liegt allerdings auf “sollten”, da - warum auch immer - HA da manchmal etwas “spinnt” und trotzdem noch irgendwelche alten Daten läd. Warum das manchmal so ist weiß wohl niemand so ganz genau. :laughing: Passieren sollte es im Nomalfall jedenfalls nicht.

VG Jim

Ich kann ERFOLG vermelden. Es haben wohl mehrere Faktoren zusammengespielt.
Um Z2M zu löschen, müssen die zwei Z2M-Ordner mit dem File-Editor gelöscht werden. Dies habe ich vorher bei meinen Neuanfängen nicht gemacht. Dadurch waren nach der Neuinstallation die Geräte sofort vorhanden.
Komischerweise waren nach der Neuinstallation von Mosquitto-MQTT die Geräte trotz VM Neustarts wieder vorhanden. Diese konnte ich aber händisch entfernen.
Ich habe einen User angelegt. Dieser zeigt aber unter “Neu konfigurieren” tatsächlich nicht mein vergebenes Kennwort sondern diesen Platzhalter:


Finde ich ziemlich unglücklich und verwirrend! :face_with_diagonal_mouth:
Der User wurde sofort nach dem Start der Integration eingebunden. Wieso er diesen genommen hat, versteh ich zwar nicht, da ich noch einen anderen Benutzer habe.
Nach dem Start von Z2M waren keine Geräte mehr vorhanden. Ich musste die Geräte neu anlernen, was kein Problem bei 3 Stück ist. Wiederrum hat er hier unter MQTT diesen User angelegt:

Dieser ist wohl fest vergeben und kann wohl nicht geändert werden.
Jetzt kommuniziert Z2M auch mit MQTT und zeigt alle Daten an. :partying_face:
Danke Jim für deine Hilfe.
Gruß
Oli