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