This Home Assistant Integration is providing information from the German heatpump pioneer Waterkotte. In addition and where possible functions are provided to control the system.
Please note, that this integration is not official and not supported by the Waterkotte development team. I am not affiliated with Waterkotte in any way.
All data will be fetched (or send) to your Waterkotte via the build in webserver of the unit. So the functionality is based on the data and settings that are available also via the frontend that you can directly access via a web-browser.
Platform | Description |
---|---|
binary_sensor |
Show something True or False . |
sensor |
Show info from Waterkotte Heatpump API. |
switch |
Switch something True or False . |
select |
Select a value from options. |
number |
adjustable Temperatures (demanded or heating curves) |
service |
Provides services to interact with heatpump |
Please be aware, that we are developing this integration to best of our knowledge and belief, but cant give a guarantee. Therefore, use this integration at your own risk.
[Get the sources for the sample dashboard_above] - Please note, that this sample dashboard makes use of the custom multiple-entity-row frontend integration that need to be installed separately.
if you have installed the previous version of the waterkotte integration from me (marq24) - please follow the migration guide.
- Install Home Assistant Community Store (HACS)
- Add integration repository (search for "Waterkotte Heatpump [+2020]" in "Explore & Download Repositories")
- Use the 3-dots at the right of the list entry (not at the top bar!) to download/install the custom integration - the latest release version is automatically selected. Only select a different version if you have specific reasons.
- After you presses download and the process has completed, you must Restart Home Assistant to install all dependencies
- Setup the custom integration as described below (see Step II: Adding or enabling the integration)
- Copy all files from
custom_components/waterkotte_heatpump/
tocustom_components/waterkotte_heatpump/
inside your config Home Assistant directory. - Restart Home Assistant to install all dependencies
You must have installed the integration (manually or via HACS before)!
Just click the following Button to start the configuration automatically (for the rest see Option 2: Manually steps by step):
Use the following steps for a manual configuration by adding the custom integration using the web interface and follow instruction on screen:
- Go to
Configuration -> Integrations
and add "Waterkotte" integration - Provide the IP address (or hostname) of your Waterkotte Heatpump web server
- Select the Interface-Type of your Waterkotte (see table below)
- Select the number of TAGs that can be fetched in a single call to your device (older devices might need to adjust this value - for my in 2022 installed Waterkotte 75 is totally fine)
- Provide area where the heatpump is located
After the integration was added you can use the 'config' button to adjust your settings and you can additionally modify the update intervall
Please note, that most of the available sensors are not enabled by default.
Please take a look at the different login options and compare with your waterkotte in order to decide, what mode you must select for the integration (sorry only german example screens here)
EcoTouch | EasyCon |
---|---|
web login form | browser basic-auth |
Don't get confused! The EcoTouch web login for newer Waterkotte models shows the text EasyCon - but when there is a webpage where you must enter the login credentials, then you must select the EcoTouch Mode for this integration!
The Integration provides currently 5 services:
To set the times for the holiday mode use the provided service waterkotte_heatpump.set_holiday
and set start
and end
parameter.
To set the water disinfection start time (HH:MM) use the provided service waterkotte_heatpump.set_disinfection_start_time
and set starthhmm
parameter (seconds will be ignored).
When using the service, first select the schedule (type) you want to adjust [Heating, Cooling, Hot Water, Mixer 1-3, Pool, Buffer Tank Circulation Pump, Solar Control, Photovoltaic], select then the start time and the end time, enable/disable the schedule and select the days you would apply the setting.
Additionally, it's possible to specify the Adjustment I and the Adjustment II options. Please be a bit patient when using the Service since there are approx. 100 different tags that have to be written to the heatpump when you apply adjustments for all 7 days.
Please note also, that I did not find a way (yet) to load the current values of the entities into the 'Set a Schedule' dialog. So when adjusting the values via the service you do not see the current values of the fields.
Retrieves the overall energy consumption data for the year
Retrieves the monthly breakdown energy consumption data for a moving 12 month window. 1 = January, 2 = February, etc...
With this the integration it will be possible to adjust the Waterkotte Schedules for:
- Heating
- Cooling
- Hot Water
- Mixer 1, Mixer 2 & Mixer 3
- Pool
- Buffer Tank Circulation Pump
- Solar Control (without adjustment I & adjustment II)
- Photovoltaic (without adjustment I & adjustment II)
The easiest way to adjust a schedule is via the 'Set Schedule' Service that can be found in your HA installation. Only via the service it's possible to adjust the start and end times.
When you want to use/display schedule settings in your HA dashboards or use them in your automations you must enable the optional schedule entities [in the configuration of the integration]. But be smart - only add these additional entities if you really need them. If they are added once it's quite tricky to get rid of them again. Please read further to get additional information about the amount of additional schedule entities that will be added to your HA installation.
For each of the Schedules there are per day:
- One switch to turn ON/OFF the schedule
- Two switches to turn ON/OFF adjustment I & II
- Two values for each of the adjustments (+/- 10°K)
- Three start times (one for the schedule, and two for the adjustments)
- Three end times (one for the schedule, and two for the adjustments)
This makes a total of 11 Sensor-Entities per day - each Schedule consist obviously of 7 days - so for each of the schedules above 77 Sensor-Entities will be available (even if added - all are disabled by default).
This will result in a total of 659 additional (new) Sensor-Entities in order to support all Schedules - yes this is not a typo! SIX HUNDRED FIFTY-NINE!
So please only add the additional sensors if the use of the 'set schedule service' is not sufficient for your use case. The service can make all the adjustments to your Waterkotte schedules, without the need of having the additional sensor entities added.
This is the new version of the previous 'ha-waterkotte' repository (which have now been renamed to ha-waterkotte-the-fork
). After the refactoring process have been completed, I have decided to create an independent repository - since the refactored version does not have much in common with the origin sources.
Unfortunately HACS does not 'like' renaming of repositories, so you have to perform few steps in order to upgrade your home assistant installation to the latest ha-waterkotte integration version - sorry for this inconvenience!
-
make a backup (just in case)
-
go to HACS menu of your home assistant installation
-
remove the (old) custom HACS repository 'https://github.com/marq24/ha-waterkotte'
(This step will/should remove the Waterkotte Integration entry from the list of installed HACS Integrations)
-
add the new repository 'https://github.com/marq24/ha-waterkotte' to HACS
-
install the waterkotte integration to your local HACS
-
restart your home assistant system
YES - this procedure sounds totally silly - but HACS stores a custom-id for each repository - And since I have decided to rename the old repository which base on the work from pattisonmichael to 'https://github.com/marq24/ha-waterkotte-the-fork' and created an independent repository, this procedure is necessary in order to be notified about any future updates.
The Heatpump only allows 2 sessions and there is no way to close a session. Sometimes you will get an error about the login. Just wait a few minutes and it should autocorrect itself. Session usually time out within about 5 min.
The Heatpump will not always respond with data. This happens usually after the system changes status, e.g. start/stop the heating. There is not much we can do about this, unfortunately. I try to cache the data in possible for a better UX.
who | what |
---|---|
@pattisonmichael | This project was initially forked from Waterkotte-Integration by pattisonmichael (but both projects drifted apart over time - so this repo is now independent). |
@chboland | Christian Boland created a Python Waterkotte library https://github.com/chboland/pywaterkotte which was forked by @pattisonmichael pywatterkotte library, so this integration is also based on the work from @chboland. |
@oncleben31 | The forked original project was generated via the Home Assistant Custom Component Cookiecutter template. |
@Ludeeus | The forked original code template was mainly taken from the integration_blueprint template |
Be smart switch to Tibber - that's what I did in october 2023. If you want to join Tibber (become a customer), you might want to use my personal invitation link. When you use this link, Tibber will we grant you and me a bonus of 50,-€ for each of us. This bonus then can be used in the Tibber store (not for your power bill) - e.g. to buy a Tibber Bridge. If you are already a Tibber customer and have not used an invitation link yet, you can also enter one afterward in the Tibber App (up to 14 days). [see official Tibber support article]
Please consider using my personal Tibber invitation link to join Tibber today or Enter the following code: 6o0kqvzf (six, oscar, zero, kilo, quebec, victor, zulu, foxtrot) afterward in the Tibber App - TIA!