Hi, ich hab mal wieder eine Idee und wollte mal fragen, ob das schon einer umgesetzt hat. Auf einer Webseite hab ich die Anleitung dafür gefunden und muss erst mal sehen wie das mit einem ESP so funktioniert. Der Sensor der verwendet wird ist dieser hier:

Die Wasseruhr die bei mir eingebaut ist, ist diese:

Also nicht besonderes. Auf der Seite, die auch auf den Fotos ist sieht das eigentlich ganz einfach aus. Auf einer anderen Seite hab ich sogar was gefunden, wo das mit einem Aqara Fenterkontakt funktionieren soll. Getestet hab ich beides noch nicht. Die Alternative für meinen Zähler wäre das Aufsatzmodul mit potentialfreiem Kontakt von Diehl, ist halt ein wenig teuer für ein Experiment. Vielleicht hat ja schon jemand einige Erfahrungen mit den verschiedenen Teilen gemacht und möchte das teilen.
Schau Die mal den Digitizer an Zähhler mit einer esp32cam Modul.
Funktioniert zuverlässig und besser als impulse Zählen.
Es gibt auch einen Tread in diesem Forum musst Du mal Suchen.
Gruss
Danke für die Hinweise, aber die ganze Sache mit Kameramodul und so ist doch sehr schwierig mit der richtigen Ausrichtung. Ich weis auch noch nicht was die demnächst für eine Wasseruhr einbauen. Wenn es der gleiche Typ bleibt, wäre es einfach, da gibt es von Diehl ein Modul was auf den Zähler aufgesetzt wird und da wird auch nur der Impuls gezählt. Mal abwarten.
Das mit der Auslesung per Kamera dürfte ein wenig problematisch werden, denn der Kreis der sich dreht bei der Wasserabnahme, hat eine Lupe und die überdeckt das rechte Feld.
Das ist mein originaler Zähler und da sieht man das es wohl kritisch werden könnte. Vielleicht hat hier ja jemand den gleichen Zähler und hat damit ERfahrung ob es funktioniert oder nicht.
Die Halterung ist nicht das Problem, ich hab einen 3D Drucker, damit kann ich mir dann schon das passende drucken, oder auch noch selbst erstellen.
Hab das genau wie oben beschrieben im Einsatz. Also ESP mit induktivem Sensor als Impulszähler. Einfache Installation und läuft ohne Probleme. Bin zufrieden. ![]()
Genau ( Cyble Sensor V2), das ist die am besten funktionierende Methode einen sauberen Zählimpuls zu bekommen, so habe ich das auch hier gemacht, gezählt wird der Impuls dann mit einem ShellyPlusUni, läuft hervorragend und auf den Liter genau ![]()
Das mit dem Gaszähler hab ich schon länger laufen, allerdings mit einem Aqara Kontakt und einem gedrucktem Teil für die genaue Positionierung.
Den Pulsgeber von Diehl, wollte ich auch schon verwenden. Da gibt es einen der nur die 2 Leitungen für den potentialfreien Kontakt hat. Den kann man im Ausland so für ca. 60,- € kaufen. Aber vielleicht probier ich es doch mit der Selbstauvariante, muss halt nur wieder da Strom hinbekommen. Den passenden Halter hab ich mir schon mal gedruckt.
Heir noch ein Link wo man den günstig bekommt:
https://www.sklep.witpol.com.pl/pl/p/Impulsator-Izar-Pulse-do-wodomierza-Diehl%2C-Altair/6440
Ich persönlich hab mit so einem Sensor nur gute Erfahrungen gemacht.
Mit AI on the edge wiederum hatte ich nur schlechte Erfahrungen und kann dir nicht dazu raten. Ich hab damit einige Tage, wenn nicht sogar Wochen verbraten und kein zufriedenstellendes Ergebnis bekommen…
Das ist halt sehr von den Bedingungen abhängig.
Ich hab jetzt schon ein paar Jahre einen Proximity Sensor fürs Wasser im Einsatz und der funktioniert einwandfrei.
Zudem ist der auch deutlich einfacher zu installieren. Ich hab den einfach mit doppelseitigem Klebeband an die richtige Stelle auf dem Zähler geklebt.
Ich hab damals keinen Sensor gefunden, der mit 5V funktioniert. Hab deshalb halt noch nen step-up converter benötigt.
Hallo,
wir haben zu Hause einen etwas anderen Zähler.
Dieser hat anscheinend schon eine Halterung für einen Aufsatz. Ich weiß nur nicht welcher dass ist und ob man diesen in HA einbinden kann.
Hat jemand ne Idee?
Danke ![]()
EDIT:
Ich glaube, dass das die dafür vorgesehenen Aufsätze sind.
https://de.itron.com/de/categories/water-meters-modules
Hab nur keine Ahnung welcher der richtige ist ?!?
Dann gibt es wohl noch diesen
Diehl hat dafür einen passenden Aufsatz: IZAR MBUS COMPACT i | Diehl Metering
ansonsten kannst du den Impuls auch mit einem eigenen Sensor abfragen, hier findest du ein paar Beispiele: Erfassung mechanischer Wasserzähler (induktiver Sensor + ESP8266 )
Ich glaube der hier schon mal besprochen wurde funktioniert dafür. Ich verwende den auch.
https://community.simon42.com/t/analoge-strom-gas-wasserzaehler-mit-ai-on-the-edge-home-assistant-digitalisieren/4140/35
läuft bei mir schon sehr lange ohne Abweichungen.
Genau der mit HomeWizzard ist der der ohne Probleme sich in HA integrieren lässt.
Ich verwende als Impulsgeber einen Näherungssensor (M18 8mm DC 5V NPN LJ18A3-8-Z/BX-5V) in Kombination mit einem ESP32 Supermini. Da der Näherungssensor mit 5 Volt betrieben wird, habe ich eine Schutzschaltung mit einer Diode eingebaut. Zusätzlich habe ich den verwendeten GPIO5 des ESP32 mit einem 33-kOhm-Widerstand auf die 3,3-Volt-Spannung gezogen.
Den ESP32 habe ich in ESPHome als Wasserzähler konfiguriert, was bei mir einwandfrei funktioniert. Anfangs habe ich versucht, den Sensor mit der Konfiguration - platform: pulse_counter zu betreiben. Dies erwies sich jedoch als nicht zuverlässig, weshalb ich nun - platform: gpio verwende. Nach einer Laufzeit von etwa sechs Wochen konnte ich keine Abweichungen zwischen meiner Messung und dem Zählerstand
Anbei meine Konfiguration:
ohne Display
```substitutions:
devicename: "smart-wasserzahler"
long_devicename: "Smart Wasserzähler"
pcb_version: "2024-12-19"
esphome:
name: "${devicename}"
name_add_mac_suffix: false
comment: "${long_devicename} ${pcb_version}"
platformio_options:
board_build.flash_mode: dio
esp32:
board: esp32-c3-devkitm-1
variant: ESP32C3
framework:
type: esp-idf
# Aktiviert das Loggen
logger:
# Aktiviert die Home Assistant API
api:
encryption:
key: "="
services:
- service: set_total_pulses
variables:
new_value: int
then:
- lambda: |-
id(total_pulses) = new_value;
ESP_LOGD("Service", "Neuer Zählerstand: %d", id(total_pulses));
# Ermöglicht OTA-Updates
ota:
- platform: esphome
password: ""
# WLAN-Konfiguration
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Optional manuelle IP
manual_ip:
static_ip:
gateway:
subnet: 255.255.255.0
reboot_timeout: 0s # Neustart warten, wenn kein WLAN, 0s ist ausgeschaltet
ap:
ssid: "${long_devicename} hotspot"
password: ""
# Webserver hinzufügen
web_server:
port: 80
# Fallback-Hotspot für Konfigurationsfehler
captive_portal:
globals:
- id: total_pulses
type: int
restore_value: false # Speichern im Flash deaktiviert, wenn nicht notwendig
initial_value: '298' # Startwert des Zählers (Ganzzahl)
- id: imp_ratio
type: float
restore_value: false # Keine Notwendigkeit, die Impulsrate zu speichern
initial_value: '0.001' # Impulsrate vom Wasserzähler (0.001 Liter pro Impuls)
binary_sensor:
- platform: gpio
id: internal_pulse_counter
pin:
number: GPIO5
# mode: INPUT_PULLUP # GPIO5 als Eingang mit Pullup-Widerstand, ohne mode-Attribut, wird standardmäßig der Pin als reiner Eingang ohne Pullup- oder Pulldown-Widerstand konfiguriert.
inverted: true # Signal invertieren test 21.12.2024
name: "Impuls"
# Diese Filter sorgen dafür, dass der Sensor zuverlässig arbeitet und nur gültige Impulse erkennt
filters:
- delayed_on: 100ms # Test mit 100ms Debouncing, der Impuls muss mindestens 50ms dauern, um als gültig zu zählen
- delayed_off: 400ms # Test mit 500ms Nach dem Impuls muss eine Pause von mindestens 100ms folgen
on_press:
then:
- lambda: 'id(total_pulses) += 1; ESP_LOGD("Wasserzähler", "Aktueller Zählerstand: %d", id(total_pulses));'
- switch.turn_on: status_led # Schaltet die LED ein, wenn ein Impuls empfangen wird
- delay: 200ms # LED bleibt 200ms an
- switch.turn_off: status_led # Schaltet die LED wieder aus
# Status-LED auf GPIO8
switch:
- platform: gpio
id: status_led
name: "Status LED"
pin: GPIO8
inverted: true # true Umgekehrte Logik: Ein (LOW) bedeutet "an", aus (HIGH) bedeutet "aus"
# Sensoren
sensor:
# Uptime-Sensor (Betriebszeit)
- platform: uptime
name: "${long_devicename} Betriebszeit"
id: uptime_seconds
update_interval: 30s
# WLAN-Signalstärke
- platform: wifi_signal
name: "${long_devicename} WLAN-Signal"
update_interval: 60s
# Sensor für Wasserverbrauch
- platform: template
name: "Wasserverbrauch"
id: wasser_verbrauch_liter
device_class: water
unit_of_measurement: "Liter"
state_class: "total_increasing"
icon: "mdi:water"
accuracy_decimals: 0
lambda: |-
return id(total_pulses);
# Berechnung in Litern (Anzahl der Impulse)
- platform: template
name: "Wasserverbrauch gesamt"
id: wasser_verbrauch_total
device_class: energy
unit_of_measurement: "m³"
state_class: "total_increasing"
icon: "mdi:water"
accuracy_decimals: 3
lambda: |-
return id(total_pulses) * id(imp_ratio);
# Umrechnung von Litern zu m³
Hallo DST73, stellst Du uns bitte noch Deinen Code der zusätzlichen Sensoren zur Verfügung? Plane ebenfalls die Anschaffung dieses Zählers.
Danke schon mal.
Ich habe hier nur unter “Helfer” verschiedene Template-Sensoren erstellt.
Für den Gesamtwasserverbrauch habe ich einen Template-Sensor
{% set zaehler = states('sensor.hw_watermeter_1997fa_total_water_usage') | float(0) %}
{% set offset = states('input_text.hw_watermeter_1997fa_zaehler_kalibrieren') | float(0) %}
{{ '{:.3f}'.format(zaehler + offset) }}
Für täglich, je Monat,… habe ich
{{
states('sensor.hw_watermeter_1997fa_wasser_verbrauch_in_m3_taglich') | float(default=0.0) | multiply(1000) | round(0)
}}
Wobei halt der
sensor.hw_watermeter_1997fa_wasser_verbrauch_in_m3_taglich
ein Verbrauchzähler ist mit Zyklus “täglich”
Ich habe nur einen Template-Sensor in der configuration.yml aber den hatte man auch über die “Helfer” machen können
- name: Wasser Preis
unique_id: hw_watermeter_1997fa_wasser_preis
unit_of_measurement: "{currency}/m³"
icon: "mdi:currency-eur"
device_class: monetary
state: >-
{% set preis = states('input_text.hw_watermeter_1997fa_preis') | float(0.00) %}
{{ '{:.3f}'.format(preis) }}
Danke ![]()
Bin noch relativ neu in HA, muss mich also noch einlesen, was Helper betrifft.
Hi zusammen,
auch ich muss mich hier mal bezüglich Wasserzähler schlau machen.
Ich bin ganz frisch seit einem Monat dabei und kämpfe mich wirklich ohne jegliche Programmierkenntnis so durch. Einiges klappt schon, aber das Wasserzähler bringt mich an Grenzen.
Ich möchte aktuell das ganze Thema ESP bei mir noch ausklammern, dafür bin ich wirklich noch nicht bereit. Leider ist bei meinem analogen Wasserzähler aber kein HomeWizzard Watermeter möglich. Habe extra ein Bild von meiner Wasseruhr an sie gesendet und er ist leider nicht kompatibel.
Gibt es irgendwie noch eine andere, von mir aus auch teure Lösung, an die Wassermengen zu kommen? Meine Wasseruhr ist eine Zenner MNK (Bild siehe Anhang).
Meinen Gaszähler habe ich übrigens erfolgreich mit Aqara Türkontakt ausgelesen bekommen. Es gibt auch ein Video, mit eigentlich ähnlicher Wasseruhr, aber irgendwie passt es nicht gut genug da rein um den Kontakt auszulösen.
Bin über jegliche Hilfe dankbar ![]()
LG Manuel
In dem Video wird es (leider nur kurz und nicht sehr ausführlich) erklärt und gezeigt, wie es mit einem Türkontakt gehen könnte:
okay, Video geht irgendwie nicht - ist von " Cryd" - Wasser und Energy Zähler mit Preisentitäten im Homeassistant!
Hallo
Hilft das weiter ?
Grüße
Fantastisch. Danke. Das passt ja wirklich genau zu meinem Thema, auch wenn ich noch gar keine Erfahrung mit Shellys oder der Verkabelung habe.
Da es ja scheinbar wirklich einfach über ein Reedkontakt Signal geht wurmt es mich noch mehr, dass ich es dieses mal nicht mit dem Aqara Fensterkontakt zum Laufen bekomme. Hat so schön funktioniert mit dem Gaszähler.
Die Variante aus dem Link ist ja teurer und ich hab den Aqara Kontakt schon auseinandergebaut, aber naja. Man lernt schmerzhaft und langsam dazu ![]()








