Skip to content

Add switch for warm water circulation pump #310

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
gitlllIlll opened this issue Dec 29, 2024 · 9 comments
Open

Add switch for warm water circulation pump #310

gitlllIlll opened this issue Dec 29, 2024 · 9 comments

Comments

@gitlllIlll
Copy link

Would it be possible to add a switch for the warm water circulation pump?

Would be very usefull for energy conserving and demand driven (instead of time based) circulation control.

Could also help as a work around for manual thermal disinfection.

@jpeibisch
Copy link

I solved that with an outlet (zigbee - zha) and a motion sensor.
I know that is not the smartest solution but it works

@gitlllIlll
Copy link
Author

gitlllIlll commented Jan 29, 2025

Right, there are many ways to control the circulation pump (or virtually any component) by external devices, but IMO that is not the point of this integration. Additionally, I prefer software solutions over altering the hardware whenever possible.

There is a point in the control menu where you can switch the pump manually for venting and I was wondering if that is reachable via the interface.

@Gifford47
Copy link
Contributor

Right, there are many ways to control the circulation pump (or virtually any component) by external devices, but IMO that is not the point of this integration. Additionally, I prefer software solutions over altering the hardware whenever possible.

There is a point in the control menu where you can switch the pump manually for venting and I was wondering if that is reachable via the interface.

That would be awesome 👍
I also tried to turn on the circulation pump outside the normal interval. But currently no success.
Do you know which luxtronik write command I have to send? Or how do I research of it?

@apf-doit
Copy link

apf-doit commented Mar 17, 2025

Could also help as a work around for manual thermal disinfection.

I have learned from the author that thermal desinfection is just like any other water heating mode. Since then i don't care about how it is called, i just increase it whenever i want, especially when i have a lot of solar overproduction just to store more energy in the house.

#263

@Gifford47
Copy link
Contributor

Gifford47 commented Mar 18, 2025

@apf-doit and how do you do it? Via luxtronik write command or custom automation? I have no entities, that set this mode directly.

@apf-doit
Copy link

@Gifford47 i have an entity named "number.luxtronik2_dhw_target_temperature" which basically is what it says it is: domestic water temperature. Combined with an automation checking the solar production and few other checks like current energy price, i increase the temp from default 45 to 60 and turn back when the temp is reached. The default desinfection target temp is actually 65, but with that entity i cannot set above 60, don't know why. But 60 is hot enough.

@Bawt818
Copy link

Bawt818 commented Apr 1, 2025

I have been using "ID_Einst_BWZIP_akt" for a while now to somewhat successfully turn off the hot water circulation pump. It's set to 0 by default and kind of disables it when set to 1. However the pump can still turn itself on sometimes and then run for even 20min non stop, ignoring the circulation timings settings. It usually happens after it's been off for a few hours.

Despite that it successfully reduces the energy usage. Usually by more than 50%.

@Mehli12
Copy link

Mehli12 commented Apr 8, 2025

I have been using "ID_Einst_BWZIP_akt" for a while now to somewhat successfully turn off the hot water circulation pump. It's set to 0 by default and kind of disables it when set to 1. However the pump can still turn itself on sometimes and then run for even 20min non stop, ignoring the circulation timings settings. It usually happens after it's been off for a few hours.

Despite that it successfully reduces the energy usage. Usually by more than 50%.

May I ask how you disable or enable the hot water circulation pump? I think the "ID_Einst_BWZIP_akt" is not in the current implementation from BenPru. But I can add it via Bouni and YAML. right?

@Bawt818
Copy link

Bawt818 commented Apr 8, 2025

@Mehli12
Yeah, looks like I managed it with the integration by Bouni.
I monitor it's state with a sensor added in the configuration file:

sensor:
  - platform: luxtronik
    sensors:
      - group: parameters
        id: ID_Einst_BWZIP_akt
        friendly_name: Circulation Pump

An change it's value with the luxtronik.write action:

action: luxtronik.write
data:
  parameter: ID_Einst_BWZIP_akt
  value: 1

However, the post I made actually inspired me to find a more reliable way to disable the circulation pump. I realized it could work more seamlessly with the heat pump if I used the integration to modify the circulation schedule instead of just turning it off directly.

With a bit of help from Gemini, I figured out the parameters used for the matrix that stores circulation start and end times (in seconds from midnight). The IDs follow this pattern:

ID_Einst_SuZIP + Wo/25/Tg + _zeit_X_Y

  • The first part indicates it’s a schedule for the circulation pump.
  • The second part defines the type of schedule:
    • Wo – same for every day
    • 25 – different for weekends
    • Tg – different for each day (just like in the heat pump settings)
  • The last part defines the coordinates in the matrix:
    • X is the row (values 0–4)
    • Y is the column:
      • 0 = start time, 1 = end time for day 1
      • 2 = start time, 3 = end time for day 2, and so on

For example, ID_Einst_SuZIP25_zeit_0_2 refers to the start time for the weekend schedule on day 2.

So, instead of completely disabling the circulation pump, I now modify the schedule based on presence. When everyone leaves, the schedule changes from the normal 6:00–00:00 to just on at 6:00 and off at 6:15. I use the same luxtronik.write action as before. This method has proven to be much more reliable for keeping the pump off when it’s not needed.

Additionally, if no one is home at 5:58, I change the schedule to end at 5:55, and start at 5:50, wait 18 minutes, then switch it back to the usual 6:00–6:15. I update the end time first. The system handles this well—even if the end time is earlier than the start time. For instance, if the start time is 6:00 and the end time is 5:00, the pump runs from 6:00 until 5:00 the next day and doesn't run from 5:00 to 6:00.

So I've been using that instead of ID_Einst_BWZIP_akt for the past few days and I think it's going to stay that way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants