{"id":15020626,"url":"https://github.com/zibous/ha-watermeter","last_synced_at":"2025-04-04T07:05:27.496Z","repository":{"id":45950051,"uuid":"279882991","full_name":"zibous/ha-watermeter","owner":"zibous","description":"Data provider for smartmeter watermeter.","archived":false,"fork":false,"pushed_at":"2024-11-29T15:29:21.000Z","size":18787,"stargazers_count":211,"open_issues_count":0,"forks_count":31,"subscribers_count":19,"default_branch":"master","last_synced_at":"2025-03-28T06:04:59.043Z","etag":null,"topics":["esp32","esphome","home-assistant","izar","mbus","mqtt","raspberry-pi-3","rtl-sdr","rtl-wmbus","watermeter","wmbus-dongle","wmbusmeters"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zibous.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-15T13:57:54.000Z","updated_at":"2025-03-21T14:08:30.000Z","dependencies_parsed_at":"2025-02-15T03:10:43.045Z","dependency_job_id":"7e4da471-ff86-4f67-a668-1f012b2b3abf","html_url":"https://github.com/zibous/ha-watermeter","commit_stats":{"total_commits":197,"total_committers":3,"mean_commits":65.66666666666667,"dds":"0.010152284263959421","last_synced_commit":"d314325b668a160ceeb77b6876143033fa778f3a"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zibous%2Fha-watermeter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zibous%2Fha-watermeter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zibous%2Fha-watermeter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zibous%2Fha-watermeter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zibous","download_url":"https://codeload.github.com/zibous/ha-watermeter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247135141,"owners_count":20889420,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["esp32","esphome","home-assistant","izar","mbus","mqtt","raspberry-pi-3","rtl-sdr","rtl-wmbus","watermeter","wmbus-dongle","wmbusmeters"],"created_at":"2024-09-24T19:55:21.355Z","updated_at":"2025-04-04T07:05:27.465Z","avatar_url":"https://github.com/zibous.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"# Easy Watermeter Integration for Home Assistant\n\n[![License][license-shield]][license]\n[![ESP32 Release](https://img.shields.io/github/v/release/zibous/ha-watermeter.svg?style=flat-square)](https://github.com/zibous/ha-watermeter/releases)\n[![ESPHome release][esphome-release-shield]][esphome-release]\n[![Open in Visual Studio Code][open-in-vscode-shield]][open-in-vscode]\n[![Support author][donate-me-shield]][donate-me]\n\n[license-shield]: https://img.shields.io/static/v1?label=License\u0026message=MIT\u0026color=orange\u0026logo=license\n[license]: https://opensource.org/licenses/MIT\n\n[esphome-release-shield]: https://img.shields.io/static/v1?label=ESPHome\u0026message=2023.5.0\u0026color=green\u0026logo=esphome\n[esphome-release]: https://GitHub.com/esphome/esphome/releases/\n\n[open-in-vscode-shield]: https://img.shields.io/static/v1?label=+\u0026message=Open+in+VSCode\u0026color=blue\u0026logo=visualstudiocode\n[open-in-vscode]: https://open.vscode.dev/zibous/ha-watermeter\n\n[donate-me-shield]: https://img.shields.io/static/v1?label=+\u0026color=orange\u0026message=Buy+me+a+coffee\n[donate-me]: https://www.buymeacoff.ee/zibous\n\n\u003cbr\u003e\n\n## Water meter with IZAR module (Diehl IZAR RC 868 I R4 PL)\n\n![diehl_metering](./docs/diehl_metering.jpg)\n\n\nI did some experiments with **wmbusmeters**, **DVT SDR_STICK**, **NANOCUL** and ended up with: **ESPHome - ESP32 (v4) + CC1101**.\n\nWith the NANOCUL solutions, I always had problems with the USB input and with the high resource consumption on the NUC or Raspberry computers.\n\n\u003cbr\u003e\n\n## ESPHome + ESP32 (v4) + CC1101\n\nESPHome - ESP32 (v4) + CC1101 is the best solution for me because the resource requirement is low.\n\n[![](https://img.shields.io/badge/ESPHOME_ESP32_(v4)+CC1101-orange?style=for-the-badge)](https://github.com/zibous/ha-watermeter/blob/master/esphome/wm-esp32.yaml)\n\n\n\u003cbr\u003e\n\n## ESP32 (v4) Variante\n\n![ESPHome - ESP32 (v4) + CC1101](./esphome/docs/esp32_cc1101.png)\n\n### Requirements\n\n- Water meter with IZAR module (Diehl IZAR RC 868 I R4 PL),\n  IZAR Radio Compact Hall is designed for mobile reading and fixed network remote reading of Diehl Metering meters.\n  \u003cbr\u003e\n- [ ESP32 Dev Kit C V4 NodeMCU](https://amzn.eu/d/eUNLyYc)\n- [Fayme CC1101 868MHZ Funk ÜBertragung Antennen Transceiver Modul, Grün](https://amzn.eu/d/i5YwBkR) \u003cbr\u003e\nAlternative: [ EBYTE TI CC1101 Wireless 868Mhz 915Mhz RF Modul](https://amzn.eu/d/7GPqsng) with external antenna.\n\n\u003cbr\u003e\n\n## Wiring CC1101 module to boards\n![CC1101 module to boards](./esphome/docs/cc1101_board_pins.png)\n\n\n### Meter types:\n\nCurrently supported meter types (wmbus 2.1.10):\n\n- amiplus\n- apator08 \n- apator162\n- apatoreitn\n- bmeters\n- compact5\n- elf\n- evo868\n- fhkvdataiii\n- hydrocalm3\n- hydrus\n- iperl\n- itron\n- **izar**\n- mkradio3\n- mkradio4\n- qheat\n- qwater\n- sharky774\n- topaseskr\n- ultrimis\n- unismart\n- vario451\n- ... more will come :)\n\nsee: \u003chttps://github.com/SzczepanLeon/esphome-components\u003e\n\n## Installation / Details\n[ESPHome - ESP32 (v4) + CC1101](./esphome/README.md)\n\n## Result\n\n### ESPHOME Webserver V2\n![ESPHOME-WATERMETER](./esphome/docs/water-meter-esp.png)\n\n### ESPHOME Webserver V3\n![ESPHOME-WEBSERVER3](./esphome/docs/watermeter-webserver3.png)\n\n### Homeassistant Device\n![ESPHOME-WATERMETER](./esphome/docs/ha_water-meter-esp.png)\n\n\u003cbr\u003e\n\n## ESP8266 vs ESP32 (v4)\nThe version with **WEMOS D1MINI (ESP8266)** was my first version. WEMOS D1MINI (ESP8266) has only limited RAM and can only be used to a limited extent. If there are too many sensors and the logger level is to high, a **JSON memory error occurs**, which causes the device to restart again and again.\n\n__Note__: The **ESP32** has more RAM memory and is therefore better suited for use. To prevent this, it is absolutely necessary to set the log level to `warn`. Otherwise, at a higher log level, JSON errors will occur in productive operation.\n\n\u003cbr\u003e\n\n|  Device | Remarks   | Hardware  | \n|---------|-----------|--------|\n|**Wemos D1 Mini Board 80KB RAM**\u003cbr\u003e\u003cimg src=\"./esphome/docs/d1Mini-wemos.png\"  width=\"40%\"\u003e|  CC1101, board: d1_mini   |   ESP8266 80MHz, **80KB RAM**, 4MB Flash |\n|**Wemos D1 Mini 80KB RAM**\u003cbr\u003e\u003cimg src=\"./esphome/docs/d1mini-esp8266MOD-12F.png\"  width=\"40%\"\u003e |  CC1101, board: esp12e (board: d1_mini )|ESP8266 80MHz, **80KB RAM** , 4MB Flash       |\n|**NodeMCU Lolin V3 Modul 80KB RAM** \u003cbr\u003e\u003cimg src=\"./esphome/docs/nodemcu_v3.png\"  width=\"40%\"\u003e |     CC1101, board: NodeMCU Lua Lolin V3 Module ESP8266  | ESP8266 80MHz, **80KB RAM** , 4MB Flash      |\n|**D1MINI ESP32 320KB RAM**\u003cbr\u003e\u003cimg src=\"./esphome/docs/d1miniesp32.png\"  width=\"40%\"\u003e |  CC1101, board: D!MINI ESP32  |  ESP32 240MHz, **320KB RAM**, 4MB Flash    |\n|**ESP32 Dev Kit C V4 520KB RAM**\u003cbr\u003e\u003cimg src=\"./esphome/docs/az-delivery-devkit-v4.png\"  width=\"40%\"\u003e |  CC1101, board: az-delivery-devkit-v4  |  ESP32 240MHz, **520KB RAM**, 4MB Flash     |\n\n\n\u003cbr\u003e\n\n### Memory Usage D1 Mini\n![memory_usage](https://user-images.githubusercontent.com/30198737/235585457-895bb25f-47a6-4901-a403-96a115caac3d.png)\n\n\u003cbr\u003e\n\n## ESPHome Device configurations\n\n\n- **Testcase - and simple version**\n\t`Total Water m³ (Watermeter Display)`, `LQI`, `RSSI`, `Total m³`, `Last Month total m³`, `Current Month total liter`, `Remaining Battery Lifetime`, `Last Transmit periode`, `Current Alarm Code`, `Previous Alarm Code`, `Boot Counter`, `WIFI Signal`, `Application Version`.\n- **Full version**\n\t`Total Water m³ (Watermeter Display)`, `LQI`, `RSSI`, `Total m³`, `Last Month total m³`, `Water usage current`, `Water usage hour`, `Water usage today`, `Water usage yesterday`, `Water usage week`, `Water usage month`, `Water usage previous month`, `Water usage current year `, `Remaining Battery Lifetime`, `Last Transmit periode`, `Alarm Text`, `Previous Alarm Text`, `Boot Counter`, `WIFI Signal`, `Reset values`, `Restart`, `Set History value with Homeassistant service`, `Application Version`, `Online Time`, `Watermeter LED`, `Watermeter Timestamp`, `Watermeter Update intervall`.\t\n\n\u003cbr\u003e\t\n\t\n|  Version         | Remarks   | Configuration  | \n|------------------|-----------|----------------|\n| 🛠 WMBUSCHECK  |Test configuration and wmbus. NO SENSORS only messages: Details see Log window  |[wm-check-wmbus.yaml](esphome/wm-check-wmbus.yaml)  |\n| 🛠 ESP32 Test  |Frist run to find watermeters. Messages see Log window or syslog messages |[wm-esp32-test.yaml](esphome/wm-esp32-test.yaml)  |\n| 💻 ESP32 Simple  |Simple Sensor outputs, no calculations. Low memory consumption.|[wm-esp32-simple.yaml](esphome/wm-esp32-simple.yaml) |\n|✔️ ESP32  |Full version - Sensors and calulated values, Statitics. Alarmcode text message          |[wm-esp32.yaml](esphome/wm-esp32.yaml) |\n| 🛠 D1 MINI ESP32 Test  |Frist run to find watermeters. Messages see Log window or syslog messages |[wm-d1mini32-test.yaml](esphome/wm-d1mini32-test.yaml)  |\n| 💻 D1 MINI ESP32 Simple  |Simple Sensor outputs, no calculations. Low memory consumption.         |[wm-d1mini32-simple.yaml](esphome/wm-d1mini32-simple.yaml)  |\n|✔️ D1 MINI ESP32  |Full version - Sensors and calulated values, Statitics. Alarmcode text message          |[wm-d1mini32.yaml](esphome/wm-d1mini32.yaml)  |\n| D1MINI IZAR WMBUS|Testcase for IZAR WMBUS METER          |[wm-d1mini_izar-wmbus.yaml](esphome/wm-d1mini_izar-wmbus.yaml)|\n| 🛠 D1MINI Test|Frist run to find watermeters. Messages see Log window or syslog messages         |[wm-d1mini-test.yaml](esphome/wm-d1mini-test.yaml)|\n| 💻 D1MINI Simple |Simple Sensor outputs, no calculations. Low memory consumption.          |[wm-d1mini-simple.yaml](esphome/wm-d1mini-simple.yaml)|\n|✔️ D1MINI |Sensors and calulated values, Statitics. Alarmcode text message          |[wm-d1mini.yaml](esphome/wm-d1mini.yaml)|  \n| 🛠 NodeMCU Test |Frist run to find watermeters. Low memory consumption. Messages see Log window or syslog messages          |[wm-nodemcu-test.yaml](esphome/wm-nodemcu-test.yaml) |\n|✔️ NodeMCU  |Full version - Sensors and calulated values, Statitics. Alarmcode text message|[wm-nodemcu.yaml](esphome/wm-nodemcu.yaml) |  \n  \n\u003cbr\u003e  \n  \n\u003chr\u003e\n\n## Other solutions (alternatively)\n\n- 1. [NANOCUL-DOCKER.md](NANOCUL-DOCKER.md)\n- 2. [NANO-CUL.md](NANO-CUL.md)\n- 3. [RB3B_DVBT - RTL232-md](RTL232.md)\n\n\n\n### For more information see:\n\n- \u003chttps://github.com/weetmuts/wmbusmeters\u003e\n\n- \u003chttps://github.com/maciekn/izar-wmbus-esp\u003e\n- \u003chttps://github.com/MariuszWoszczynski/ESPhome-IZAR-meter-reader\u003e\n\n- \u003chttps://github.com/SzczepanLeon/esphome-components\u003e\n\n- \u003chttps://osmocom.org/projects/rtl-sdr/wiki/Rtl-sdr\u003e\n- \u003chttps://github.com/xaelsouth/rtl-wmbus\u003e\n- \u003chttps://github.com/ZeWaren/izar-prios-smart-meter-collector\u003e\n\n#### DVB-T receiver or Nano CUL Adapter\n- DVB-T receiver: \u003chttps://amzn.eu/d/8AsinRu\u003e\n\n- nano-cul: \u003chttps://www.smart-home-komponente.de/nano-cul/nano-cul-868-extra/\u003e\n\n- diehl watermeter: \u003chttps://www.diehl.com/metering/en/portfolio/software-system-components/software-system-components-products/software-system-components-product/izar-radio-compact-hall/74843/\u003e\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzibous%2Fha-watermeter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzibous%2Fha-watermeter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzibous%2Fha-watermeter/lists"}