- 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