Mit einem Home Assistant Gaszähler behältst du deinen Verbrauch im Blick und kannst ihn im Energie-Dashboard auswerten. Eine Möglichkeit dafür ist ein ESP32-Board mit ESPHome und einem Sensor, der Bewegungen am Gaszähler erkennt. Ob das funktioniert, hängt allerdings vom jeweiligen Zählermodell ab: Nicht jeder Gaszähler gibt ein Signal aus, das sich von außen erfassen lässt.

In dieser Anleitung erfährst du, welche Messverfahren infrage kommen, wie du dein ESP32-S3-Board vorbereitest und den erfassten Verbrauch in Home Assistant einbindest.

Werbung / Affiliate-Links: Die mit einem Sternchen (*) gekennzeichneten Links sind Amazon-Partnerlinks. Wenn du darüber etwas kaufst, erhalte ich möglicherweise eine Provision. Für dich entstehen dadurch keine zusätzlichen Kosten. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.

Home Assistant Gaszähler: Welches Messverfahren passt?

Bevor du Hardware bestellst, wirf einen Blick auf deinen Gaszähler. Achte darauf, ob er einen Anschluss für einen Impulsgeber, einen sichtbaren Magneten oder eine gut erkennbare Anzeige besitzt. Öffne den Zähler nicht und entferne keine Plomben. Die Erfassung muss von außen erfolgen.

  • Impulsausgang oder vorgesehener Sensorplatz: Wenn dein Zähler einen geeigneten Anschluss oder eine Aussparung für einen Impulsgeber hat, kannst du dort einen passenden Sensor anbringen. Prüfe die Angaben des Zählerherstellers.
  • Magnetische Bewegung: Bei manchen mechanischen Gaszählern lässt sich die Bewegung mit einem Magnetfeldsensor erkennen. Ein einfacher Hall-Sensor funktioniert nicht bei jedem Modell; ein Magnetometer kann bei einem schwachen Magnetfeld besser geeignet sein.
  • Anzeige ablesen: Wenn sich weder Impulse noch ein Magnetfeld zuverlässig erfassen lassen, kann eine Kamera mit einem Projekt wie „AI on the edge“ die Ziffern des Zählers auslesen.

Home Assistant beschreibt diese Möglichkeiten in der Dokumentation zum Gasverbrauch. Prüfe die Methode an deinem Zähler, bevor du das Gerät dauerhaft montierst.

Diese Hardware brauchst du

Für den hier gezeigten Aufbau mit ESPHome benötigst du ein ESP32-Board, einen passenden Sensor, Verbindungskabel und ein USB-Netzteil. Das Board sollte in Reichweite deines WLANs sein. Der ESP32-S3 nutzt WLAN im 2,4-GHz-Band.

  • ESP32-S3-Board: Du hast das ESP32-S3-DevKitC-1 mit WROOM-1-N16R8 ausgewählt. * ESP32-S3-DevKitC-1 WROOM-1-N16R8 bei Amazon ansehen.
  • Einfacher Hall-Sensor: Ein KY-003-Modul mit A3144 kann Magnetbewegungen als digitales Signal ausgeben. * KY-003 Hall-Sensor bei Amazon ansehen. Ob die Empfindlichkeit für deinen Zähler ausreicht, musst du vor Ort testen.
  • Magnetometer als Alternative: Ein QMC5883L-Modul kann bei schwachen Magnetfeldern einen Versuch wert sein. * QMC5883L-Magnetometer bei Amazon ansehen. Achte bei solchen Modulen auf den tatsächlich verbauten Chip und die zulässige Versorgungsspannung.
  • Verbindungskabel: Für einen ersten Test eignet sich ein Dupont-Kabelsatz mit passenden Buchsen. * Dupont-Jumper-Kabelsatz bei Amazon ansehen.
  • USB-Kabel und Netzteil: Verwende ein USB-Kabel, das Daten übertragen kann, wenn du die Firmware über USB installieren möchtest. Für den späteren Betrieb brauchst du eine passende USB-Stromversorgung.

Der ESP32 arbeitet an seinen GPIO-Eingängen mit 3,3 Volt und ist nicht für 5-Volt-Signale ausgelegt. Versorge den KY-003 beim Anschluss an den ESP32 deshalb mit 3,3 Volt. Schließe kein Sensorsignal an, das mehr als 3,3 Volt ausgeben kann. Lies außerdem die Pin-Beschriftung des jeweiligen Moduls, bevor du es anschließt.

Wenn du noch weitere Komponenten für dein Smart Home suchst, findest du passende Hinweise im Beitrag Home Assistant Hardware und Zusatzgeräte richtig auswählen.

ESP32-S3 und Sensor verbinden

Für einen ersten Funktionstest mit dem KY-003 verbindest du die Anschlüsse des Moduls mit dem ESP32. Die Beschriftung kann je nach Hersteller unterschiedlich sein. Häufig stehen auf dem Sensor die Kürzel „VCC“, „GND“ und „DO“ oder „S“.

  • VCC oder + an den 3V3-Pin des ESP32
  • GND oder − an GND
  • DO oder S an GPIO4

GPIO4 ist auf dem ESP32-S3-DevKitC-1 herausgeführt. Bei einem Board eines anderen Herstellers solltest du die Beschriftung und Pinbelegung des konkreten Boards prüfen. Befestige den Sensor zunächst nur provisorisch außen am Zähler. Verschiebe ihn langsam und beobachte, ob das Sensormodul oder Home Assistant eine Änderung erkennt.

Erkennst du trotz verschiedener Positionen keinen Impuls, ist das nicht unbedingt ein Fehler am ESP32. Der Magnet im Zähler kann zu schwach oder zu weit vom Sensor entfernt sein. In diesem Fall probiere ein geeignetes Magnetometer oder ein kamerabasiertes Verfahren, statt den Zähler zu öffnen.

ESPHome auf dem ESP32-S3 einrichten

Installiere ESPHome über den ESPHome Device Builder in Home Assistant oder verwende ein separates ESPHome-Dashboard. Lege dort ein neues Gerät an und verbinde das Board zunächst per USB mit deinem Rechner. Das folgende Beispiel ist für das ESP32-S3-Board mit 16 MB Flash ausgelegt.

Der Zählerstand pro Impuls ist von deinem Gaszähler abhängig. Im Beispiel wird angenommen, dass ein Impuls 0,01 m³ entspricht. Prüfe den Wert auf dem Zähler oder in dessen Dokumentation und ändere den Multiplikator bei Bedarf.

esphome:
  name: gaszaehler
  friendly_name: Gaszähler

esp32:
  variant: esp32s3
  flash_size: 16MB
  framework:
    type: esp-idf

logger:

api:

ota:
  - platform: esphome

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

sensor:
  - platform: pulse_counter
    name: "Gaszähler Impulsrate"
    pin:
      number: GPIO4
      inverted: true
      mode:
        input: true
        pullup: true
    use_pcnt: false
    internal_filter: 50ms
    update_interval: 60s
    count_mode:
      rising_edge: DISABLE
      falling_edge: INCREMENT
    total:
      name: "Gasverbrauch gesamt"
      unit_of_measurement: "m³"
      device_class: gas
      state_class: total_increasing
      accuracy_decimals: 2
      filters:
        - multiply: 0.01

Die Einstellung inverted: true passt zu einem Signal, das im Ruhezustand hoch und beim erkannten Magneten niedrig ist. Reagiert dein Sensor andersherum, muss die Eingangslogik angepasst werden. Die Filterzeit hilft, sehr kurze Störsignale zu ignorieren. Wenn dadurch echte Impulse verloren gehen, reduziere sie oder entferne sie nach einem Funktionstest.

Nach dem ersten Start verbindet sich das Gerät mit dem WLAN und erscheint normalerweise als ESPHome-Gerät in Home Assistant. Falls es nicht automatisch gefunden wird, öffne in Home Assistant Einstellungen → Geräte & Dienste und füge die ESPHome-Integration hinzu.

Verbrauch im Home Assistant Energie-Dashboard anzeigen

Der Sensor „Gasverbrauch gesamt“ liefert einen kumulierten Verbrauch in Kubikmetern. Die Attribute device_class: gas und state_class: total_increasing machen ihn für die Gasauswertung im Energie-Dashboard geeignet. Home Assistant akzeptiert Gas-Sensoren mit der Geräteklasse „gas“ und einer passenden Zählerstandsklasse.

  1. Öffne in Home Assistant das Energie-Dashboard.
  2. Wähle die Konfiguration über das Zahnrad oder den Konfigurationsdialog.
  3. Füge unter Gasverbrauch die Entität „Gasverbrauch gesamt“ hinzu.
  4. Prüfe nach den ersten erfassten Impulsen, ob der Verbrauch plausibel ansteigt.

Falls die Entität nicht zur Auswahl steht, öffne Einstellungen → Entwicklerwerkzeuge → Zustände und kontrolliere Einheit, Geräteklasse und Zustandsklasse. Home Assistant führt weitere Hinweise in der FAQ zum Energie-Dashboard auf.

Die Anzeige in m³ ist der gemessene Gasverbrauch. Die Umrechnung in Kilowattstunden hängt unter anderem von den Angaben deines Versorgers ab. Verwende für Abrechnungsvergleiche daher die Werte auf deiner Gasrechnung.

Gaszähler und ESP32 zuverlässig testen

Prüfe den Aufbau in einzelnen Schritten, bevor du ihn fest montierst:

  • Kontrolliere, ob ESPHome das Board online anzeigt.
  • Bewege den Sensor an verschiedene Stellen am Gaszähler und beobachte, ob der Impulszähler reagiert.
  • Vergleiche mehrere erkannte Impulse mit der Anzeige oder der Impulsangabe deines Zählers.
  • Starte den ESP32 neu und beobachte, ob Home Assistant den Verbrauch weiterhin plausibel in der Statistik führt.
  • Befestige den Sensor erst dauerhaft, wenn die Erkennung zuverlässig funktioniert.

Ein Impulswert von 0,01 m³ ist nicht bei jedem Zähler gleich. Stimmt der angezeigte Verbrauch nicht, prüfe zuerst die Impulsmenge und den Multiplikator in der ESPHome-Konfiguration. Setze den Sensor nicht direkt auf eine Stelle, an der er den Zählermechanismus behindert.

Häufige Fragen zum Home Assistant Gaszähler

Funktioniert der ESP32-S3 mit ESPHome?

Ja. ESPHome unterstützt die ESP32-S3-Variante. Im Beispiel werden variant: esp32s3 und flash_size: 16MB verwendet. Prüfe bei einem Nachbau trotzdem die Angaben des Board-Herstellers und die Pin-Beschriftung.

Kann ich jeden Gaszähler mit einem Hall-Sensor auslesen?

Nein. Ein Hall-Sensor funktioniert nur, wenn sich ein ausreichend starkes Magnetfeld in einer geeigneten Position erkennen lässt. Bei manchen Zählern ist das Signal zu schwach. Ein Magnetometer oder eine Kamera kann dann eine passendere Lösung sein.

Was mache ich, wenn der Sensor keine Impulse erkennt?

Teste zuerst mehrere Positionen und kontrolliere die Verdrahtung sowie die Signalspannung. Prüfe auch, ob die Zählerbewegung tatsächlich ein magnetisches Signal erzeugt. Wenn der KY-003 nicht empfindlich genug ist, probiere ein unterstütztes Magnetometer oder eine optische Erkennung.

Wo finde ich weitere Home-Assistant-Anleitungen?

Weitere Beiträge gibt es in der Kategorie Home Assistant. Für den Einstieg eignet sich außerdem der Guide zu den ersten Schritten nach der Home-Assistant-Installation.