#------------------------------------------- # ALarm Related Packages # @CCOSTAN # Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig #------------------------------------------- homeassistant: customize_glob: "device_tracker.nodemcu*": icon: mdi:chip hidden: True "sensor.nodemcu*": icon: mdi:alarm-bell hidden: False "binary_sensor.mcu?_gpio*": icon: mdi:security-home hidden: False customize: binary_sensor.MCU1_GPIO4: friendly_name: 'Paige Window' binary_sensor.MCU1_GPIO5: friendly_name: 'Front Door' binary_sensor.MCU1_GPIO10: friendly_name: 'Dining Room Windows' binary_sensor.MCU1_GPIO12: friendly_name: 'Interior Garage Door' binary_sensor.MCU1_GPIO13: friendly_name: 'Front Den Windows' binary_sensor.MCU1_GPIO14: friendly_name: 'Office Window' binary_sensor.MCU2_GPIO4: friendly_name: 'Dinette Windows' binary_sensor.MCU2_GPIO5: friendly_name: 'Back Door' binary_sensor.MCU2_GPIO9: friendly_name: 'Master Slider' binary_sensor.MCU2_GPIO10: friendly_name: 'Master Bathroom Window' binary_sensor.MCU2_GPIO12: friendly_name: 'Main Slider' binary_sensor.MCU2_GPIO13: friendly_name: 'Upstairs Bedroom Window' binary_sensor.MCU2_GPIO14: friendly_name: 'Justin Window' binary_sensor.MCU3_GPIO4: friendly_name: 'Stacey Bedroom Window' binary_sensor.MCU3_GPIO5: friendly_name: 'Carlo Bedroom Window' binary_sensor.MCU3_GPIO10: friendly_name: 'Master Bedroom Window' binary_sensor.MCU3_GPIO14: friendly_name: 'Upstairs Windows' binary_sensor.MCU3_Light: friendly_name: 'Panel Door' group.entry_points: friendly_name: Alarm Entry Points homebridge_hidden: true group.interior_door: friendly_name: Interior doors homebridge_hidden: true #------------------------------------------- binary_sensor: - platform: mqtt state_topic: "NodeMCU1/GPIO4/Status" name: "MCU1_GPIO4" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU1/GPIO5/Status" name: "MCU1_GPIO5" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU1/GPIO10/Status" name: "MCU1_GPIO10" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU1/GPIO12/Status" name: "MCU1_GPIO12" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU1/GPIO13/Status" name: "MCU1_GPIO13" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU1/GPIO14/Status" name: "MCU1_GPIO14" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO4/Status" name: "MCU2_GPIO4" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO5/Status" name: "MCU2_GPIO5" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO9/Status" name: "MCU2_GPIO9" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO10/Status" name: "MCU2_GPIO10" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO12/Status" name: "MCU2_GPIO12" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO13/Status" name: "MCU2_GPIO13" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU2/GPIO14/Status" name: "MCU2_GPIO14" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU3/GPIO4/Status" name: "MCU3_GPIO4" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU3/GPIO5/Status" name: "MCU3_GPIO5" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU3/GPIO10/Status" name: "MCU3_GPIO10" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU3/GPIO14/Status" name: "MCU3_GPIO14" payload_on: 1 payload_off: 0 device_class: opening - platform: mqtt state_topic: "NodeMCU3/Light/Status" name: "MCU3_Light" payload_on: 1 payload_off: 0 device_class: opening # input_boolean: # elephant: # name: Elephant # initial: off #------------------------------------------- sensor: - platform: template sensors: nodemcu1: friendly_name: 'NodeMCU1' value_template: "{{ 'Online' if is_state('device_tracker.NodeMCU1', 'home') else 'Offline' }}" - platform: template sensors: nodemcu2: friendly_name: 'NodeMCU2' value_template: "{{ 'Online' if is_state('device_tracker.NodeMCU2', 'home') else 'Offline' }}" - platform: template sensors: nodemcu3: friendly_name: 'NodeMCU3' value_template: "{{ 'Online' if is_state('device_tracker.NodeMCU3', 'home') else 'Offline' }}" #------------------------------------------- group: entry_points: entities: - binary_sensor.MCU1_GPIO4 - binary_sensor.MCU1_GPIO5 - binary_sensor.MCU1_GPIO10 - binary_sensor.MCU1_GPIO12 - binary_sensor.MCU1_GPIO13 - binary_sensor.MCU1_GPIO14 - binary_sensor.MCU2_GPIO4 - binary_sensor.MCU2_GPIO5 - binary_sensor.MCU2_GPIO9 - binary_sensor.MCU2_GPIO10 - binary_sensor.MCU2_GPIO12 - binary_sensor.MCU2_GPIO13 - binary_sensor.MCU2_GPIO14 - binary_sensor.MCU2_GPIO15 - binary_sensor.MCU3_GPIO4 - binary_sensor.MCU3_GPIO5 - binary_sensor.MCU3_GPIO10 - binary_sensor.MCU3_GPIO14 # interior_door: - Moved out to Doors Group. # entities: # - binary_sensor.kitchen_door_opened # - binary_sensor.MCU3_Light #-------------------------------------------#------------------------------------------- automation: - alias: 'Turn off HVAC in window/door is opened' trigger: - platform: state entity_id: - binary_sensor.MCU1_GPIO4 - binary_sensor.MCU1_GPIO5 - binary_sensor.MCU1_GPIO10 - binary_sensor.MCU1_GPIO12 - binary_sensor.MCU1_GPIO13 - binary_sensor.MCU1_GPIO14 - binary_sensor.MCU2_GPIO4 - binary_sensor.MCU2_GPIO5 - binary_sensor.MCU2_GPIO9 - binary_sensor.MCU2_GPIO10 - binary_sensor.MCU2_GPIO12 - binary_sensor.MCU2_GPIO13 - binary_sensor.MCU2_GPIO14 - binary_sensor.MCU3_GPIO4 - binary_sensor.MCU3_GPIO5 - binary_sensor.MCU3_GPIO10 - binary_sensor.MCU3_GPIO14 to: 'on' from: 'off' for: minutes: 5 condition: - condition: template value_template: "{{ states('climate.downstairs') != 'off' }}" action: - service: climate.set_operation_mode data: entity_id: climate.downstairs operation_mode: 'off' - service: script.speech_engine data_template: value1: "The {{ trigger.to_state.attributes.friendly_name }} has been opened for about 5 minutes. I will shut down the Air Conditioner so you can enjoy the fresh air." call_outside_weather: 1 call_inside_weather: 1 #-------------------------------------------#------------------------------------------- - alias: 'Turn HVAC back on when all doors/windows are closed.' trigger: - platform: state entity_id: - group.entry_points to: 'off' from: 'on' for: minutes: 5 condition: - condition: template value_template: "{{ states('climate.downstairs') == 'off' }}" action: - service: climate.set_operation_mode data: entity_id: climate.downstairs operation_mode: 'auto' #-------------------------------------------#------------------------------------------- - alias: 'Alarm lights in Living room' trigger: - platform: state entity_id: - group.entry_points - platform: state entity_id: group.all_covers condition: condition: and conditions: - condition: state entity_id: sun.sun state: 'below_horizon' - condition: state entity_id: group.bed state: 'off' action: - service: light.turn_on entity_id: - group.living_room_accents data_template: color_name: > {% if states.group.entry_points.state == 'on' or states.group.all_covers.state != 'closed' -%} red {% else %} gold {% endif %} #-------------------------------------------#--- - alias: "Panel Door opened" hide_entity: True trigger: - platform: state entity_id: - binary_sensor.MCU3_Light to: 'off' from: 'on' action: - service: script.notify_engine data_template: value1: 'Someone has opened up the Alarm Panel Door!'