[ { "id": "Air Quality Alerts (Hourly Notification)", "automation": "- alias: Air Quality Alerts (Hourly Notification)\n description: 'Notify when air quality exceeds thresholds.\n\n '\n triggers:\n - entity_id: sensor.air_monitor_lite_7f01_carbon_dioxide\n above: 750\n for: 01:00:00\n trigger: numeric_state\n - entity_id: sensor.pm25_5min_avg\n above: 3\n for: 01:00:00\n trigger: numeric_state\n - entity_id: sensor.pm10_5min_avg\n above: 5\n for: 01:00:00\n trigger: numeric_state\n - entity_id: sensor.air_monitor_lite_7f01_carbon_dioxide\n above: 850\n for: 00:05:00\n trigger: numeric_state\n - entity_id: sensor.pm25_5min_avg\n above: 5\n trigger: numeric_state\n - entity_id: sensor.pm10_5min_avg\n above: 15\n trigger: numeric_state\n conditions:\n - condition: template\n value_template: '{% set last = state_attr(''automation.air_quality_alerts_hourly_notification'',''last_triggered'')\n %} {{ (now() - last).total_seconds() > 3600 if last else true }}\n\n '\n actions:\n - data:\n title: 🚨 Air Quality Alert\n message: \"{{ area_name(trigger.entity_id) or 'Home' }} – {{ state_attr(trigger.entity_id,'friendly_name')\\\n \\ or trigger.entity_id.split('.')[-1] }} is elevated: {{ states(trigger.entity_id)\\\n \\ }} {{ state_attr(trigger.entity_id,'unit_of_measurement') or '' }}. {% if\\\n \\ trigger.for and trigger.for.total_seconds() >= 3600 %}\\n Sustained WHO-level\\\n \\ exceedance.\\n{% else %}\\n Air quality spike.\\n{% endif %}\\n\"\n action: notify.mobile_app_iphone_2023\n mode: single", "config": [ { "name": "air monitor lite carbon dioxide sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.air_monitor_lite_7f01_carbon_dioxide", "device_id": null } }, { "name": "pm25 5min avg sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.pm25_5min_avg", "device_id": null } }, { "name": "pm10 5min avg sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.pm10_5min_avg", "device_id": null } }, { "name": "mobile app iphone 2023", "room": "home", "type": "notify", "id": { "entity_id": "notify.mobile_app_iphone_2023", "device_id": null } }, { "name": "air quality alerts hourly notification automation", "room": "home", "type": "automation", "id": { "entity_id": "automation.air_quality_alerts_hourly_notification", "device_id": null } } ] }, { "id": "Voice Announcements", "automation": "- alias: Voice Announcements\n description: Add Voice Announcements to Living Room To-Do List\n triggers:\n - at: '17:55:00'\n id: high_rates_start_warning\n trigger: time\n - at: '21:00:00'\n id: high_rates_end_announcement\n trigger: time\n actions:\n - choose:\n - conditions:\n - condition: trigger\n id: high_rates_start_warning\n sequence:\n - data:\n item: High power rates are in effect soon.\n target:\n entity_id: todo.living_room_notifications\n action: todo.add_item\n - conditions:\n - condition: trigger\n id: high_rates_end_announcement\n sequence:\n - data:\n item: Power is cheap again.\n target:\n entity_id: todo.living_room_notifications\n action: todo.add_item\n mode: single", "config": [ { "name": "living room notifications todo", "room": "living_room", "type": "todo", "id": { "entity_id": "todo.living_room_notifications", "device_id": null } } ] }, { "id": "Dining Room Motion Lights", "automation": "- alias: Dining Room Motion Lights\n description: ''\n triggers:\n - entity_id: binary_sensor.dining_room_hue_motion_sensor\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.dining_room_hue_motion_sensor\n to: 'off'\n for: 00:10:00\n trigger: state\n conditions: []\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.dining_room_hue_motion_sensor\n state: 'on'\n - condition: numeric_state\n entity_id: sensor.dining_room_hue_motion_sensor_illuminance\n below: 18\n sequence:\n - target:\n entity_id: light.dining_room_lights\n data: \"{% if is_state('input_boolean.night_light_mode', 'on') %} {\\n \\\"rgb_color\\\"\\\n : {{ states('input_text.night_light_color_tr').split(',') | map('int') |\\\n \\ list }},\\n \\\"brightness\\\": 255,\\n \\\"transition\\\": 4\\n} {% else %} {\\n\\\n \\ \\\"color_temp_kelvin\\\": 2700,\\n \\\"brightness\\\": 255,\\n \\\"transition\\\"\\\n : 4\\n} {% endif %}\\n\"\n action: light.turn_on\n - conditions:\n - condition: state\n entity_id: binary_sensor.dining_room_hue_motion_sensor\n state: 'off'\n sequence:\n - target:\n entity_id: light.dining_room_lights\n data:\n transition: 4\n action: light.turn_off\n mode: restart", "config": [ { "name": "dining room hue motion sensor", "room": "dining_room", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.dining_room_hue_motion_sensor", "device_id": null } }, { "name": "dining room hue motion sensor illuminance", "room": "dining_room", "type": "sensor", "id": { "entity_id": "sensor.dining_room_hue_motion_sensor_illuminance", "device_id": null } }, { "name": "dining room lights", "room": "dining_room", "type": "light", "id": { "entity_id": "light.dining_room_lights", "device_id": null } }, { "name": "night light mode boolean", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.night_light_mode", "device_id": null } }, { "name": "night light color tr text", "room": "home", "type": "input_text", "id": { "entity_id": "input_text.night_light_color_tr", "device_id": null } } ] }, { "id": "Downstairs Bathroom Motion Lights", "automation": "- alias: Downstairs Bathroom Motion Lights\n description: ''\n triggers:\n - entity_id: binary_sensor.ikea_motion_2_occupancy\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.ikea_motion_2_occupancy\n to: 'off'\n trigger: state\n - entity_id: binary_sensor.tuya_motion_1_occupancy\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.tuya_motion_1_occupancy\n to: 'off'\n trigger: state\n actions:\n - choose:\n - conditions:\n - condition: or\n conditions:\n - condition: state\n entity_id: binary_sensor.ikea_motion_2_occupancy\n state: 'on'\n - condition: state\n entity_id: binary_sensor.tuya_motion_1_occupancy\n state: 'on'\n sequence:\n - target:\n entity_id: light.downstairs_bathroom_lights\n data:\n transition: 1\n brightness_pct: '{{ brightness_level }}'\n action: light.turn_on\n - conditions:\n - condition: state\n entity_id: binary_sensor.ikea_motion_2_occupancy\n state: 'off'\n - condition: state\n entity_id: binary_sensor.tuya_motion_1_occupancy\n state: 'off'\n sequence:\n - delay: 00:10:00\n - condition: state\n entity_id: binary_sensor.ikea_motion_2_occupancy\n state: 'off'\n - condition: state\n entity_id: binary_sensor.tuya_motion_1_occupancy\n state: 'off'\n - target:\n entity_id: light.downstairs_bathroom_lights\n data:\n transition: 4\n action: light.turn_off\n variables:\n night_brightness: 20\n day_brightness: 50\n now_hour: '{{ now().hour }}'\n is_night: '{{ now_hour >= 23 or now_hour < 6 }}'\n brightness_level: '{{ night_brightness if is_night else day_brightness }}'\n mode: restart", "config": [ { "name": "ikea motion 2 occupancy", "room": "bathroom", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_motion_2_occupancy", "device_id": null } }, { "name": "tuya motion 1 occupancy", "room": "bathroom", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tuya_motion_1_occupancy", "device_id": null } }, { "name": "downstairs bathroom lights", "room": "bathroom", "type": "light", "id": { "entity_id": "light.downstairs_bathroom_lights", "device_id": null } } ] }, { "id": "Downstairs Hallway Motion Lights", "automation": "- alias: Downstairs Hallway Motion Lights\n triggers:\n - entity_id: binary_sensor.mmwave_1_presence\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.mmwave_1_presence\n to: 'off'\n for: 00:00:30\n trigger: state\n conditions:\n - condition: state\n entity_id: input_boolean.motion_lights_master_switch\n state: 'on'\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.mmwave_1_presence\n state: 'on'\n sequence:\n - target:\n entity_id: light.downstairs_hallway_lights\n data: \"{% if is_state('input_boolean.night_light_mode', 'on') %} {\\n \\\"rgb_color\\\"\\\n : {{ states('input_text.night_light_color_tr').split(',') | map('int') |\\\n \\ list }},\\n \\\"brightness_pct\\\": 25\\n} {% else %} {\\n \\\"brightness_pct\\\"\\\n : 25,\\n \\\"color_temp_kelvin\\\": 2700\\n} {% endif %}\\n\"\n action: light.turn_on\n - conditions:\n - condition: state\n entity_id: binary_sensor.mmwave_1_presence\n state: 'off'\n sequence:\n - target:\n entity_id: light.downstairs_hallway_lights\n action: light.turn_off\n data: {}\n mode: restart", "config": [ { "name": "night light mode boolean", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.night_light_mode", "device_id": null } }, { "name": "night light color tr text", "room": "home", "type": "input_text", "id": { "entity_id": "input_text.night_light_color_tr", "device_id": null } }, { "name": "mmwave 1 presence", "room": "hallway", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.mmwave_1_presence", "device_id": null } }, { "name": "motion lights master switch", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.motion_lights_master_switch", "device_id": null } }, { "name": "downstairs hallway lights", "room": "hallway", "type": "light", "id": { "entity_id": "light.downstairs_hallway_lights", "device_id": null } } ] }, { "id": "Dryer Reminder After Wash", "automation": "- alias: Dryer Reminder After Wash\n description: Sends hourly dryer reminders after washer finishes or when manually\n turned on\n triggers:\n - alias: Washer finished\n trigger: template\n value_template: '{{ is_state(''sensor.washer_current_status'', ''end'') }}'\n - alias: Reminder switch on\n trigger: state\n entity_id: input_boolean.dryer_reminder\n to: 'on'\n - alias: Reminder switch off\n trigger: state\n entity_id: input_boolean.dryer_reminder\n to: 'off'\n actions:\n - choose:\n - conditions:\n - condition: trigger\n id: Reminder switch off\n sequence: []\n - conditions:\n - condition: trigger\n id:\n - Washer finished\n - Reminder switch on\n sequence:\n - target:\n entity_id: input_boolean.dryer_reminder\n action: input_boolean.turn_on\n - repeat:\n sequence:\n - target:\n entity_id: todo.living_room_notifications\n data:\n item: Your dryer is ready to run!\n action: todo.add_item\n - delay: 01:00:00\n until:\n - condition: state\n entity_id: input_boolean.dryer_reminder\n state: 'off'\n - condition: template\n value_template: '{{ repeat.index >= 6 }}'\n - target:\n entity_id: input_boolean.dryer_reminder\n action: input_boolean.turn_off\n mode: restart", "config": [ { "name": "living room notifications todo", "room": "living_room", "type": "todo", "id": { "entity_id": "todo.living_room_notifications", "device_id": null } }, { "name": "washer current status sensor", "room": "laundry", "type": "sensor", "id": { "entity_id": "sensor.washer_current_status", "device_id": null } }, { "name": "dryer reminder boolean", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.dryer_reminder", "device_id": null } } ] }, { "id": "Front Lights - Sunset to Sunrise", "automation": "- alias: Front Lights - Sunset to Sunrise\n trigger:\n - platform: state\n entity_id: sun.sun\n condition: []\n action:\n - choose:\n - conditions:\n - condition: state\n entity_id: sun.sun\n state: above_horizon\n sequence:\n - service: light.turn_off\n target:\n entity_id: light.front_lights\n - conditions:\n - condition: state\n entity_id: sun.sun\n state: below_horizon\n sequence:\n - service: light.turn_on\n target:\n entity_id: light.front_lights\n data:\n color_temp_kelvin: 2700\n brightness_pct: 5\n mode: single", "config": [ { "name": "sun sun", "room": "home", "type": "sun", "id": { "entity_id": "sun.sun", "device_id": null } }, { "name": "front lights", "room": "front", "type": "light", "id": { "entity_id": "light.front_lights", "device_id": null } } ] }, { "id": "Laundry Room Motion Lights", "automation": "- alias: Laundry Room Motion Lights\n description: ''\n triggers:\n - entity_id:\n - binary_sensor.tuya_motion_2_occupancy\n - binary_sensor.tuya_motion_3_occupancy\n to: 'on'\n trigger: state\n - entity_id:\n - binary_sensor.tuya_motion_2_occupancy\n - binary_sensor.tuya_motion_3_occupancy\n to: 'off'\n trigger: state\n actions:\n - choose:\n - conditions:\n - condition: or\n conditions:\n - condition: state\n entity_id: binary_sensor.tuya_motion_2_occupancy\n state: 'on'\n - condition: state\n entity_id: binary_sensor.tuya_motion_3_occupancy\n state: 'on'\n sequence:\n - target:\n entity_id: light.laundry_room_lights\n data:\n brightness: 150\n color_temp_kelvin: 4000\n action: light.turn_on\n - conditions:\n - condition: state\n entity_id: binary_sensor.tuya_motion_2_occupancy\n state: 'off'\n - condition: state\n entity_id: binary_sensor.tuya_motion_3_occupancy\n state: 'off'\n sequence:\n - delay: 00:01:00\n - target:\n entity_id: light.laundry_room_lights\n data: {}\n action: light.turn_off\n mode: restart", "config": [ { "name": "tuya motion 2 occupancy", "room": "laundry", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tuya_motion_2_occupancy", "device_id": null } }, { "name": "tuya motion 3 occupancy", "room": "laundry", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tuya_motion_3_occupancy", "device_id": null } }, { "name": "laundry room lights", "room": "laundry", "type": "light", "id": { "entity_id": "light.laundry_room_lights", "device_id": null } } ] }, { "id": "Living Room Motion Lights", "automation": "- alias: Living Room Motion Lights\n description: ''\n triggers:\n - entity_id: binary_sensor.hue_motion_sensor\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.hue_motion_sensor\n to: 'off'\n for: 00:10:00\n trigger: state\n conditions:\n - condition: state\n entity_id: input_boolean.motion_lights_master_switch\n state: 'on'\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_sensor\n state: 'on'\n - condition: numeric_state\n entity_id: sensor.hue_motion_sensor_illuminance\n below: 10\n - condition: state\n entity_id: input_boolean.night_light_mode\n state: 'off'\n sequence:\n - target:\n entity_id: light.living_room_accents\n action: light.turn_on\n data:\n color_temp_kelvin: 2000\n brightness_pct: 10\n - target:\n entity_id: light.living_room_accents\n action: light.turn_on\n data:\n color_temp_kelvin: 2000\n brightness_pct: 11\n - target:\n entity_id: light.living_room_lights\n action: light.turn_on\n data:\n color_temp_kelvin: 2700\n brightness_pct: 100\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_sensor\n state: 'on'\n - condition: numeric_state\n entity_id: sensor.hue_motion_sensor_illuminance\n below: 10\n - condition: state\n entity_id: light.living_room_lights\n state: 'off'\n sequence:\n - target:\n entity_id: light.living_room_lights\n action: light.turn_on\n data:\n rgb_color: '{{ states(''input_text.night_light_color_hue'').split('','')\n | map(''int'') | list }}\n\n '\n brightness_pct: 41\n transition: 4\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_sensor\n state: 'on'\n - condition: numeric_state\n entity_id: sensor.hue_motion_sensor_illuminance\n below: 10\n sequence:\n - target:\n entity_id: light.living_room_lights\n action: light.turn_on\n data:\n rgb_color: '{{ states(''input_text.night_light_color_hue'').split('','')\n | map(''int'') | list }}\n\n '\n transition: 4\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_sensor\n state: 'off'\n sequence:\n - target:\n entity_id: light.living_room_accents\n action: light.turn_off\n data:\n transition: 10\n - target:\n entity_id: light.living_room_lights\n action: light.turn_off\n data:\n transition: 10\n mode: restart", "config": [ { "name": "night light mode boolean", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.night_light_mode", "device_id": null } }, { "name": "motion lights master switch", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.motion_lights_master_switch", "device_id": null } }, { "name": "hue motion sensor", "room": "living_room", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.hue_motion_sensor", "device_id": null } }, { "name": "hue motion sensor illuminance", "room": "living_room", "type": "sensor", "id": { "entity_id": "sensor.hue_motion_sensor_illuminance", "device_id": null } }, { "name": "living room accents", "room": "living_room", "type": "light", "id": { "entity_id": "light.living_room_accents", "device_id": null } }, { "name": "living room lights", "room": "living_room", "type": "light", "id": { "entity_id": "light.living_room_lights", "device_id": null } }, { "name": "night light color hue text", "room": "home", "type": "input_text", "id": { "entity_id": "input_text.night_light_color_hue", "device_id": null } } ] }, { "id": "Read Queued Announcements in Living Room", "automation": "- alias: Read Queued Announcements in Living Room\n description: Announce pending to-do items from Living Room Notifications when Hue\n motion sensor is on, with script logic embedded.\n triggers:\n - entity_id: binary_sensor.hue_motion_sensor\n to: 'on'\n trigger: state\n - trigger: state\n entity_id: todo.living_room_notifications\n conditions:\n - condition: and\n conditions:\n - condition: template\n value_template: '{{ states.todo.living_room_notifications.state | int > 0 }}\n\n '\n - condition: state\n entity_id: binary_sensor.hue_motion_sensor\n state: 'on'\n actions:\n - data:\n status: needs_action\n target:\n entity_id: todo.living_room_notifications\n response_variable: living_room_notifications_data\n action: todo.get_items\n - variables:\n notification_items: '{{ living_room_notifications_data[''todo.living_room_notifications''][''items'']\n }}'\n - repeat:\n count: '{{ notification_items | length }}'\n sequence:\n - variables:\n current_item_index: '{{ repeat.index - 1 }}'\n current_todo_item: '{{ notification_items[current_item_index] }}'\n - data:\n media_player_entity_id: media_player.living_room_display\n message: Attention! {{ current_todo_item.summary }}\n target:\n entity_id: tts.google_translate_en_com\n action: tts.speak\n - delay:\n seconds: '{{ (current_todo_item.summary | length * 0.11) | round(0) + 2\n }}'\n - data:\n item: '{{ current_todo_item.uid }}'\n status: completed\n target:\n entity_id: todo.living_room_notifications\n action: todo.update_item\n mode: single", "config": [ { "name": "living room notifications todo", "room": "living_room", "type": "todo", "id": { "entity_id": "todo.living_room_notifications", "device_id": null } }, { "name": "hue motion sensor", "room": "living_room", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.hue_motion_sensor", "device_id": null } }, { "name": "living room display media player", "room": "living_room", "type": "media_player", "id": { "entity_id": "media_player.living_room_display", "device_id": null } }, { "name": "google translate tts", "room": "home", "type": "tts", "id": { "entity_id": "tts.google_translate_en_com", "device_id": null } }, { "name": "Living Room Display", "room": "Living Room", "type": "media_player", "id": { "entity_id": "media_player.living_room", "device_id": null } } ] }, { "id": "Low Humidity Alert (Hourly Notification)", "automation": "- alias: Low Humidity Alert (Hourly Notification)\n description: 'Send a push notification if any humidity sensor goes below its threshold,\n but no more than once per hour.\n\n '\n triggers:\n - entity_id: sensor.sonoff_temp_humidity_2_humidity_2\n below: 38\n trigger: numeric_state\n - entity_id: sensor.sonoff_snzb_02d_humidity_2\n below: 36\n trigger: numeric_state\n conditions:\n - condition: template\n value_template: '{% set last = state_attr(''automation.low_humidity_alert_hourly_notification'',\n ''last_triggered'') %} {{ (now() - last).total_seconds() > 3600 if last else\n true }}\n\n '\n actions:\n - data:\n title: 🚨 Low Humidity Alert\n message: '{{ area_name(trigger.entity_id) }} humidity dropped below its threshold.\n Current: {{ states(trigger.entity_id) }}%\n\n '\n action: notify.mobile_app_iphone_2023\n mode: single", "config": [ { "name": "mobile app iphone 2023", "room": "home", "type": "notify", "id": { "entity_id": "notify.mobile_app_iphone_2023", "device_id": null } }, { "name": "sonoff temp humidity 2 humidity 2 sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.sonoff_temp_humidity_2_humidity_2", "device_id": null } }, { "name": "sonoff snzb 02d humidity 2 sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.sonoff_snzb_02d_humidity_2", "device_id": null } }, { "name": "low humidity alert hourly notification automation", "room": "home", "type": "automation", "id": { "entity_id": "automation.low_humidity_alert_hourly_notification", "device_id": null } } ] }, { "id": "Master Bedroom Motion Light", "automation": "- alias: Master Bedroom Motion Light\n description: ''\n triggers:\n - entity_id: binary_sensor.hue_motion_4\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.hue_motion_4\n to: 'off'\n for: 00:01:00\n trigger: state\n conditions:\n - condition: state\n entity_id: input_boolean.motion_lights_master_switch\n state: 'on'\n - condition: sun\n after: sunset\n after_offset: -01:00:00\n before: sunrise\n before_offset: 00:30:00\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_4\n state: 'on'\n - condition: time\n after: '20:00:00'\n before: 06:00:00\n sequence:\n - target:\n entity_id: light.ufo_lamp\n data:\n rgb_color:\n - 255\n - 0\n - 0\n brightness: 1\n action: light.turn_on\n - target:\n entity_id: light.ufo_lamp\n data:\n rgb_color:\n - 255\n - 0\n - 0\n brightness: 255\n action: light.turn_on\n - action: switch.turn_off\n target:\n entity_id:\n - switch.tr_plug_1\n - switch.tr_plug_3\n - switch.shelly_plug_1\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_4\n state: 'on'\n - condition: time\n after: '15:00:00'\n before: '20:00:00'\n sequence:\n - target:\n entity_id: light.ufo_lamp\n data:\n color_temp_kelvin: 2000\n brightness: 1\n action: light.turn_on\n - target:\n entity_id: light.ufo_lamp\n data:\n color_temp_kelvin: 2000\n brightness: 255\n action: light.turn_on\n - action: switch.turn_on\n target:\n entity_id:\n - switch.tr_plug_1\n - switch.tr_plug_3\n - switch.shelly_plug_1\n - conditions:\n - condition: state\n entity_id: binary_sensor.hue_motion_4\n state: 'off'\n sequence:\n - target:\n entity_id: light.ufo_lamp\n data: {}\n action: light.turn_off\n - action: switch.turn_off\n target:\n entity_id:\n - switch.tr_plug_1\n - switch.tr_plug_3\n - switch.shelly_plug_1\n mode: restart", "config": [ { "name": "motion lights master switch", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.motion_lights_master_switch", "device_id": null } }, { "name": "hue motion 4", "room": "bedroom", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.hue_motion_4", "device_id": null } }, { "name": "ufo lamp", "room": "bedroom", "type": "light", "id": { "entity_id": "light.ufo_lamp", "device_id": null } }, { "name": "tr plug 1 switch", "room": "bedroom", "type": "switch", "id": { "entity_id": "switch.tr_plug_1", "device_id": null } }, { "name": "tr plug 3 switch", "room": "bedroom", "type": "switch", "id": { "entity_id": "switch.tr_plug_3", "device_id": null } }, { "name": "shelly plug 1 switch", "room": "bedroom", "type": "switch", "id": { "entity_id": "switch.shelly_plug_1", "device_id": null } } ] }, { "id": "Master Closet Motion Lights", "automation": "- alias: Master Closet Motion Lights\n description: ''\n triggers:\n - entity_id: binary_sensor.ikea_motion_3_occupancy\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.ikea_motion_3_occupancy\n to: 'off'\n trigger: state\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.ikea_motion_3_occupancy\n state: 'on'\n sequence:\n - data:\n entity_id: light.master_closet_lights\n transition: 1\n brightness: '{{ brightness_level }}'\n action: light.turn_on\n - conditions:\n - condition: state\n entity_id: binary_sensor.ikea_motion_3_occupancy\n state: 'off'\n sequence:\n - delay: 00:00:30\n - data:\n entity_id: light.master_closet_lights\n transition: 4\n action: light.turn_off\n variables:\n night_brightness: 75\n day_brightness: 255\n now_hour: '{{ now().hour }}'\n is_night: '{{ now_hour >= 23 or now_hour < 6 }}'\n brightness_level: '{{ night_brightness if is_night else day_brightness }}'\n mode: restart", "config": [ { "name": "ikea motion 3 occupancy", "room": "closet", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_motion_3_occupancy", "device_id": null } }, { "name": "master closet lights", "room": "closet", "type": "light", "id": { "entity_id": "light.master_closet_lights", "device_id": null } } ] }, { "id": "Pantry motion lights", "automation": "- alias: Pantry motion lights\n description: ''\n triggers:\n - entity_id: binary_sensor.ikea_motion_1_occupancy\n to: 'on'\n trigger: state\n - entity_id: binary_sensor.ikea_motion_1_occupancy\n to: 'off'\n for: 00:00:30\n trigger: state\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.ikea_motion_1_occupancy\n state: 'on'\n sequence:\n - target:\n entity_id: light.pantry_lights\n action: light.turn_on\n data:\n brightness: 38\n - conditions:\n - condition: state\n entity_id: binary_sensor.ikea_motion_1_occupancy\n state: 'off'\n sequence:\n - target:\n entity_id: light.pantry_lights\n action: light.turn_off\n data: {}\n mode: restart", "config": [ { "name": "ikea motion 1 occupancy", "room": "pantry", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_motion_1_occupancy", "device_id": null } }, { "name": "pantry lights", "room": "pantry", "type": "light", "id": { "entity_id": "light.pantry_lights", "device_id": null } } ] }, { "id": "HVAC for time-of-use rates", "automation": "- alias: HVAC for time-of-use rates\n description: HVAC shallow, long cool in summer to take advantage of time-of-use\n rates.\n triggers:\n - at:\n - '21:50:00'\n - '22:40:00'\n - '23:30:00'\n - '17:40:00'\n - '17:55:00'\n - '21:01:00'\n trigger: time\n conditions:\n - condition: template\n value_template: '{{ now().month in [5, 6, 7, 8, 9] }}'\n actions:\n - variables:\n time_action_map:\n '21:50': decrease_1\n '22:40': decrease_1\n '23:30': decrease_1\n '17:40': decrease_1\n '17:55': 'off'\n '21:01': 'on'\n current_time: '{{ now().strftime(''%H:%M'') }}'\n - data:\n action: '{{ time_action_map[current_time] }}'\n action: python_script.hvac_pre_cool_and_time_of_use\n mode: single", "config": [] }, { "id": "Projector IR control", "automation": "- alias: Projector IR control\n triggers:\n - topic: zigbee2mqtt/Button 1/action\n trigger: mqtt\n - entity_id:\n - media_player.xbox_2\n - media_player.living_room\n trigger: state\n actions:\n - choose:\n - conditions:\n - condition: template\n value_template: '{{ trigger.platform == ''mqtt'' and trigger.payload == ''single''\n }}'\n sequence:\n - target:\n entity_id: text.moes_ir_blaster_ir_code_to_send\n data:\n value: '{{ ir_on }}'\n action: text.set_value\n - conditions:\n - condition: template\n value_template: '{{ trigger.platform == ''mqtt'' and trigger.payload == ''double''\n }}'\n sequence:\n - repeat:\n count: 2\n sequence:\n - target:\n entity_id: text.moes_ir_blaster_ir_code_to_send\n data:\n value: '{{ ir_off }}'\n action: text.set_value\n - delay:\n milliseconds: 2000\n - conditions:\n - condition: template\n value_template: \"{{ trigger.platform == 'state'\\n and trigger.to_state.state\\\n \\ == 'on' }}\\n\"\n sequence:\n - target:\n entity_id: text.moes_ir_blaster_ir_code_to_send\n data:\n value: '{{ ir_on }}'\n action: text.set_value\n - conditions:\n - condition: template\n value_template: \"{{ trigger.platform == 'state'\\n and trigger.to_state.state\\\n \\ in ['off','standby','unavailable'] }}\\n\"\n sequence:\n - delay:\n seconds: '{{ debounce_seconds }}'\n - condition: template\n value_template: \"{{ states('media_player.xbox_2') == 'off'\\n and states('media_player.living_room')\\\n \\ in ['off','standby','unavailable'] }}\\n\"\n - repeat:\n count: 2\n sequence:\n - target:\n entity_id: text.moes_ir_blaster_ir_code_to_send\n data:\n value: '{{ ir_off }}'\n action: text.set_value\n - delay:\n milliseconds: 2000\n mode: single\n variables:\n ir_on: B0UjixE8ApYGgAPgCwHgAxtAC0AB4AcH4AcBwB9AAUAL4AcDQAHAE0ABAbSg4HqHAgI8Ag==\n ir_off: B3QjfRE9ApMGgAPgCwHgAxtAC0AB4A8HwAHAH0ABwAtAB8ADQAHgAwsBsqDg/YdghwICPQI=\n debounce_seconds: 5", "config": [ { "name": "xbox 2 media player", "room": "living_room", "type": "media_player", "id": { "entity_id": "media_player.xbox_2", "device_id": null } }, { "name": "moes ir blaster ir code to send text", "room": "home", "type": "text", "id": { "entity_id": "text.moes_ir_blaster_ir_code_to_send", "device_id": null } }, { "name": "Living Room Display", "room": "Living Room", "type": "media_player", "id": { "entity_id": "media_player.living_room", "device_id": null } } ] }, { "id": "Schedule - Switches On/Off (with Month Filtering)", "automation": "- alias: Schedule - Switches On/Off (with Month Filtering)\n triggers:\n - minutes: /1\n trigger: time_pattern\n actions:\n - variables:\n current_time: '{{ now().strftime(''%H:%M'') }}'\n current_month: '{{ now().month }}'\n - repeat:\n for_each: '{{ schedule.keys() | list }}'\n sequence:\n - variables:\n entity_id: '{{ repeat.item }}'\n config: '{{ schedule[entity_id] }}'\n - if:\n - condition: template\n value_template: '{{ not config.months or current_month in config.months\n }}'\n then:\n - choose:\n - conditions:\n - condition: template\n value_template: '{{ current_time == config.on }}'\n sequence:\n - target:\n entity_id: '{{ entity_id }}'\n action: switch.turn_on\n - conditions:\n - condition: template\n value_template: '{{ current_time == config.off }}'\n sequence:\n - target:\n entity_id: '{{ entity_id }}'\n action: switch.turn_off\n variables:\n schedule:\n switch.fan:\n 'on': '15:00'\n 'off': '22:00'\n months:\n - 6\n - 7\n - 8\n - 9\n mode: queued", "config": [ { "name": "fan switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.fan", "device_id": null } } ] }, { "id": "Auto-set Night Light Mode", "automation": "- alias: Auto-set Night Light Mode\n description: Enable night light mode at 7 PM and disable it at 8 AM\n triggers:\n - at:\n - '23:00:00'\n - 08:00:00\n trigger: time\n conditions: []\n actions:\n - variables:\n time_action_map:\n '23:00': turn_on\n 08:00: turn_off\n current_time: '{{ now().strftime(''%H:%M'') }}'\n - target:\n entity_id: input_boolean.night_light_mode\n action: input_boolean.{{ time_action_map[current_time] }}\n mode: single", "config": [ { "name": "night light mode boolean", "room": "home", "type": "input_boolean", "id": { "entity_id": "input_boolean.night_light_mode", "device_id": null } } ] }, { "id": "Auto turn off switches after delay", "automation": "- alias: Auto turn off switches after delay\n mode: restart\n trigger:\n - platform: state\n entity_id:\n - switch.tr_plug_4\n - switch.ikea_smart_plug_1\n - switch.ikea_smart_plug_3\n to: 'on'\n variables:\n timeouts:\n switch.tr_plug_4: 3600\n switch.ikea_smart_plug_1: 14400\n switch.ikea_smart_plug_3: 14400\n triggered_switch: '{{ trigger.entity_id }}'\n delay_seconds: '{{ timeouts[triggered_switch] }}'\n action:\n - delay:\n seconds: '{{ delay_seconds }}'\n - service: switch.turn_off\n target:\n entity_id: '{{ triggered_switch }}'", "config": [ { "name": "tr plug 4 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.tr_plug_4", "device_id": null } }, { "name": "ikea smart plug 1 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.ikea_smart_plug_1", "device_id": null } }, { "name": "ikea smart plug 3 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.ikea_smart_plug_3", "device_id": null } } ] }, { "id": "Tablet Charging Control", "automation": "- alias: Tablet Charging Control\n description: ''\n triggers:\n - entity_id: sensor.ipad_2023_battery_level\n below: 50\n id: ipad_low\n trigger: numeric_state\n - entity_id: sensor.ipad_2023_battery_level\n above: 80\n id: ipad_high\n trigger: numeric_state\n - entity_id: sensor.onn_battery_level\n below: 50\n id: onn_low\n trigger: numeric_state\n - entity_id: sensor.onn_battery_level\n above: 80\n id: onn_high\n trigger: numeric_state\n conditions: []\n actions:\n - choose:\n - conditions:\n - condition: template\n value_template: '{{ trigger.id == ''ipad_low'' }}'\n sequence:\n - target:\n entity_id: switch.smart_plug_4\n action: switch.turn_on\n data: {}\n - conditions:\n - condition: template\n value_template: '{{ trigger.id == ''ipad_high'' }}'\n sequence:\n - target:\n entity_id: switch.smart_plug_4\n action: switch.turn_off\n data: {}\n - conditions:\n - condition: template\n value_template: '{{ trigger.id == ''onn_low'' }}'\n sequence:\n - target:\n entity_id: switch.ikea_smart_plug_4\n action: switch.turn_on\n data: {}\n - conditions:\n - condition: template\n value_template: '{{ trigger.id == ''onn_high'' }}'\n sequence:\n - target:\n entity_id: switch.ikea_smart_plug_4\n action: switch.turn_off\n data: {}\n mode: single", "config": [ { "name": "ipad 2023 battery level sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.ipad_2023_battery_level", "device_id": null } }, { "name": "smart plug 4 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.smart_plug_4", "device_id": null } }, { "name": "onn battery level sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.onn_battery_level", "device_id": null } }, { "name": "ikea smart plug 4 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.ikea_smart_plug_4", "device_id": null } } ] }, { "id": "Tablet Charger or Battery Warning", "automation": "- alias: Tablet Charger or Battery Warning\n description: Notify if any tablet charger is inactive or if any tablet is under\n 30% battery\n triggers:\n - entity_id: switch.smart_plug_4\n for:\n hours: 48\n trigger: state\n - entity_id: switch.ikea_smart_plug_4\n for:\n hours: 9\n trigger: state\n - entity_id: sensor.ipad_2023_battery_level\n below: 30\n trigger: numeric_state\n - entity_id: sensor.onn_battery_level\n below: 30\n trigger: numeric_state\n - entity_id: sensor.samsung_a9_battery_level\n below: 30\n trigger: numeric_state\n conditions: []\n actions:\n - data:\n message: '⚠️ Charger or battery issue: {% if states(''sensor.ipad_2023_battery_level'')|float\n < 30 %} iPad: {{ states(''sensor.ipad_2023_battery_level'') }}% {% endif\n %} {% if states(''sensor.onn_battery_level'')|float < 30 %} ONN: {{ states(''sensor.onn_battery_level'')\n }}% {% endif %} {% if states(''sensor.samsung_a9_battery_level'')|float\n < 30 %} A9: {{ states(''sensor.samsung_a9_battery_level'') }}% {% endif\n %} Check charger activity and battery levels.\n\n '\n action: notify.mobile_app_iphone_2023\n mode: single", "config": [ { "name": "mobile app iphone 2023", "room": "home", "type": "notify", "id": { "entity_id": "notify.mobile_app_iphone_2023", "device_id": null } }, { "name": "ipad 2023 battery level sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.ipad_2023_battery_level", "device_id": null } }, { "name": "smart plug 4 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.smart_plug_4", "device_id": null } }, { "name": "onn battery level sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.onn_battery_level", "device_id": null } }, { "name": "ikea smart plug 4 switch", "room": "home", "type": "switch", "id": { "entity_id": "switch.ikea_smart_plug_4", "device_id": null } }, { "name": "samsung a9 battery level sensor", "room": "home", "type": "sensor", "id": { "entity_id": "sensor.samsung_a9_battery_level", "device_id": null } } ] }, { "id": "Update Calendar", "automation": "- alias: Update Calendar\n description: ''\n triggers:\n - trigger: time_pattern\n minutes: /15\n conditions: []\n actions:\n - action: homeassistant.update_entity\n metadata: {}\n data:\n entity_id:\n - calendar.family\n mode: single", "config": [ { "name": "family calendar", "room": "home", "type": "calendar", "id": { "entity_id": "calendar.family", "device_id": null } } ] }, { "id": "Upstairs Hallway Motion Lights", "automation": "- alias: Upstairs Hallway Motion Lights\n triggers:\n - entity_id: binary_sensor.hue_motion_3\n to: 'on'\n trigger: state\n actions:\n - data:\n entity_id:\n - light.upstairs_hallway_lights\n transition: 2\n brightness: '{{ brightness_level }}'\n action: light.turn_on\n - wait_for_trigger:\n - entity_id: binary_sensor.hue_motion_3\n to: 'off'\n trigger: state\n - delay: 00:00:08\n - data:\n entity_id:\n - light.upstairs_hallway_lights\n transition: 4\n action: light.turn_off\n variables:\n night_brightness: 20\n day_brightness: 200\n now_hour: '{{ now().hour }}'\n is_night: '{{ now_hour >= 23 or now_hour < 6 }}'\n brightness_level: '{{ night_brightness if is_night else day_brightness }}'\n mode: restart", "config": [ { "name": "hue motion 3", "room": "hallway", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.hue_motion_3", "device_id": null } }, { "name": "upstairs hallway lights", "room": "hallway", "type": "light", "id": { "entity_id": "light.upstairs_hallway_lights", "device_id": null } } ] }, { "id": "Water Leak Detected (Hourly Notification)", "automation": "- alias: Water Leak Detected (Hourly Notification)\n description: Send a push notification if any water sensor detects a leak, but no\n more than once per hour.\n triggers:\n - entity_id:\n - binary_sensor.ikea_leak_sensor_1_water_leak\n - binary_sensor.ikea_leak_sensor_2_water_leak\n - binary_sensor.ikea_leak_sensor_3_water_leak\n - binary_sensor.ikea_leak_sensor_4_water_leak\n - binary_sensor.ikea_leak_sensor_5_water_leak\n - binary_sensor.ikea_leak_sensor_6_water_leak\n - binary_sensor.ikea_leak_sensor_7_water_leak\n - binary_sensor.ikea_leak_sensor_8_water_leak\n - binary_sensor.ikea_leak_sensor_9_water_leak\n - binary_sensor.ikea_leak_sensor_10_water_leak\n - binary_sensor.tr_leak_1\n - binary_sensor.tr_leak_2\n - binary_sensor.tr_leak_3\n - binary_sensor.tr_leak_4\n to: 'on'\n trigger: state\n conditions:\n - condition: template\n value_template: '{% set last = state_attr(''automation.water_leak_detected_hourly_notification'',\n ''last_triggered'') %} {{ (now() - last).total_seconds() > 3600 if last else\n true }}\n\n '\n actions:\n - data:\n title: 🚨 Water Leak Detected\n message: 'One of the leak sensors has detected water!\n\n '\n action: notify.mobile_app_iphone_2023\n mode: single", "config": [ { "name": "mobile app iphone 2023", "room": "home", "type": "notify", "id": { "entity_id": "notify.mobile_app_iphone_2023", "device_id": null } }, { "name": "ikea leak sensor 1 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_1_water_leak", "device_id": null } }, { "name": "ikea leak sensor 2 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_2_water_leak", "device_id": null } }, { "name": "ikea leak sensor 3 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_3_water_leak", "device_id": null } }, { "name": "ikea leak sensor 4 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_4_water_leak", "device_id": null } }, { "name": "ikea leak sensor 5 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_5_water_leak", "device_id": null } }, { "name": "ikea leak sensor 6 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_6_water_leak", "device_id": null } }, { "name": "ikea leak sensor 7 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_7_water_leak", "device_id": null } }, { "name": "ikea leak sensor 8 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_8_water_leak", "device_id": null } }, { "name": "ikea leak sensor 9 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_9_water_leak", "device_id": null } }, { "name": "ikea leak sensor 10 water leak", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.ikea_leak_sensor_10_water_leak", "device_id": null } }, { "name": "tr leak 1", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tr_leak_1", "device_id": null } }, { "name": "tr leak 2", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tr_leak_2", "device_id": null } }, { "name": "tr leak 3", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tr_leak_3", "device_id": null } }, { "name": "tr leak 4", "room": "home", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.tr_leak_4", "device_id": null } }, { "name": "water leak detected hourly notification automation", "room": "home", "type": "automation", "id": { "entity_id": "automation.water_leak_detected_hourly_notification", "device_id": null } } ] }, { "id": "Sync Master Thermostat to Other Thermostats", "automation": "- alias: Sync Master Thermostat to Other Thermostats\n trigger:\n - platform: state\n entity_id: climate.master_thermostat\n attribute: temperature\n condition:\n - condition: template\n value_template: '{{ states(''climate.master_thermostat'') is not none and state_attr(''climate.master_thermostat'',\n ''temperature'') is not none }}'\n action:\n - service: climate.set_temperature\n target:\n entity_id: climate.thermostat\n data_template:\n temperature: '{{ state_attr(''climate.master_thermostat'', ''temperature'')\n | float }}'\n - service: climate.set_temperature\n target:\n entity_id: climate.thermostat_2\n data_template:\n temperature: '{{ (state_attr(''climate.master_thermostat'', ''temperature'')\n | float) + 2 }}'", "config": [ { "name": "master thermostat", "room": "home", "type": "climate", "id": { "entity_id": "climate.master_thermostat", "device_id": null } }, { "name": "thermostat", "room": "home", "type": "climate", "id": { "entity_id": "climate.thermostat", "device_id": null } }, { "name": "thermostat 2", "room": "home", "type": "climate", "id": { "entity_id": "climate.thermostat_2", "device_id": null } } ] }, { "id": "Sync Thermostat to Master Thermostat", "automation": "- alias: Sync Thermostat to Master Thermostat\n trigger:\n - platform: state\n entity_id: climate.thermostat\n attribute: temperature\n condition:\n - condition: template\n value_template: '{{ state_attr(''climate.master_thermostat'', ''temperature'')\n | float != state_attr(''climate.thermostat'', ''temperature'') | float }}\n\n '\n action:\n - service: climate.set_temperature\n target:\n entity_id: climate.master_thermostat\n data_template:\n temperature: '{{ state_attr(''climate.thermostat'', ''temperature'') | float\n }}'", "config": [ { "name": "master thermostat", "room": "home", "type": "climate", "id": { "entity_id": "climate.master_thermostat", "device_id": null } }, { "name": "thermostat", "room": "home", "type": "climate", "id": { "entity_id": "climate.thermostat", "device_id": null } } ] } ]