Zuletzt angesehen:
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
public:wasserzaehler [2025/01/20 13:23] admin [Konfiguration] |
public:wasserzaehler [2025/04/25 09:18] (aktuell) admin [Neue TASMOTA Firmware für den MQTT-Wasserzähler] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ===== MQTT Wasserzähler / Verbrauchsmessung eines Zenner-Wasserzählers ===== | + | ===== MQTT-Wasserzähler / Verbrauchsmessung eines Wasserzählers ===== |
=== Beschreibung === | === Beschreibung === | ||
- | Ein Zenner MNK Wasserzähler ist werksseitig mit einem Reed-Kontakt Aufnehmer ausgestattet und kann demzufolge mit einfachen Maßnahmen Smart gemacht werden.\\ | + | Einige Wasserzähler sind werksseitig mit einem Reed-Kontakt Aufnehmer ausgestattet und können demzufolge mit einfachen Maßnahmen Smart gemacht werden.\\ |
- | Der separat, erhältlichew Reed-Kontaktgeber, erfasst das umlaufene Flügelrad des Zählers und gibt das Signal an die Zählereinheit (MQTT-Wasserzähler) weiter, welche die Auswertung übernimmt.\\ | + | Der meist separat, erhältlichew Reed-Kontaktgeber, erfasst das umlaufene Flügelrad des Zählers und gibt das Signal an die Zählereinheit (MQTT-Wasserzähler) weiter, welche die Auswertung übernimmt.\\ |
\\ | \\ | ||
\\ | \\ | ||
Zeile 29: | Zeile 29: | ||
\\ | \\ | ||
Kabel durch das Loch seitlich des Gehäuses einfädeln, verlöten, einsetzen, mit Deckel verschließen.\\ | Kabel durch das Loch seitlich des Gehäuses einfädeln, verlöten, einsetzen, mit Deckel verschließen.\\ | ||
+ | GGf. den D1-Mini an der hinteren Seite (aufgedruckte Antenne) etwas runter feilen, damit er besser ins Gehäuse gleitet.\\ | ||
\\ | \\ | ||
{{:public:wasser_gehaeuse_3.jpg?300|}} | {{:public:wasser_gehaeuse_3.jpg?300|}} | ||
Zeile 88: | Zeile 89: | ||
\\ | \\ | ||
=== Konsolen Script === | === Konsolen Script === | ||
- | In folgendem Script (Konsolen > Script konfigurieren) ist eine Variablenwerte zu ersetzen.\\ | + | In folgendem Script (Konsolen > Script konfigurieren) ist eine Variablenwerte zu ersetzen. Immer mit PUNKT nicht mit KOMMA !!\\ |
- wp (Wasserpreis in EUR) z.B. 1.81 | - wp (Wasserpreis in EUR) z.B. 1.81 | ||
Zeile 198: | Zeile 199: | ||
\\ | \\ | ||
=== Sonstige Konfiguration === | === Sonstige Konfiguration === | ||
- | MTT gegenfalls aktivieren (für Hausautomation) und zum Datenschutz sollte man die Weboberfläche mit einem kryptischen Passwort schützen:\\ | + | Fall noch nicht vordefiniert, muss Pin D5 für den Counter konfiguriert werden, da der Reedkontaktgeber zwischen GND und D5 eingelötet ist.\\ |
+ | {{:public:gaszaehler_7.jpg?400|}}\\ | ||
+ | \\ | ||
+ | MQTT gegebenfalls aktivieren (für Hausautomation) und zum Datenschutz sollte man die Weboberfläche mit einem kryptischen Passwort schützen:\\ | ||
+ | Der Benutzername lautet: **admin**\\ | ||
+ | **Beispiel:**\\ | ||
{{:public:wz-weitere-einstellungen.jpg?400|}} | {{:public:wz-weitere-einstellungen.jpg?400|}} | ||
\\ | \\ | ||
Zeile 236: | Zeile 242: | ||
script >m1=0 | script >m1=0 | ||
</code> | </code> | ||
+ | |||
+ | === Impuls Anpassung === | ||
+ | Per default geht das Script von 10 Liter pro Impuls aus.\\ | ||
+ | Falls der Wasserzähler andere Impulse liefert, aslo 1L/imp oder 100L/imp, muss das script angepasst werden.\\ | ||
+ | \\ | ||
+ | z.B. bei 1L/imp (1 Liter pro Impuls)\\ | ||
+ | <code> | ||
+ | s1=Counter#C1/1000 | ||
+ | c1=Counter#C1 | ||
+ | wtotal=(c1/1000) | ||
+ | </code> | ||
+ | |||
+ | z.B. bei 100L/imp (100 Liter pro Impuls)\\ | ||
+ | <code> | ||
+ | s1=Counter#C1/10 | ||
+ | c1=Counter#C1 | ||
+ | wtotal=(c1/10) | ||
+ | </code> | ||
+ | |||
+ | Um die Kommastellen der Bildschirmausgabe von 2 Stellen auf 3 Stellen zu erweitern, muss im Script %2 durch %3 ersetzt werden.\\ | ||
+ | |||
+ | <code> | ||
+ | Zählerstand: {m} %3wtotal% m³ | ||
+ | </code> | ||
+ | |||
+ | === Debounce/Prellen === | ||
+ | Es ist normal, dass ein Reedkontakt manchmal doppelt zähler. Dies nennt man **Prellen** und es kommt vor, wenn der Magnet längere Zeit über den Reedkontakt steht.\\ | ||
+ | Um dies zu verhindern oder zumindest zu minimieren, kann per Konsole ein Kommandoe **CounterDebounce** eingegeben werden.\\ | ||
+ | Der Wert kann von 0-32000 gewählt werden und spiegelt Millisekunden da, welche vergehen müssen, bis eine erneute Zählung zugelassen wird.\\ | ||
+ | Man sollte mir einem Wert von 1000 anfangen und das Verhalten beobachten. Wenn der Reedkontakt immer noch prellt, dann um 500 bis 1000 erhöhen.\\ | ||
+ | <code> | ||
+ | CounterDebounce 1000 | ||
+ | </code> | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
===== Konfiguration in FHEM ===== | ===== Konfiguration in FHEM ===== | ||
Zeile 352: | Zeile 398: | ||
payload_available: "Online" | payload_available: "Online" | ||
payload_not_available: "Offline" | payload_not_available: "Offline" | ||
- | device_class: water | + | device_class: monetary |
- | state_class: "total_increasing" | + | state_class: "total" |
- name: "Wasserzähler Verbrauch heute" | - name: "Wasserzähler Verbrauch heute" | ||
unique_id: sensor.wasserzaehler_verbrauch_heute | unique_id: sensor.wasserzaehler_verbrauch_heute | ||
Zeile 370: | Zeile 416: | ||
payload_available: "Online" | payload_available: "Online" | ||
payload_not_available: "Offline" | payload_not_available: "Offline" | ||
- | device_class: water | + | device_class: monetary |
- | state_class: "total_increasing" | + | state_class: "total" |
- name: "Wasserzähler Verbrauch gestern" | - name: "Wasserzähler Verbrauch gestern" | ||
unique_id: sensor.wasserzaehler_verbrauch_gestern | unique_id: sensor.wasserzaehler_verbrauch_gestern | ||
Zeile 388: | Zeile 434: | ||
payload_available: "Online" | payload_available: "Online" | ||
payload_not_available: "Offline" | payload_not_available: "Offline" | ||
- | device_class: water | + | device_class: monetary |
- | state_class: "total_increasing" | + | state_class: "total" |
- name: "Wasserzähler Verbrauch vorgestern" | - name: "Wasserzähler Verbrauch vorgestern" | ||
unique_id: sensor.wasserzaehler_verbrauch_vorgestern | unique_id: sensor.wasserzaehler_verbrauch_vorgestern | ||
Zeile 406: | Zeile 452: | ||
payload_available: "Online" | payload_available: "Online" | ||
payload_not_available: "Offline" | payload_not_available: "Offline" | ||
- | device_class: water | + | device_class: monetary |
- | state_class: "total_increasing" | + | state_class: "total" |
</code> | </code> | ||
Zeile 416: | Zeile 462: | ||
**Energy-Board:** (Beispielhaft sind alle drei angebotenen Zähler dargestellt)\\ | **Energy-Board:** (Beispielhaft sind alle drei angebotenen Zähler dargestellt)\\ | ||
{{:public:ha-energy.jpg?400|}}\\ | {{:public:ha-energy.jpg?400|}}\\ | ||
- | ===== Neue TASMOTA Firmware für den MQTT Stromzähler ===== | + | ===== Neue TASMOTA Firmware für den MQTT-Wasserzähler ===== |
Neue TASMOTA Releases stehen zum Download unter folgendem Link zur Verfügung (Passwort = 10 stellige, aphanumerische Nummer auf dem Gerätelabel **"unterste Zeile"**)\\ | Neue TASMOTA Releases stehen zum Download unter folgendem Link zur Verfügung (Passwort = 10 stellige, aphanumerische Nummer auf dem Gerätelabel **"unterste Zeile"**)\\ | ||
[[https://nextcloud.gorjup.de/nextcloud/index.php/s/T4C9CWWrqWYA7rT|Download TASMOTA Releases für MQTT-Zähler]] | [[https://nextcloud.gorjup.de/nextcloud/index.php/s/T4C9CWWrqWYA7rT|Download TASMOTA Releases für MQTT-Zähler]] | ||
Zeile 422: | Zeile 468: | ||
Hier geht's zur STEP-BY-STEP Anleitung für das Neuflashen des Zähler: [[public:ESP-Flashen|STEP-BY-STEP-FLASHEN]]\\ | Hier geht's zur STEP-BY-STEP Anleitung für das Neuflashen des Zähler: [[public:ESP-Flashen|STEP-BY-STEP-FLASHEN]]\\ | ||
\\ | \\ | ||
+ | ===== Verwendung der APP für Smartphone/Tablet ===== | ||
+ | Man kann für Smartphones und Tablets auch die App **Tasmotrol** verwenden, mit der man alle seine Tasmota Geräte verwalten kann.\\ | ||
+ | Hier die Webseite: [[https://www.tasmotrol.com/de/]]\\ | ||
+ | \\ | ||
+ | Für ein Gerät ist Tasmotrol kostenlos, falls man mehrere Geräte verwalten möchte, muss man die Pro Version mit einmaligem Kauf erwerben. | ||
+ | \\ | ||
+ | Die App ist eigentlich selbsterklärend. Mit dem **+** Button fügt man ein neues Gerät hinzu, indem man entweder **Netzwerk durchsuchen** oder **Manuell hinzufügen** auswählt.\\ | ||
+ | Anschließend sieht das ganze in etwa so aus:\\ | ||
+ | \\ | ||
+ | {{:public:tasmotrol.jpg?400|}} | ||
===== Troubleshooting ===== | ===== Troubleshooting ===== | ||
- | === Es wurde eine Standard TASMOTA Firmware auf den MQTT-Stromzähler geflashed/geupdated === | + | === Es wurde eine Standard TASMOTA Firmware auf den MQTT-Wasserzähler geflashed/geupdated === |
Solange kein blank_1MB.bin Image geflashed wurde, sind die Einstellungen noch vorhanden, aber das Script funktioniert nicht mehr.\\ | Solange kein blank_1MB.bin Image geflashed wurde, sind die Einstellungen noch vorhanden, aber das Script funktioniert nicht mehr.\\ | ||
In diesem Fall muss zuerst die **tasmota-minimal_xxx.bin** Firmware und anschließend wieder die ** scripting_tasmota_xxx.bin** Firmware über das Webinterface geflashed werden. (Siehe "Neue TASMOTA Firmware für den MQTT Stromzähler").\\ | In diesem Fall muss zuerst die **tasmota-minimal_xxx.bin** Firmware und anschließend wieder die ** scripting_tasmota_xxx.bin** Firmware über das Webinterface geflashed werden. (Siehe "Neue TASMOTA Firmware für den MQTT Stromzähler").\\ | ||
Zeile 434: | Zeile 489: | ||
Im Zweifelsfall bitte den Deckel öffen, den D1 Wemos Mini heraus nehmen und nochmal das Kabel einstecken. Wenn er sich immer noch nicht meldet, scheint die TASMOTA Software nicht geflashed oder korrupt zu sein.\\ | Im Zweifelsfall bitte den Deckel öffen, den D1 Wemos Mini heraus nehmen und nochmal das Kabel einstecken. Wenn er sich immer noch nicht meldet, scheint die TASMOTA Software nicht geflashed oder korrupt zu sein.\\ | ||
Es kann auch sein, dass bei der WLAN Verbindung ein falsches Passwort eingegeben wurde und das Gerät jetzt permanent versucht sich mit falschem Passwort zu verbinden.\\ | Es kann auch sein, dass bei der WLAN Verbindung ein falsches Passwort eingegeben wurde und das Gerät jetzt permanent versucht sich mit falschem Passwort zu verbinden.\\ | ||
- | In diesem Fall muss das Gerät neu geflashed werden. Zuerst mit dem **blank_1MB.bin** und anschließend mit der **scripting_tasmota_xxx.bin**. (Siehe "Neue TASMOTA Firmware für den MQTT Wasserzähler").\\ | + | |
- | Danach muss eine komplette Neukonfiguration gemäß dieser Wiki Anleitung durchgeführt werden.\\ | + | In diesem Fall muss der Zähler auf Werkseinstellung gesetzt oder neu geflashed werden.\\ |
+ | **Um die Werkseinstellung ohne Webinterface zu aktivieren, muss man das USB-Kabel 6x hintereinander im Abstand von ca. 3 Sek. ein/aus stecken und beim 7. mal gesteckt lassen.**\\ | ||
+ | Dann meldet sich der Zähler mit tasmota-XXXXXX-XXXX und man kann wie oben in diesem Wiki beschrieben die Konfiguration händisch nachziehen.\\ | ||
+ | Sollte das nicht funktionieren, muss man das Gerät neu flashen.\\ | ||
+ | |||
+ | Um das Gerät neu zu flashen, muss es zuerst mit dem **blank_1MB.bin** und anschließend mit der **scripting_tasmota_xxx.bin** geflashed werden. (Siehe [[http://wiki.gorjup.de/doku.php?id=public:gaszaehler#neue_tasmota_firmware_fuer_den_mqtt_gaszaehler|Download TASMOTA Release]]).\\ | ||
+ | Danach muss ebenso eine komplette Neukonfiguration gemäß dieser Wiki Anleitung durchgeführt werden.\\ | ||
\\ | \\ | ||
Hier geht's zur STEP-BY-STEP Anleitung für das Neuflashen des Zähler: [[public:ESP-Flashen|STEP-BY-STEP-FLASHEN]]\\ | Hier geht's zur STEP-BY-STEP Anleitung für das Neuflashen des Zähler: [[public:ESP-Flashen|STEP-BY-STEP-FLASHEN]]\\ | ||
Zeile 445: | Zeile 506: | ||
\\ | \\ | ||
\\ | \\ | ||
+ | === Seit HomeAssistant Update 2025.3.1 werden Fehler in MQTT angzeigt === | ||
+ | {{:public:mqtt_ungueltig.jpg?600|}} | ||
+ | |||
+ | HomeAssistant hat mit dem Release 2025.3.1 die **device_class** und **unit_of_measurement** Einstellungen verschäft. | ||
+ | Somit ist z.B. die Kombination aus "water" + "EUR" nicht mehr zulässig. In obigem Script sind die **device_class** Werte beeits korrigiert. Bitte diese entsprechend im File Editor ändern.\\ | ||
+ | Aus **water** wird z.B. **monetary**. | ||
+ | \\ | ||