esphome-ewh
esphome-ewh copied to clipboard
Control Electrolux/Ballu/Zanussi Water Heaters via uart
Electrolux Water Heater
This is a ESPHome component to control Electrolux Water Heater (EWH), Ballu (BWH) and possibly Zanussi (ZWH) boilers using uart protocol.
Control is possible via custom dongle. You can make it yourself or buy a ready made. For example you can try Lilygo T-Dongle S3, the easest way is to do this is on Aliexpress. Or look at fully opensource iot-uni-dongle.
The communucation uart protocol is 100% reversed for EWH and partially for BWH. It is fully described at reverse.md file.
At this moment the componet is build using climate platform and allows the following:
- Control current temperature
- Change target boil temperature
- Change boil power to 700W (EWH only)
- Change boil power to 1300W
- Change boil power to 2000W
- Change BST (Bacteria Stop technology) mode (EWH only, for BWH need help for reverse)
- Sync and control internal clock (EWH only)
- Set and start internal timer (EWH only)
- Enter to "No Frost/Atifreeze" mode (EWH only)
⚠️ WARNING: Everything you do is done entirely at your own peril and risk!**
Build ESPHome firmware
Sample configuration (available for download):
substitutions:
# main prefix for all entities
name: "Water Heater"
# name of your node
node_name: "water-heater"
# use "esp12e" for iot-uni-dongle, "esp8285" for coolrf-heatstick, or your own if you know it
board: "esp12e"
# time platform: "sntp" or "homeassistant"
time_platform: "sntp"
# SSID of your wifi
wifi_ssid: !secret wifi_ssid
# password of your wifi
wifi_password: !secret wifi_password
# password for fallback wifi hotspot
wifi_ap_password: !secret wifi_ap_password
# version of ewh
project_version: "master"
# please do not change packeages order it is very important, just comment/uncomment
packages:
# required package, do not comment
ewh: github://dentra/esphome-ewh/packages/ewh.yaml@$project_version
## optional package, uncomment next line to enable additional diagnostic clock sensor
# clock: github://dentra/esphome-ewh/packages/clock.yaml@$project_version
## optional package, uncomment next line to enable additional diagnostic timer sensor
# timer: github://dentra/esphome-ewh/packages/timer.yaml@$project_version
## optional package, uncomment next line to enable standalone web ui
# web: github://dentra/esphome-ewh/packages/web.yaml@$project_version
## optional package, uncomment next line to enable experimental cloud support
# cloud: github://dentra/esphome-ewh/packages/cloud.yaml@$project_version
# required package, do not comment
core: github://dentra/esphome-ewh/packages/core.yaml@$project_version
Expiremental cloud support
Please see instructions here.
Help needed
When the water is heated to the required temperature, the boiler can enter to an idle mode (display shows 0 and temperature) but unfortunally I can't get this state yet. Obtaining this state will allow to make energy calculation. If you know the command that can be sent to the boiler to get this state or even grab internal boiler firmware binary - it will be superior. Please let me know it.
Your thanks
If this project was useful to you, you can buy me a Cup of coffee via Card2Card or PayPal :)