panhans / HomeAssistant

Home Asisstant related stuff like blueprints for automations and scripts.
100 stars 27 forks source link

Heating control suggestions #41

Open HarvsG opened 11 months ago

HarvsG commented 11 months ago

Hi there I don't use your heating control blueprint (yet). I have a combi boiler and ZigBee TRVs.

In my automations I have the following 2 features that I can't live without.

I only trigger TRV temperature changes if the boiler is actually on. Otherwise you drain battery moving the valves when there is no flow.

Before bed I preempt if the heating is going to come on overnight, if it is I open the bedroom TRV valves in anticipation by setting the target temperature high so that I am no woken by the noise of the valves opening in the night.

HarvsG commented 11 months ago

Keep valves quiet

alias: "[Heating] Keep radiators quiet - Anticipate if heating will come on"
description: >-
  The TRVs (smart valves on the radiators) make noises and can wake sleeping
  people, as such we want to anticipate if the valves are like to open or close
  overnight and set them in anticipation
trigger:
  - platform: state
    entity_id:
      - input_boolean.goodnight
    from: "off"
    to: "on"
condition:
  - condition: state
    entity_id: input_boolean.manual_mode
    state: "off"
  - condition: state
    entity_id: script.away_mode
    state: "off"
action:
  - choose:
      - conditions:
          - condition: template
            value_template: >-
              {{states.climate.hive_boiler_thermostat.attributes.current_temperature
              - (states.input_number.night_temperature.state | float ) < 2  and
              ((states.input_number.night_temperature.state | float ) >
              states.weather.home.attributes.temperature + 2)}}
            alias: >-
              Temperature is likely to fall below night_temperature and boiler
              will come on overnight
        sequence:
          - service: climate.set_temperature
            data:
              temperature: 25
            target:
              entity_id: climate.bedroom_east_radiator_thermostat
          - if:
              - condition: state
                entity_id: input_boolean.guest_mode
                state: "on"
            then:
              - service: climate.set_temperature
                data:
                  temperature: 25
                target:
                  entity_id: climate.snug_radiators
      - conditions: []
        sequence: []
mode: single
HarvsG commented 11 months ago

Only trigger when boiler is actually running

alias: "[Heating] After 4pm radiator temperatures"
description: >-
  If the heat comes on after 4pm or is already on at 4pm then re-balance the
  radiators
trigger:
  - platform: time
    at: "16:00:00"
  - platform: state
    entity_id: climate.hive_boiler_thermostat
    to: heating
    attribute: hvac_action
    for:
      hours: 0
      minutes: 0
      seconds: 30
condition:
  - condition: state
    entity_id: input_boolean.away_mode
    state: "off"
  - condition: state
    entity_id: input_boolean.manual_mode
    state: "off"
  - condition: state
    entity_id: climate.hive_boiler_thermostat
    attribute: hvac_action
    state: heating
  - condition: time
    after: "15:59:00"
    before: "00:00:00"
  - condition: state
    entity_id: input_boolean.goodnight
    state: "off"
action:
  - service: climate.set_temperature
    data:
      temperature: "{{states('input_number.night_temperature')}}"
    target:
      entity_id:
        - climate.bedroom_east_radiator_thermostat
        - climate.study_radiator_thermostat
  - service: climate.set_temperature
    data:
      temperature: "{{states('input_number.day_temperature') | float}}"
    target:
      entity_id:
        - climate.snug_radiators
        - climate.living_room_radiator_thermostat
mode: single