Bereinigung MQTT2_Server - gelöst

Begonnen von Müller, 25 Februar 2021, 08:46:59

Vorheriges Thema - Nächstes Thema

Müller

Hallo,

ich bin auf der Suche nach einer schnellen Variante wie ich mein zigbee2mqtt (mit MQTT2_Client) bereinigen kann.
Ich hatte vor einigen Monaten dieses Zigbee Netzwerk angelegt, um die Lichter in unserer Kirche zu steuern.
Dabei wurde einiges getestet und wieder geändert. Nun schalten manche Autoren mit Verzögerung oder werden nur sporadisch.
Da sind mittlerweile ca 30 Autoren, davon aber die meisten gar nicht mehr vorhanden sind.

Ich würde nun das ganze gerne neu aufsetzen (MQTT2_Server) und nur die tatsächlich verwendeten Autoren wieder anlernen.
Nun meine Frage: wenn ich die Client_ID des Device kenne, kann ich damit den Aktor direkt anlernen ?
(Manch Aktor ist an recht unzugänglichen Stellen verbaut und es ist ein großer Aufwand diese auszubauen und neu anzulernen!)

Hat jemand Erfahrung hierbei?

Danke & Gruß
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung

Beta-User

MAn. würfelst du da ziemlich viel durcheinander:
- In FHEM sollten (vorausgesetzt, du hast keine "friendly names" gesetzt (!)) die Definitionen 1:1 weiter laufen, eventuell muss die CID in der readingList des bridge-Devices gelöscht werden (=>kein list, keine konkrete Hilfe...)

- Im Dongle (CC253x, nehme ich an) sind die Adressen gespeichert. Wenn der Speicher darauf voll ist, wirst du ggf. dieselben Probleme haben wie bisher, das hat aber nichts mit FHEM zu tun...

- Wenn du es schaffst, den wieder auf Werkseinstellungen zu setzen und die Devices dann in einer frischen zigbee2mqtt-Umgebung neu anzulernen, sollte alles ohne Probleme laufen, das ist aber unabhängig von der Wahl des MQTT-Servers.

- Prinzipiell sollte auch ein Umzug der bestehenden zigbee2mqtt-Installation ohne weiteres gehen. Vom Bauchgefühl her würde ich dazu neigen, das auf diese Weise zu realisieren:
-- erst alles ausdrücklich ablernen, was nicht mehr verwendet werden soll (dazu muss es aber vorhanden sein, sonst bitte die Anleitung bei zigbee2mqtt (z2m) suchen für das Löschen nicht mehr verfügbarer Hardware);
-- den bereinigten Stand dann einfach "umhängen". Es sollte genügen, den z2m-Dienst zu stoppen, den mosquitto zu deinstallieren (und den MQTT2_CLIENT zu löschen) und dann einen MQTT2_SERVER (M2S) zu definieren mit demselben Port. Falls der M2S das einzige M2-IO ist, sollte sich eventuell sogar das IO an den M2_DEVICEs automatisch bei einem FHEM-Neustart umstellen, ansonsten musst du das halt händisch erledigen (oder den alten M2C-Namen für dem M2S verwenden)...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

TL60

Hallo,
im Prinzip hat Beta-User alles gesagt. Vielleicht ein paar Tipps von jemandem der das ganze schon mal so gemacht hat. Unbedingt auf die aktuellste Version von Zigbee2MQTT updaten, wie das geht ist hier https://www.zigbee2mqtt.io/getting_started/running_zigbee2mqtt.html unter Punkt6 gut erklärt und funktonierte auch so. Unbedingt die relativ neue grafische Benutzeroberfläche freischalten siehe https://www.zigbee2mqtt.io/information/frontend.html Dort bekommt man schon eine gute Übersicht über alle Geräte und eventuelle Fehler (nicht komplette Interviews, fehlende Readings etc).Außerdem kann man von hier aus auch Geräte schalten und sich das Log dazu ansehen. Eigentlich eine recht komfortable Angelegenheit Zigbee2MQTT zu administrieren. Ich bin dann so vorgegangen, das ich die Geräte in MQTT2-Server per autocreate (simple) habe automatisch anlegen lassen und dann die entprechenden Templates  angewendet habe,das hat gut geklappt,aber ich hatte auch eine frische FHEM Installation.
Viel Erfolg Thomas

Müller

So ein paar Komplikationen habe ich natürlich. Ein paar wenige Autoren haben einen "friendly name" und manche Autoren die ich löschen möchte sind nicht mehr vorhanden....

Ich werde heute Abend mal das update machen und mir mal das neue frontend anschauen. Vielleicht kann ich hier auch Autoren löschen, die nicht mehr ansprechbar sind.

Ich hatte noch gehofft, dass ich einfach die Client_ID in eine neue configuration.yaml schreiben kann und mir damit das anlernen ersparen kann.
(Für manche Autoren muß man auf eine 3,50m Leiter hoch steigen.....)

Danke für eure Tipps 
Jochen
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung

TL60

Hallo,
ich glaube wir reden ein wenig aneinander vorbei. Ich brauchte in Zigbee2MQTT kein einziges Gerät neu pairen (anlernen). Voraussetzung war das ich das Zigbee2MQTT Update gemäß der verlinkten Anleitung gemacht habe, inkl. Backup+Restore. Ich habe dann lediglich in der config von Zigbee2MQTT die Adresse und den Port auf den MQTT2-Server umgestellt (autocreate aktiv) es wurde automatisch ein neues MQTT2-Device erstellt auf das ich das Bridge Template angewendet habe und dann nacheinander imFrontend von Zigbee2MQTT die Lampen einmal geschaltet und es wurden automatisch neue Geräte angelegt. Wenn du die Geräte in FHEM schon hast, kann man auch nach dem Anlegen des Bridge devices versuchen dieses in den einzelnen Geräten als neues IO-Device zu hinterlegen (ungetestet). Aber solange du die Daten im Data Ordner von Zigbee2MQTT hast brauchst du in aller Regel nicht neu Pairen.siehe auch https://www.zigbee2mqtt.io/information/FAQ.html : What does and does not require repairing of all devices?

Müller

Mir geht es hauptsächlich um das Löschen und Bereinigen der ungenutzten Aktoren.
Das Update würde ich dann einfach mitmachen (das hier kein neues Pairing notwendig wäre ist mir bewußt)
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung

Müller

Meine Bereinigung hat geklappt: Hier ein paar meiner Erkenntnisse zu diesem Prozess:

Ein update von zigbee2mqtt ist unbedingt zu empfehlen https://www.zigbee2mqtt.io/
In der aktuellen Version ist ein Frontend verfügbar https://www.zigbee2mqtt.io/information/frontend.html mit der man die gepairen Geräte ggf bearbeiten (in meinem Fall entfernen) kann.
(Siehe Empfehlung vonTL60).

Wenn man in FHEM den "MQTT2_FHEM_Server" benutzt und dort den Aktor auch löscht, dann "kommt der nicht mehr wieder".
(Früher hatte ich das Problem, dass die ungewünschten Aktoren immer wieder kamen - Wahrscheinlich kamen die Infos früher, wieder über Mosquitto wieder rein.)

Bin mir nicht sicher ob auf dem Dongle wirklich Infos zu den Aktoren gespeichert werden? Ich habe schon CC2531 USB Dongle getauscht ohne negative Effekte. Hier habe ich beim Bereinigen keine Änderung am Dongle gemacht und die Aktoren blieben trozdem weg.

Somit konnte ich alle alten Experimente löschen und die Aktoren schalten auch wieder ohne Verzögerung

VG
Jochen
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung