Gaszähler auslesen ohne Home Assistant: Unseren Bausatz aus Reedkontakt, Gehäuse und ESP32-C3 gibt es jetzt auch mit fertiger MQTT-Firmware. Damit liest du deinen BK-Gaszähler, zum Beispiel den verbreiteten BK-G4 oder BK-G4 MT, in openHAB, ioBroker, Node-RED oder FHEM aus. Du installierst die Firmware mit einem Klick im Browser und trägst deinen MQTT-Broker auf der Webseite des Geräts ein. Programmieren oder YAML brauchst du nicht.
Was kann die MQTT-Version?
Die MQTT-Version misst genau dasselbe wie unsere ESPHome-Firmware für Home Assistant: Zählerstand, Durchfluss und den Verbrauch von heute, gestern, im Monat und im Jahr. Statt an Home Assistant schickt der ESP32-C3 die Werte an deinen MQTT-Broker, zum Beispiel Mosquitto. Dein Smart-Home-System liest sie dort ab.
| Home-Assistant-Version | MQTT-Version | |
|---|---|---|
| Für | Home Assistant | openHAB, ioBroker, Node-RED, FHEM und alle Systeme mit MQTT |
| Installation | Web-Installer im Browser | Web-Installer im Browser |
| Einrichtung | Home Assistant findet das Gerät automatisch | Broker auf der Webseite des Geräts eintragen |
| Einbindung | ESPHome-Integration | MQTT-Discovery, z. B. im openHAB-Eingang |
| Schutz | verschlüsselte Verbindung zu Home Assistant | Passwort für die Webseite, Einstellungen nur kurz nach dem Einstecken |
| Updates | mit einem Klick in Home Assistant | mit einem Klick auf der Webseite des Geräts |
Die Hardware ist bei beiden Versionen dieselbe. Du entscheidest erst beim Installieren, welche Firmware auf deinen ESP32-C3 kommt, und kannst später jederzeit wechseln.
So liest der ESP32 deinen Gaszähler aus
Ein Magnet in der letzten Zählrolle deines BK-Gaszählers schaltet bei jeder Umdrehung den Reedkontakt. Der ESP32-C3 zählt diese Impulse und rechnet sie in Kubikmeter um. Der Sensor wird nur von außen angebracht, der Gaszähler bleibt unberührt. Er passt an Honeywell/Elster-, Kromschröder- und Pipersberg-Zähler von BK-G1,6 bis BK-G25, also auch an den BK-G4 und BK-G4 MT, sofern die letzte Zählrolle einen Impulsmagneten hat. Du erkennst ihn am Typenschild, z. B. „1 imp ≙ 0,01 m³“.
Was du brauchst
- Unseren Bausatz mit ESP32-C3 für BK-Gaszähler: Gehäuse mit vormontiertem Reedkontakt, Waveshare ESP32-C3 Mini, Befestigungsschraube und Kurzanleitung
- USB-C-Kabel und USB-Netzteil mit 5 V
- Lötkolben für zwei Lötstellen
- Computer mit Google Chrome oder Microsoft Edge
- WLAN im 2,4-GHz-Band am Gaszähler
- einen MQTT-Broker mit Benutzername und Passwort, zum Beispiel Mosquitto
Schritt für Schritt: Gaszähler BK-G4 per MQTT auslesen
1. Reedkontakt anlöten
Die beiden Adern kommen an GPIO4 und GND des ESP32-C3, die Polung ist egal. Das ist dieselbe Belegung wie bei der Home-Assistant-Version.
2. MQTT-Firmware per Web-Installer aufspielen
- Die BOOT-Taste am ESP32-C3 gedrückt halten und das USB-C-Kabel am Computer einstecken.
- Den Web-Installer öffnen: ng3d-druck.github.io/Gas-Connect-DIY
- Im Abschnitt „MQTT-Version“ auf MQTT-Version installieren klicken und den Port auswählen. Nach rund einer Minute ist die Installation fertig.
- Das Kabel kurz abziehen und ohne BOOT-Taste wieder einstecken.
Lieber ohne Browser? Auf derselben Seite gibt es die Firmware auch zum Herunterladen, zum Beispiel für das Programm ESP-Flasher.
3. WLAN einrichten
Direkt im Web-Installer über Configure Wi-Fi oder über den Hotspot gas-connect-diy-mqtt-xxxxxx des Geräts. Aus Sicherheitsgründen ist das nur in den ersten 15 Minuten nach dem Einstecken möglich. Danach einfach kurz ab- und wieder anstecken.
4. Broker auf der Webseite des Geräts eintragen
Öffne http://gas-connect-diy-mqtt-xxxxxx.local oder die IP-Adresse des Geräts aus deinem Router. Im Bereich Setup trägst du ein:
- MQTT broker, MQTT port, MQTT username und MQTT password deines Brokers
- ein Web page password mit mindestens 8 Zeichen. Es ist Pflicht und schützt die Webseite vor anderen in deinem Netz.
- optional einen eigenen Hostname, zum Beispiel
gaszaehler
Dann klickst du bei Save and restart auf PRESS. Das Gerät startet neu, und MQTT status zeigt nach wenigen Sekunden Connected. Stimmt etwas nicht, steht dort der Grund, zum Beispiel „Not authorized: check username and password“.
Die Webseite des Geräts mit Beispielwerten
Gut zu wissen: Die Einstellungen im Bereich Setup lassen sich nur in den ersten 15 Minuten nach dem Einstecken ändern. So kann niemand aus deinem Netz heimlich den Broker umstellen. Willst du später etwas ändern, steck das Gerät kurz ab und wieder an.
5. Zähler einstellen
Stell Pulse volume laut Typenschild ein, meist 0,01 m³. Dann trägst du unter Set meter reading deinen aktuellen Zählerstand ein, so wie er auf dem Zähler steht. Beides geht jederzeit, auf der Webseite oder per MQTT.
Gaszähler in openHAB einbinden
Das Gerät meldet alle Werte per MQTT-Discovery an. openHAB legt sie damit automatisch an:
- Unter Einstellungen → Add-ons das MQTT Binding installieren.
- Deinen Broker als Thing MQTT Broker anlegen.
- Das Gerät erscheint im Eingang als Gas Connect DIY MQTT. Hinzufügen und die Kanäle mit Items verknüpfen, fertig.
Beispielansicht: das Gerät als Thing in openHAB
ioBroker, Node-RED und FHEM
Alle anderen Systeme abonnieren einfach die Topics des Geräts, zum Beispiel mit dem ioBroker-Adapter MQTT Broker/Client oder einem MQTT-in-Knoten in Node-RED. Die wichtigsten:
| Topic | Inhalt |
|---|---|
gas-connect-diy-mqtt-xxxxxx/sensor/gas_meter_reading/state |
Zählerstand in m³ |
gas-connect-diy-mqtt-xxxxxx/sensor/gas_flow/state |
Durchfluss in m³/h |
gas-connect-diy-mqtt-xxxxxx/sensor/gas_today/state |
Verbrauch heute in m³ |
gas-connect-diy-mqtt-xxxxxx/status |
online oder offline
|
gas-connect-diy-mqtt-xxxxxx/number/set_meter_reading/command |
hierhin den Zählerstand schicken, z. B. 1631.29
|
Die Endung xxxxxx sind die letzten Stellen der MAC-Adresse. Auch wenn du einen eigenen Hostnamen festlegst, behalten die Topics diesen Namen. So bleibt deine Einbindung beim Umbenennen erhalten.
Tipps aus der Praxis
- MQTT status zeigt „Broker not found“? Trag statt des Namens die IP-Adresse des Brokers ein.
- Webseite unter .local nicht erreichbar? Nimm die IP-Adresse aus deinem Router.
- Ein Impuls wird doppelt gezählt? Debounce time erhöhen, z. B. auf 200 ms.
- Verbrauch um Faktor 10 falsch? Pulse volume mit dem Typenschild vergleichen. BK-G10 bis G25 zählen oft 0,1 m³ pro Impuls.
- Kubikmeter in kWh: m³ × Brennwert × Zustandszahl von deiner Gasrechnung, typischerweise rund 10 kWh pro m³.
Alle Einstellungen, Meldungen und Topics findest du in der Kurzanleitung zur MQTT-Version. Die Firmware ist quelloffen, den Quellcode gibt es auf GitHub.
Sicherheit geht vor
- Nur in trockenen Innenräumen verwenden, nicht in explosionsgefährdeten Bereichen.
- Keine Manipulation am Gaszähler vornehmen: nicht öffnen und keine Plomben beschädigen.
- Bei Gasgeruch keine elektrischen Geräte bedienen, das Gebäude verlassen und von draußen den Notdienst deines Gasversorgers anrufen.
- Für die Abrechnung gilt allein die Anzeige des Gaszählers.
Jetzt loslegen
So machst du deinen Gaszähler smart, auch ohne Home Assistant: Mit dem Bausatz und der fertigen MQTT-Firmware ist dein BK-G4 an einem Nachmittag in openHAB, ioBroker oder Node-RED, ganz ohne Programmieren. Im Bausatz steckt alles, was du dafür brauchst. Nur USB-C-Kabel und Netzteil fehlen.