Replies: 3 comments 2 replies
-
I have done this via the complicated way you described. See this automation and change where needed. As you wrote, it is not very elegant, but it works. I am posting this so that anyone who wants to add this feature can do so, even though the calendar settings are hardcoded. alias: Zirkulationspumpe 10 Minuten
You also can add two helpers (if you don't need them, you can remove them from the automation): a timer (gets displayed with a 10 minute countdown), and a boolean (turn on switch). |
Beta Was this translation helpful? Give feedback.
-
@tmfoe can you please paste your yaml code again? I think the yaml code formation / indentation is not correct. |
Beta Was this translation helpful? Give feedback.
-
Sorry for the late answer. (Step 1 and 2 can also be done in the Helper interface via "Add helper") Step 1: Set up the Input Boolean input_boolean:
zirkulationspumpe_starten:
name: Start Circulation Pump
icon: mdi:pump Step 2: Set up the Timer timer:
zirkulationspumpe_timer:
duration: "00:10:00"
icon: mdi:timer-outline Step 3: Create the Automation alias: Circulation Pump 10 Minutes
description: >-
Activates the circulation pump for 10 minutes and then sets 16:00-16:10 for all days
triggers:
- entity_id:
- input_boolean.zirkulationspumpe_starten
to: "on"
trigger: state
actions:
- target:
entity_id: timer.zirkulationspumpe_timer
action: timer.start
data: {}
- target:
entity_id: water_heater.zuhause_domestic_hot_water_0
data:
time_program:
"{{ now().strftime('%A').lower() }}":
- start_time: "{{ (now().hour * 60 + now().minute) | int }}"
end_time: >-
{{ ((now() + timedelta(minutes=10)).hour * 60 + (now() +
timedelta(minutes=10)).minute) | int }}
action: mypyllant.set_dhw_circulation_time_program
- wait_for_trigger:
- event_type: timer.finished
event_data:
entity_id: timer.zirkulationspumpe_timer
trigger: event
- target:
entity_id: water_heater.zuhause_domestic_hot_water_0
data:
time_program:
monday:
- start_time: 960
end_time: 970
tuesday:
- start_time: 960
end_time: 970
wednesday:
- start_time: 960
end_time: 970
thursday:
- start_time: 960
end_time: 970
friday:
- start_time: 960
end_time: 970
saturday:
- start_time: 960
end_time: 970
sunday:
- start_time: 960
end_time: 970
action: mypyllant.set_dhw_circulation_time_program
- target:
entity_id: input_boolean.zirkulationspumpe_starten
action: input_boolean.turn_off
data: {}
mode: single
type: entities
entities:
- entity: input_boolean.zirkulationspumpe_starten
name: Circulation Pump
icon: mdi:pump
- entity: timer.zirkulationspumpe_timer
name: Remaining Time How it works -The user activates the circulation pump via the Input Boolean in the Lovelace interface. |
Beta Was this translation helpful? Give feedback.
-
It would be useful to be able to create a button in the Home Assistant with which the hot water circulation can be started directly for 5 minutes.
Use case: Hot water circulation does not have to run all the time and saves energy (heat loss due to circulation + power consumption of the circulation pump). Shortly before you go to take a shower, you can start the circulation with a button in the Home Assistant or via the W-Land button.
Unfortunately, the time definition via the "myVAILLANT: Set Water Heater Circulation Time Program" service is too complex for templating.
Example of a static definition:
action: mypyllant.set_dhw_circulation_time_program
target: {}
data:
time_program: |
monday: - start_time: 330
end_time: 1260
tuesday: - start_time: 330
end_time: 1260
wednesday: - start_time: 330
end_time: 1260
thursday: - start_time: 330
end_time: 1260
friday: - start_time: 330
end_time: 1260
saturday: - start_time: 450
end_time: 1260
sunday: - start_time: 450
end_time: 1260
Here you would first have to read out the current calendar settings, save them temporarily and add the current time accordingly and then undo them again after 5 minutes have elapsed.
A direct action to implement this in the myvaillant integration would make sense.
Beta Was this translation helpful? Give feedback.
All reactions