AutomationDataset/tomwaldnz/tomwaldnz_automations.yaml

1223 lines
32 KiB
YAML

- alias: ATP Guest Overnight Limit Damper Overheat Overcool 2200 - 0630
description: This automation simply stops the room damper opening past a certian
percentage. When a single room is heating / cooling at night the Airtouch would
completely open the damper and as a result the room would get very hot or cold.
This was particularly noticable in smaller rooms. This automation reduces the
maximum heating or cooling to the room.
triggers:
- trigger: numeric_state
entity_id:
- cover.pa_guest_damper
attribute: current_position
above: 61
for:
hours: 0
minutes: 0
seconds: 2
conditions:
- alias: HVAC is in heating or cooling mode
condition: or
conditions:
- condition: state
entity_id: climate.pa_daikin
state: cool
- condition: state
entity_id: climate.pa_daikin
state: heat
- alias: Room is enabled
condition: state
entity_id: cover.pa_guest_damper
state: open
- condition: time
before: 06:30:00
after: '21:30:00'
- alias: Current temperature is at least 0.3 degrees from target
condition: or
conditions:
- alias: Heating mode & no more than 0.2 degrees above the setpoint
condition: and
conditions:
- condition: state
entity_id: climate.pa_daikin
state: heat
- condition: template
value_template: "{{ state_attr(\"climate.pa_guest\", \"current_temperature\"\
) -\n state_attr(\"climate.pa_guest\", \"temperature\") <= 0.25}}"
- alias: Cooling mode & no more than 0.2 degrees below the setpoint
condition: and
conditions:
- condition: state
entity_id: climate.pa_daikin
state: cool
- condition: template
value_template: '{{ (state_attr("climate.pa_guest", "temperature") - state_attr("climate.pa_guest",
"current_temperature") <= 0.25 ) }}'
actions:
- alias: Damper to 60%
action: cover.set_cover_position
data:
position: 60
target:
entity_id: cover.pa_guest_damper
- alias: Reset to temperature control
action: climate.set_temperature
data:
temperature: '{{ state_attr(''climate.pa_guest'', ''temperature'') }}'
target:
entity_id:
- climate.pa_guest
mode: single
- alias: AT All zones off turn off system
description: When all zones are turned off, turn off the whole Airtouch system
trigger:
- platform: state
entity_id:
- climate.itc_living
to: 'off'
- platform: state
entity_id:
- climate.itc_master
to: 'off'
- platform: state
entity_id:
- climate.itc_small_bedroom
to: 'off'
- platform: state
entity_id:
- climate.itc_guest
to: 'off'
condition:
- condition: state
entity_id: climate.itc_living
state: 'off'
for:
hours: 0
minutes: 1
seconds: 0
- condition: state
entity_id: climate.itc_small_bedroom
state: 'off'
for:
hours: 0
minutes: 1
seconds: 0
- condition: state
entity_id: climate.itc_master
state: 'off'
for:
hours: 0
minutes: 1
seconds: 0
- condition: state
entity_id: climate.itc_guest
state: 'off'
for:
hours: 0
minutes: 1
seconds: 0
action:
- service: climate.set_hvac_mode
data:
hvac_mode: 'off'
target:
entity_id: climate.ac_daikin
mode: single
- alias: AT Off Reset to ITC daytime
description: Reset dampers to a known set position when the system is turned off
during the day. Don't do this at night as a restart, power cut or exception in
the log can prevent the state being restored if power comes back on.
trigger:
- platform: state
entity_id:
- climate.ac_daikin
to: 'off'
condition:
- condition: time
after: 07:00:00
before: '22:00:00'
action:
- service: climate.set_preset_mode
data:
preset_mode: Damper
target:
entity_id:
- climate.itc_guest
- climate.itc_small_bedroom
- climate.itc_master
- climate.itc_living
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: fan.set_percentage
data:
percentage: 0
target:
entity_id:
- fan.damper_master
- fan.damper_guest
- fan.damper_small_bedroom
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: fan.set_percentage
data:
percentage: 100
target:
entity_id:
- fan.damper_living
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: climate.set_preset_mode
data:
preset_mode: ITC
target:
entity_id:
- climate.itc_guest
- climate.itc_living
- climate.itc_master
- climate.itc_small_bedroom
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: fan.turn_off
target:
entity_id:
- fan.damper_guest
- fan.damper_master
- fan.damper_small_bedroom
data: {}
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: fan.turn_on
target:
entity_id:
- fan.damper_living
data: {}
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: climate.set_temperature
data:
temperature: 21
target:
entity_id: climate.itc_living
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: climate.set_temperature
data:
temperature: 20
target:
entity_id:
- climate.itc_small_bedroom
- climate.itc_guest
- climate.itc_master
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: climate.set_fan_mode
data:
fan_mode: low
target:
entity_id: climate.ac_daikin
- choose:
- conditions:
- condition: template
value_template: '{{ now().month in [12, 1, 2, 3] }}'
alias: Month is Dec - Mar inclusive
sequence:
- service: climate.set_fan_mode
metadata: {}
data:
fan_mode: low
target:
entity_id: climate.ac_daikin
default:
- service: climate.set_fan_mode
metadata: {}
data:
fan_mode: medium
target:
entity_id: climate.ac_daikin
mode: single
- alias: ATSP Guest Overcooling Shut Down Damper
description: If the ducted unit is cooling, the temperature is 0.4C below the setpoint
and the damper is more than 39% open, close the damper down to 10%
triggers:
- alias: Ducted cool mode, damper over 39%, and current is 0.4C below setpoint (e.g.
setpoint 20, will trigger at 19.6)
trigger: template
value_template: "{{ states('sensor.daikin_ducted_hvac_state') == 'cool' and state_attr(\"\
cover.pa_guest_damper\", \"current_position\") | int > 39 and ((state_attr(\"\
climate.pa_guest\", \"temperature\") -\n state_attr(\"climate.pa_guest\"\
, \"current_temperature\")) | round(1) >= 0.4 ) }}"
for:
hours: 0
minutes: 1
seconds: 0
conditions:
- condition: state
entity_id: climate.pa_guest
attribute: control_method
state: temperature
actions:
- alias: Damper to 10%
action: cover.set_cover_position
data:
position: 10
target:
entity_id: cover.pa_guest_damper
- alias: Set damper back to temperature control
metadata: {}
data:
temperature: '{{ state_attr(''climate.pa_guest'', ''temperature'') }}'
target:
entity_id: climate.pa_guest
action: climate.set_temperature
mode: single
- alias: ATP Guest Overheat Fix
description: If room is 0.3 degrees over setpoint reduce the damper. This is useful
when using the spill fix actions which keep the dampers open for longer. Airtouch
ramps the damper position down slowly, too slowly given the damper manipulation
being done, so we have to bring it down quickly ourselves to prevent overheating.
triggers:
- alias: Current temperature is 0.3 degrees above room setpoint
value_template: '{{ state_attr("climate.pa_guest", "current_temperature") - state_attr("climate.pa_guest",
"temperature") > 0.25}}'
trigger: template
conditions:
- condition: state
entity_id: climate.pa_daikin
state: heat
- condition: state
entity_id: cover.pa_guest_damper
state: open
- condition: numeric_state
entity_id: cover.pa_guest_damper
above: 42
attribute: current_position
below: 105
- condition: state
entity_id: climate.pa_guest
attribute: control_method
state: temperature
actions:
- alias: Reduce damper position
action: cover.set_cover_position
data:
position: 30
target:
entity_id: cover.pa_guest_damper
- alias: Set room back to temperature control
metadata: {}
data:
temperature: '{{ state_attr(''climate.pa_guest'', ''temperature'') }}'
target:
entity_id: climate.pa_guest
action: climate.set_temperature
mode: single
- alias: ATP Off Reset to defaults
description: Reset everything to our preferred modes if turned off during the day.
Don't reset at night as a restart or exception in the log can prevent bedroom
heating
triggers:
- entity_id:
- climate.pa_daikin
to: 'off'
trigger: state
conditions:
- condition: time
after: 07:00:00
before: '22:00:00'
actions:
- metadata: {}
data: {}
action: script.reset_airtouch
- alias: If its between 6pm and 7pm preset the Airtouch to heat mode / 23c without
turning it on. Make sure to set up the associated script in script-reset-airtouch.yaml.
I cant remember why I set this up but I probably had a good reason.
if:
- condition: time
after: '18:00:00'
before: '19:00:00'
then:
- alias: Set Airtouch to Heat mode without turning it on
action: airtouch.set_hvac_mode_only
metadata: {}
data:
hvac_mode: heat
target:
entity_id: climate.pa_daikin
- action: climate.set_temperature
metadata: {}
data:
temperature: 23
target:
entity_id: climate.pa_lounge
mode: single
- alias: ATSP Guest Spill Fix Cooling Daytime Fast Cooling
description: If damper is 20% - 90% and no more than 0.25 degrees below setpoint
open the damper fully. This is to ensure fast cooling and to reduce spill. The
20 second limit aims to stop constantly oscillation in damper settings.
triggers:
- trigger: numeric_state
entity_id:
- cover.pa_guest_damper
attribute: current_position
above: 16
below: 91
for:
hours: 0
minutes: 0
seconds: 20
conditions:
- condition: state
entity_id: climate.pa_daikin
state: cool
- alias: Room is enabled
condition: state
entity_id: cover.pa_guest_damper
state: open
- condition: time
after: 09:00:00
before: '19:00:00'
- alias: Current room temperature is no more than 0.25 degrees below target temperature
condition: template
value_template: '{{ (state_attr("climate.pa_guest", "temperature") - state_attr("climate.pa_guest",
"current_temperature") <= 0.25 ) }}'
- alias: Outside unit state is cool. Without this the action triggers constantly.
condition: state
entity_id: sensor.daikin_ducted_hvac_state
state: cool
actions:
- alias: Damper to 100%
action: cover.set_cover_position
data:
position: 100
target:
entity_id: cover.pa_guest_damper
- alias: Reset to temperature control
action: climate.set_temperature
data:
temperature: '{{ state_attr(''climate.pa_guest'', ''temperature'') }}'
target:
entity_id:
- climate.pa_guest
mode: single
- alias: ATP Guest Spill Fix Heat Daytime
description: If Guest damper is 20% - 90% and no more than 0.2 degrees above setpoint
open the damper fully. This is to ensure fast heating and to reduce spill. The
20 second limit aims to stop constantly oscillation in damper settings.
triggers:
- trigger: numeric_state
entity_id:
- cover.pa_guest_damper
attribute: current_position
above: 16
below: 91
for:
hours: 0
minutes: 0
seconds: 20
- alias: Trigger on room temperature changes - this is a more reliable trigger due
to the way HA triggers work with ranges
trigger: state
entity_id:
- climate.pa_guest
attribute: current_temperature
conditions:
- condition: state
entity_id: climate.pa_daikin
state: heat
- alias: Room is enabled
condition: state
entity_id: cover.pa_guest_damper
state: open
- condition: time
after: 09:00:00
before: '21:00:00'
- alias: Current room temperature is no more than 0.2 degrees above target temperature
condition: template
value_template: '{{ state_attr("climate.pa_guest", "current_temperature") - state_attr("climate.pa_guest",
"temperature") < 0.25}}'
- alias: Damper is not fully open and is not about to close
condition: numeric_state
entity_id: cover.pa_guest_damper
attribute: current_position
above: 16
below: 91
- condition: state
entity_id: sensor.daikin_ducted_hvac_state
state: heat
alias: Outside unit state is heat. Without this the action triggers constantly.
This requires either a power usage detector on the circuit running the heat
pump or the AppDaemon "hvac_energymonitor1" script, which as of May 2025 I havent
released yet. Experimentation will be required to make this work properly without
either
actions:
- alias: Damper to 100%
action: cover.set_cover_position
data:
position: 100
target:
entity_id: cover.pa_guest_damper
- action: climate.set_temperature
data:
temperature: '{{ state_attr(''climate.pa_guest'', ''temperature'') }}'
target:
entity_id:
- climate.pa_guest
mode: single
- alias: ATP Airtouch Console Off Time Reset
description: When the automatic off time is reset / removed on the Airtouch console
clear the timer in HA
triggers:
- trigger: state
entity_id:
- time.pa_daikin_off_timer
to: unknown
from: null
conditions: []
actions:
- action: script.atp_clear_off_timer
metadata: {}
data: {}
mode: single
- alias: ATP Airtouch Console On Time Reset
description: When the automatic on time is reset / removed on the Airtouch console
clear the timer in HA
triggers:
- trigger: state
entity_id:
- time.pa_daikin_on_timer
to: unknown
from: null
conditions: []
actions:
- action: script.atp_clear_on_timer
metadata: {}
data: {}
mode: single
- alias: ATP Airtouch Timers Set Off Time to Absolute
description: Set the Airtouch off timer to the value entered in the time setter
triggers:
- entity_id: input_datetime.pa_daikin_airtouch_off_time
trigger: state
actions:
- action: time.set_value
data:
time: '{{ states(''input_datetime.pa_daikin_airtouch_off_time'') }}'
target:
entity_id: time.pa_daikin_off_timer
mode: single
- alias: ATP Airtouch Timers Set On Time to Absolute
description: Set the Airtouch on timer to the value entered in the time setter
triggers:
- entity_id: input_datetime.pa_daikin_airtouch_on_time
trigger: state
conditions: []
actions:
- action: time.set_value
data:
time: '{{ states(''input_datetime.pa_daikin_airtouch_on_time'') }}'
target:
entity_id: time.pa_daikin_on_timer
mode: single
- alias: ATP Airtouch Timers Off From Delay
description: Turn the Airtouch off after a configurable delay from a slider
triggers:
- trigger: state
entity_id:
- input_number.ducted_ac_airtouch_off_timer
conditions: []
actions:
- alias: Set the off time for the Airtouch
action: airtouch.set_timer_from_delay
data:
delay:
minutes: '{{ states(''input_number.ducted_ac_airtouch_off_timer'') | float
}}'
target:
entity_id: time.pa_daikin_off_timer
- alias: Update the text field with the off time
action: input_text.set_value
target:
entity_id:
- input_text.pa_daikin_airtouch_off_delay
data:
value: "{% set minutes = states('input_number.ducted_ac_airtouch_off_timer')\
\ | int %} {% if minutes == 0 %}\n {{ '' }}\n{% else %}\n {{ (now() + timedelta(minutes=minutes)).strftime('%H:%M')\
\ }}\n{% endif %}\n"
- action: script.notify_tim
metadata: {}
data:
message: Airtouch Off Timer Set {{ states('input_number.ducted_ac_airtouch_off_timer')
| int }}
enabled: false
mode: single
- alias: ATP Airtouch Timers On From Delay
description: Turn the Airtouch on after a configurable delay set via a slider
triggers:
- trigger: state
entity_id:
- input_number.ducted_ac_airtouch_on_timer
conditions: []
actions:
- alias: Set the delay on the Airtouch
action: airtouch.set_timer_from_delay
data:
delay:
minutes: '{{ states(''input_number.ducted_ac_airtouch_on_timer'') | float
}}'
target:
entity_id: time.pa_daikin_on_timer
- alias: Update the text field with the on time
action: input_text.set_value
target:
entity_id:
- input_text.pa_daikin_airtouch_on_delay
data:
value: "{% set minutes = states('input_number.ducted_ac_airtouch_on_timer')\
\ | int %} {% if minutes == 0 %}\n {{ '' }}\n{% else %}\n {{ (now() + timedelta(minutes=minutes)).strftime('%H:%M')\
\ }}\n{% endif %}\n"
- action: script.notify_tim
metadata: {}
data:
message: Airtouch ON Timer Set {{ states('input_number.ducted_ac_airtouch_on_timer')
| int }}
enabled: false
mode: single
- alias: Office 0530 weekdays below 11
description: Turn on the office to 22deg at 5.30am weekdays from March to November
trigger:
- platform: time
at: 05:30:00
condition:
- condition: state
entity_id: input_boolean.office_automations_enabled
state: 'on'
- condition: time
before: 00:00:00
weekday:
- mon
- tue
- thu
- fri
- wed
after: 00:00:00
- condition: template
value_template: '{{ now().month in [3, 4, 5, 6, 7, 8, 9, 10] }}'
alias: Month is Mar - Oct
- condition: numeric_state
entity_id: sensor.officesensor_temperature
below: 11
action:
- service: climate.set_hvac_mode
data:
hvac_mode: heat
target:
entity_id: climate.office_daikin
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_temperature
data:
temperature: 22
target:
entity_id: climate.office_daikin
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_fan_mode
data:
fan_mode: '3'
target:
entity_id: climate.office_daikin
mode: single
- alias: AT 1130 Ventilation On Airtouch Winter May to Oct
description: Turn on positive pressure ventilation and Airtouch fan mode to the
bedrooms in summer
trigger:
- platform: time
at: '11:30:00'
condition:
- condition: state
entity_id: input_boolean.ducted_ventilation_automations_enabled
state: 'on'
- condition: template
value_template: '{{ now().month in [5, 6, 7, 8, 9, 10] }}'
alias: Month is May - Oct
- condition: state
entity_id: climate.ac_daikin
state: 'off'
enabled: true
action:
- type: turn_on
device_id: positive-pressure-ventilation-device-id
entity_id: switch.ventilation
domain: switch
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_preset_mode
data:
preset_mode: Damper
target:
entity_id:
- climate.itc_living
- climate.itc_small_bedroom
- climate.itc_master
- service: fan.turn_off
data: {}
target:
entity_id: fan.damper_living
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.set_percentage
data:
percentage: 100
target:
entity_id:
- fan.damper_master
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.set_percentage
data:
percentage: 30
target:
entity_id: fan.itc_small_bedroom
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.turn_on
data: {}
target:
entity_id:
- fan.itc_small_bedroom
- fan.damper_master
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_hvac_mode
data:
hvac_mode: fan_only
target:
entity_id: climate.ac_daikin
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_fan_mode
data:
fan_mode: medium
target:
entity_id: climate.ac_daikin
- delay:
hours: 0
minutes: 60
seconds: 0
milliseconds: 0
- service: climate.set_preset_mode
data:
preset_mode: ITC
target:
entity_id:
- fan.damper_small_bedroom
- fan.damper_living
- fan.damper_master
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- choose:
- conditions:
- condition: state
entity_id: climate.ac_daikin
state: fan_only
sequence:
- service: climate.turn_off
data: {}
target:
entity_id: climate.ac_daikin
alias: Turn off the Airtouch if its in fan mode. This allows it to keep running
if its manually been changed to heating or cooling
- type: turn_off
device_id: positive-pressure-ventilation-device-id
entity_id: switch.ventilation
domain: switch
mode: single
- alias: Notification System Log All
description: When a system log entry is made send it out by email
trigger:
- platform: event
event_type: system_log_event
condition: []
action:
- service: notify.email_service_name
data:
title: HA log entry made
message: '{{ trigger.event.data.message[0] }}'
mode: single
- alias: AT 1800 Living Heating May to Sept
description: Simple automation to bring the living area up to preferred temperatures
during the colder months of the year
trigger:
- platform: time
at: '18:00:00'
condition:
- condition: state
entity_id: input_boolean.ducted_heating_automations_enabled
state: 'on'
enabled: false
alias: This ties into my room control system, so I can easily control whether
automations are active or not. This lets me turn off all heating automations
on warm days or turn off all automations while on holiday
- condition: template
value_template: '{{ now().month in [5, 6, 7, 8, 9] }}'
alias: Month is May - Nov
action:
- service: fan.turn_on
data:
preset_mode: ITC
target:
entity_id:
- fan.damper_living
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- service: climate.set_hvac_mode
data:
hvac_mode: heat
target:
entity_id: climate.ac_daikin
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- if:
- condition: numeric_state
entity_id: climate.itc_living
attribute: temperature
below: 23
then:
- service: climate.set_temperature
metadata: {}
data:
temperature: 23
target:
entity_id: climate.itc_living
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- service: climate.set_fan_mode
data:
fan_mode: high
target:
entity_id: climate.ac_daikin
- delay:
hours: 0
minutes: 10
seconds: 0
milliseconds: 0
- service: fan.turn_on
data:
preset_mode: Damper
target:
entity_id:
- fan.damper_master
- fan.damper_small_bedroom
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.set_percentage
data:
percentage: 5
target:
entity_id:
- fan.damper_master
- fan.damper_small_bedroom
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.turn_on
data:
preset_mode: ITC
target:
entity_id:
- fan.damper_master
- fan.damper_small_bedroom
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- service: climate.set_temperature
data:
temperature: 20
target:
entity_id:
- climate.itc_master
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- service: climate.set_temperature
data:
temperature: 20
target:
entity_id: climate.itc_small_bedroom
- delay:
hours: 0
minutes: 10
seconds: 0
milliseconds: 0
- service: climate.set_fan_mode
data:
fan_mode: medium
target:
entity_id: climate.ac_daikin
mode: single
- alias: AT Guest Spill Fix Heat
description: If guest bedroom damper is slightly open for 30 seconds, and the current
temperature is below or equal to the target temperature, open the damper wider
to prevent lounge overheat. This is only enabled at night as during the day it
doesnt matter.
trigger:
- platform: numeric_state
entity_id: fan.damper_guest
for:
hours: 0
minutes: 0
seconds: 30
attribute: percentage
below: 21
above: 1
condition:
- condition: device
device_id: airtouch4_device_id
domain: climate
entity_id: climate.ac_daikin
type: is_hvac_mode
hvac_mode: heat
- condition: state
entity_id: fan.damper_guest
state: 'on'
- condition: state
entity_id: climate.itc_guest
attribute: preset_mode
state: ITC
- condition: time
before: 07:00:00
after: '13:00:00'
enabled: false
- condition: template
value_template: '{{ state_attr("climate.itc_guest", "current_temperature") - state_attr("climate.itc_guest",
"temperature") <= 0.2}}'
alias: Current room temperature is no more than 0.2 degrees above target temperature
action:
- service: climate.set_preset_mode
data:
preset_mode: Damper
target:
entity_id: fan.damper_guest
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.set_percentage
data:
percentage: 40
target:
entity_id: fan.damper_guest
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_preset_mode
data:
preset_mode: ITC
target:
entity_id: fan.damper_guest
mode: single
- alias: AT Master Spill Fix Heat
description: If Master bedroom damper is slightly open for 30 seconds, and the current
temperature is below or equal to the target temperature, open the damper wider
to prevent lounge overheat. This is only enabled at night as during the day it
doesnt matter.
trigger:
- platform: numeric_state
entity_id: fan.damper_master
for:
hours: 0
minutes: 0
seconds: 30
attribute: percentage
below: 21
above: 1
condition:
- condition: device
device_id: airtouch4_device_id
domain: climate
entity_id: climate.ac_daikin
type: is_hvac_mode
hvac_mode: heat
- condition: state
entity_id: fan.damper_master
state: 'on'
- condition: state
entity_id: climate.itc_master
attribute: preset_mode
state: ITC
- condition: time
before: 07:00:00
after: '16:00:00'
enabled: false
- alias: Current room temperature is no more than 0.2 degrees above target temperature
condition: template
value_template: '{{ state_attr("climate.itc_master", "current_temperature") -
state_attr("climate.itc_master", "temperature") <= 0.2}}'
action:
- service: climate.set_preset_mode
data:
preset_mode: Damper
target:
entity_id:
- climate.itc_master
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: fan.set_percentage
data:
percentage: 40
target:
entity_id: fan.damper_master
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: climate.set_preset_mode
data:
preset_mode: ITC
target:
entity_id:
- climate.itc_master
trace:
stored_traces: 50
mode: single
- alias: AT Master Overnight Limit Damper Overheat Overcool 2200 - 0700
description: When Master bedroom damper is open wider than 66% for 5 seconds at
night close the damper down. If this is not done the room tends to get really
hot while heating is on. For smaller bedrooms I tend to set the limits lower -
for a small bedroom if the damper is over 58% I reset the damper to 50%
trigger:
- platform: numeric_state
entity_id:
- fan.damper_master
for:
hours: 0
minutes: 0
seconds: 5
attribute: percentage
above: 66
condition:
- condition: device
device_id: airtouch4_device_id
domain: climate
entity_id: climate.ac_daikin
type: is_hvac_mode
hvac_mode: heat
enabled: false
- alias: Ducted Daikin is in heating or cooling mode
condition: or
conditions:
- condition: state
entity_id: climate.ac_daikin
state: cool
- condition: state
entity_id: climate.ac_daikin
state: heat
- condition: state
entity_id: fan.damper_master
state: 'on'
- condition: state
entity_id: climate.itc_master
attribute: preset_mode
state: ITC
- condition: time
before: 07:30:00
after: '22:00:00'
action:
- service: climate.set_preset_mode
data:
preset_mode: Damper
target:
entity_id: climate.itc_master
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: fan.set_percentage
data:
percentage: 65
target:
entity_id: fan.damper_master
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: climate.set_preset_mode
data:
preset_mode: ITC
target:
entity_id: climate.itc_master
enabled: true
mode: single
- alias: AT Heating Spill Bedrooms
description: Alerts if any spill goes into the bedrooms in heat mode. Multiple alerts
to get attention, then voice alert.
trigger:
- platform: state
entity_id:
- binary_sensor.zone_spill_guest
to: 'on'
enabled: false
- platform: state
entity_id:
- binary_sensor.zone_spill_small_bedroom
to: 'on'
- platform: state
entity_id:
- binary_sensor.zone_spill_master
to: 'on'
condition:
- condition: state
entity_id: climate.ac_daikin
state: heat
action:
- service: climate.set_preset_mode
data:
preset_mode: Damper
target:
entity_id:
- climate.itc_living
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 250
- service: fan.set_percentage
data:
percentage: 100
target:
entity_id:
- fan.damper_living
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: climate.set_preset_mode
data:
preset_mode: ITC
target:
entity_id:
- climate.itc_living
- delay:
hours: 0
minutes: 0
seconds: 0
milliseconds: 500
- service: fan.turn_on
metadata: {}
data: {}
target:
entity_id: fan.damper_living
- service: notify.mobile_app_devicename
data:
message: Heating spill into bedrooms. Lounge damper fully opened to mitigate
data:
ttl: 0
priority: high
channel: alarm_stream
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: notify.mobile_app_devicename
data:
data:
ttl: 0
priority: high
channel: alarm_stream
message: Heating spill into bedrooms. Lounge damper fully opened to mitigate
- delay:
hours: 0
minutes: 0
seconds: 1
milliseconds: 0
- service: notify.mobile_app_devicename
data:
message: TTS
title: Testing test test
data:
ttl: 0
priority: high
channel: alarm_stream_max
tts_text: Attention! Attention! Heat is spilling into the bedrooms! Change
spill settings!
mode: single