Zigbee2mqtt: Hinzufügen des Tuya ME201WZ Füllstandssensors

Modul gekauft, einfach an zigbee2mqtt angeschlossen und einen Messungstest in einem Wasserbehälter durchgeführt. Es scheint sehr genau zu sein (bis auf den Zentimeter genau, was in meinem Tank ausreichen wird).

In Gladys ist das Gerät in der Zigbee-Integration sichtbar, aber es wird nur der Wert linkquality verwaltet.

In der Anzeige in z2m habe ich das:

{
    "installation_height": 1.6,
    "last_seen": "2025-05-04T07:09:01.854Z",
    "linkquality": 144,
    "liquid_depth": 0.94,
    "liquid_depth_max": 1.6,
    "liquid_level_percent": 58,
    "liquid_state": "normal",
    "max_set": 80,
    "mini_set": 20
}

Es wäre gut, wenn Gladys auch ‹ liquid_depth › (in Metern ausgedrückt), ‹ liquid_level_percent › (in %) und ‹ liquid_state › (das die Werte « niedrig », « normal » oder « hoch » annehmen kann) abrufen könnte.

@pierre-gilles, @cicoub13 oder andere, ist es möglich, diese in einer zukünftigen Version von Gladys hinzuzufügen? Vielen Dank im Voraus :+1:

Falls Sie weitere Informationen benötigen, lassen Sie es mich wissen…

@StephaneB Super, ich schaue mir das an, ich halte dich auf dem Laufenden, falls Fragen auftauchen :slight_smile:

Hier ist der Link zum Gerät bei Zigbee2mqtt:

Hallo @StephaneB :slight_smile:

Ich habe dieses Gerät in diesem PR integriert:

Alles ist verwaltet, einschließlich des Füllstands (niedrig/normal/high), den du auf dem Dashboard und in den Szenen verwenden kannst! :smiley:

Ich habe ein Docker-Build erstellt auf:

gladysassistant/gladys:zigbee2mqtt-tuya-me201wz

Könntest du es testen und mir sagen, ob es für dich in Ordnung ist?

Ich habe es gerade bestellt, also werde ich die Build noch diese Woche testen können, mit zwei Tests in Aussicht: mein Pellet-Ofen und meine Wassersammler :slight_smile:

Danke für deine Schnelligkeit @pierre-gilles. Ich muss nur prüfen, ob ich meinen alten Zigbee-Schlüssel noch habe, um ihn auf dem alten PC zu installieren, den ich kürzlich verwendet habe, um spezifische Versionen von Gladys zu testen (als du das si…alors…sonst entwickelt hast).

Denn ich nehme an, dass es nicht möglich ist, eine spezifische Gladys-Version parallel zu meinem Gladys-Produktionssystem auf meinem Mini-PC zu installieren, und dass beide auf denselben Zigbee-Schlüssel und denselben Zigbee2mqtt zugreifen. Oder du lässt mich dich führen, wenn es doch möglich ist :wink:

:warning:Ich gehe davon aus, dass du Zigbee2mqtt automatisch über Gladys startest.

Ich denke, das ist möglich. Starte Gladys auf deinem alten PC (oder sogar lokal auf deinem PC/Mac mit Docker) und richte die Zigbee2mqtt-Integration so ein, dass sie mit dem Mosquitto-Broker „IP_DEINES_MINI_PCS:1884“ kommuniziert.

(Ich weise darauf hin, dass ich das noch nie getestet habe, aber ich sehe keinen Grund, warum es nicht funktionieren sollte :stuck_out_tongue: )

Ich nutze natürlich meinen Mini-PC mit zigbee2mqtt, das automatisch von Gladys gestartet wird. Also werde ich deinen Vorschlag testen.

Ah, du wirst trotzdem eine Authentifizierung benötigen :stuck_out_tongue:

Auf deinem Mini-PC öffne die Datei /var/lib/gladysassistant/zigbee2mqtt/z2m/configuration.yaml, indem du folgendes ausführst:

cat /var/lib/gladysassistant/zigbee2mqtt/z2m/configuration.yaml

Du solltest oben in der Datei Folgendes sehen:

mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://localhost:1884
  user: gladys
  password: DEIN_PASSWORT

Verwende den Benutzernamen und das Passwort :slight_smile:

Da bin ich gerade dran gescheitert, wollte dich gerade fragen… :stuck_out_tongue:

Mit deinem Hinweis, um das Passwort des Brokers abzurufen, verbindet sich mein Gladys-Test-PC gut mit dem MQTT-Produktionsserver (aber man muss in der Broker-URL « mqtt://IP_DER_MINI_PC:1884 » angeben, und nicht nur « IP_DER_MINI… »)

Ich fahre mit dem Test fort…

Also funktioniert die Verbindung zu zigbee2mqtt meines Gladys-Produktionssystems perfekt. Ich habe den Sensor hinzugefügt, der mit 6 Indikatoren angezeigt wird, und ihn im Dashboard verwendet.

2 kleine Mängel wurden festgestellt (mit darunterliegendem Screenshot dessen, was ich im Dashboard sehe):

  • 4 Indikatoren tragen genau denselben Namen ‹ Füllstandssensor ›
  • ich weiß nicht, wofür die 2 als Schieberegler dargestellten Indikatoren stehen

Der Screenshot meines Dashboards:

Und bezüglich deines Screenshots, bei mir wird die Einheit (‹ m ›) nicht angezeigt…

Ich wollte in den « Geräten » der zigbee2mqtt-Integration nachsehen, um die verschiedenen Funktionen zu bearbeiten, aber tatsächlich ist das Gerät dort nicht aufgelistet. Ich weiß nicht, ob das eine Nebenwirkung davon ist, dass es mit dem entfernten MQTT-Broker verbunden ist…
Ich finde es in « Zigbee-Erkennung » wieder, aber egal wie oft ich auf « Speichern » klicke, es erscheint nicht unter « Geräte »…

Danke für die Rückmeldung, ich schaue mir das sofort an :slight_smile:

Es ist seltsam, dass du Slider siehst, wenn das der Fall ist, bedeutet das, dass Zigbee2mqtt zurückgibt, dass diese Attribute auf « read_only »: false gesetzt sind… :denk:

Wie wird das Gerät in Zigbee2mqtt angezeigt?

Edit: Bei den Metern habe ich es gefunden, ich habe mich bei der Einheit vertan.

@StephaneB Ich habe einen neuen Build mit:

  • Korrektur der Einheit (Meter)
  • Erstellung eines benutzerdefinierten Funktions-Typs für dieses Gerät, um benutzerdefinierte Namen zu haben

Du musst den Container pullen/löschen/neu erstellen, dann das Gerät in Gladys löschen / dann neu erstellen über den Entdeckungs-Tab, um die Änderungen zu haben :slight_smile:

Seltsam, ich sehe keine Veränderung.

Ich habe die folgenden Befehle nacheinander ausgeführt: docker container stop … / docker container rm … / docker pull … (das hat tatsächlich einen neuen Download durchgeführt) / docker run …

Und dann konnte ich in Gladys das Zigbee-Gerät nicht löschen, da es nicht unter Geräte in der Zigbee2mqtt-Integration angezeigt wird (wie oben erwähnt), und habe es daher erneut über Geräteentdeckung hinzugefügt…

Habe ich einen Schritt vergessen?

Das ist sehr seltsam, du musst nicht auf der richtigen Oberfläche sein, es ist nicht möglich, dass ein Gerät nicht in der Geräteansicht ist, aber auf dem Dashboard!

Du bestätigst mir, dass du nicht an deiner Produktion herumspielst? Wir arbeiten an der Testinstanz, die du gestartet hast.

Ja, ich führe die Manipulationen in meiner Testinstanz durch (die aber mit dem Broker meiner Produktionsinstanz verbunden ist…)

Genauer gesagt: Auf dem Computer, auf dem ich dein Docker-Image der Entwicklungsversion gestartet habe, verbinde ich mich im Browser mit localhost.

Sinon schau dir die Logs deines Browsers an, wenn du auf der Ansicht „Geräte“ bist, nur um sicherzugehen, dass nichts abstürzt, aber ich denke, es gibt ein Installationsproblem

Keine Fehler in der Browserkonsole, wenn ich die Geräteansicht anzeige…

Und ich entdecke einen weiteren Fehler: In den Hauseinstellungen kann ich Räume nicht richtig hinzufügen. Wenn ich P1 und P2 hinzufüge, auf „Hinzufügen“ und dann auf „Haus speichern“ klicke, scheint alles in Ordnung zu sein. Aber wenn ich die Seite verlasse und wieder zurückkehre, werden die Räume nicht mehr aufgelistet. Und wenn ich P1 erneut hinzufüge, erhalte ich eine Fehlermeldung, dass „der Raum bereits existiert“.

Und als Folge davon habe ich in der zigbee2mqtt-Integration das Gerät ohne Auswahl eines Raumes hinzugefügt, was vielleicht erklärt, warum das Gerät falsch hinzugefügt wurde?

Aber ich kann eine Installation neu starten, wenn nötig. Was muss ich zusätzlich zu docker rm und docker run tun, das ich schon mehrmals gemacht habe?

Ein möglicher Grund: Ich hatte auf diesem PC eine andere Version von devt (die mit dem si…alors…sinon) installiert, und heute habe ich nur docker rm + docker run mit deiner neuen Version durchgeführt. Reicht das nicht aus, um alle Spuren der vorherigen Installation zu löschen, insbesondere die Datenbank?

Vielleicht muss man also noch etwas zwischen docker rm und docker run tun. Ich lasse dir die Entscheidung…