├── images ├── home.png ├── bedroom.png ├── hallway.png ├── nursery.png ├── office.png ├── status.png ├── back_garden.png ├── front_garden.png ├── living_room.png └── main_bathroom.png ├── includes ├── speech.sh └── switches │ ├── rfxcom.yaml │ ├── wake_on_lan.yaml │ ├── logitech_harmony.yaml │ └── command_line.yaml ├── input_select.yaml ├── lights.yaml ├── input_boolean.yaml ├── scripts.yaml ├── cameras.yaml ├── scenes.yaml ├── configuration.yaml ├── sensors.yaml ├── alexa.yaml ├── groups.yaml ├── README.md └── customize.yaml /images/home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/home.png -------------------------------------------------------------------------------- /images/bedroom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/bedroom.png -------------------------------------------------------------------------------- /images/hallway.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/hallway.png -------------------------------------------------------------------------------- /images/nursery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/nursery.png -------------------------------------------------------------------------------- /images/office.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/office.png -------------------------------------------------------------------------------- /images/status.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/status.png -------------------------------------------------------------------------------- /images/back_garden.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/back_garden.png -------------------------------------------------------------------------------- /images/front_garden.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/front_garden.png -------------------------------------------------------------------------------- /images/living_room.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/living_room.png -------------------------------------------------------------------------------- /images/main_bathroom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/HEAD/images/main_bathroom.png -------------------------------------------------------------------------------- /includes/speech.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | say() { local IFS=+;/usr/bin/mplayer -ao alsa -really-quiet -noconsolecontrols "http://translate.google.co.uk/translate_tts?ie=UTF-8&client=tw-ob&q=$*&tl=En-gb"; } 3 | say $* 4 | -------------------------------------------------------------------------------- /input_select.yaml: -------------------------------------------------------------------------------- 1 | tv_channels: 2 | name: Channel Select 3 | options: 4 | - None 5 | - BBC ONE HD 6 | - BBC TWO HD 7 | - ITV HD 8 | - FOUR HD 9 | - FIVE HD 10 | - CBEEBIES 11 | initial: None -------------------------------------------------------------------------------- /lights.yaml: -------------------------------------------------------------------------------- 1 | - platform: hue 2 | host: 192.168.1.248 3 | 4 | - platform: rfxtrx 5 | automatic_add: True 6 | devices: 7 | _REDACTED_: 8 | name: Bedroom Main Light 9 | _REDACTED_: 10 | name: Dining Room Light 11 | _REDACTED_: 12 | name: Living Room Lights 13 | _REDACTED_: 14 | name: Office Light 15 | _REDACTED_: 16 | name: Main Bathroom Light -------------------------------------------------------------------------------- /input_boolean.yaml: -------------------------------------------------------------------------------- 1 | #people status 2 | mike_home: 3 | name: Mike Home 4 | initial: off 5 | 6 | alex_home: 7 | name: Alex Home 8 | initial: off 9 | 10 | visitors_home: 11 | name: Visitors Home 12 | initial: off 13 | 14 | sleeping: 15 | name: Sleeping 16 | initial: off 17 | 18 | #motion status 19 | office_motion: 20 | name: Office Motion 21 | initial: off 22 | 23 | nursery_motion: 24 | name: Nursery Motion 25 | initial: off 26 | 27 | bedroom_motion: 28 | name: Bedroom Motion 29 | initial: off 30 | 31 | main_bathroom_motion: 32 | name: Main Bathroom Motion 33 | initial: off -------------------------------------------------------------------------------- /includes/switches/rfxcom.yaml: -------------------------------------------------------------------------------- 1 | - platform: rfxtrx 2 | automatic_add: True 3 | devices: 4 | _REDACTED_: 5 | name: Doorbell 6 | _REDACTED_: 7 | name: Front Door 8 | _REDACTED_: 9 | name: Patio Door 10 | _REDACTED_: 11 | name: Christmas Tree Lights 12 | _REDACTED_: 13 | name: Letterbox 14 | _REDACTED_: 15 | name: Nursery Window 16 | _REDACTED_: 17 | name: Office Window 18 | _REDACTED_: 19 | name: Bedroom Window 20 | _REDACTED_: 21 | name: Icicles 22 | _REDACTED_: 23 | name: Main Bathroom Motion 24 | _REDACTED_: 25 | name: Office Motion -------------------------------------------------------------------------------- /scripts.yaml: -------------------------------------------------------------------------------- 1 | doorbell_tv: !include includes/scripts/doorbell_tv.yaml 2 | timer_off: !include includes/scripts/timer_off.yaml 3 | patio_door_lights: !include includes/scripts/patio_door_lights.yaml 4 | patio_door_timer_off: !include includes/scripts/patio_door_timer_off.yaml 5 | bedtime: !include includes/scripts/bedtime.yaml 6 | bedtime_timer_off: !include includes/scripts/bedtime_timer_off.yaml 7 | flash_lights: !include includes/scripts/flash_lights.yaml 8 | tv_bbc_one: !include includes/scripts/tv_bbc_one.yaml 9 | tv_bbc_two: !include includes/scripts/tv_bbc_two.yaml 10 | tv_cbeebies: !include includes/scripts/tv_cbeebies.yaml 11 | tv_itv: !include includes/scripts/tv_itv.yaml 12 | tv_channel_four: !include includes/scripts/tv_channel_four.yaml 13 | tv_channel_five: !include includes/scripts/tv_channel_five.yaml 14 | audio_welcome_home_michael: !include includes/scripts/audio_welcome_home_michael.yaml 15 | audio_test: !include includes/scripts/audio_test.yaml -------------------------------------------------------------------------------- /cameras.yaml: -------------------------------------------------------------------------------- 1 | # CCTV Cameras are being served by a BlueIris server running on Windows 10 2 | 3 | - platform: mjpeg 4 | mjpeg_url: http://192.168.1.11:81/mjpg/Cam1 5 | name: Cam 1 6 | username: !secret username_blue_iris 7 | password: !secret password_blue_iris 8 | authentication: basic 9 | 10 | - platform: mjpeg 11 | mjpeg_url: http://192.168.1.11:81/mjpg/Cam2 12 | name: Cam 2 13 | username: !secret username_blue_iris 14 | password: !secret password_blue_iris 15 | authentication: basic 16 | 17 | # Displays a Google Map of users current location as determined by OwnTracks 18 | - platform: generic 19 | name: Mikes Location 20 | still_image_url: https://maps.googleapis.com/maps/api/staticmap?center={{ states.device_tracker.pi_mikesiphone.attributes.latitude }},{{ states.device_tracker.pi_mikesiphone.attributes.longitude }}&zoom=13&size=500x500&maptype=roadmap&markers=color:blue%7Clabel:A%7C{{ states.device_tracker.pi_mikesiphone.attributes.latitude }},{{ states.device_tracker.pi_mikesiphone.attributes.longitude }} 21 | limit_refetch_to_url_change: true -------------------------------------------------------------------------------- /includes/switches/wake_on_lan.yaml: -------------------------------------------------------------------------------- 1 | - platform: wake_on_lan 2 | name: "Windows 10 Tower" 3 | mac_address: “_REDACTED_” 4 | host: "192.168.1.9" 5 | 6 | - platform: wake_on_lan 7 | name: "Windows 10 Virtual Machine" 8 | mac_address: "_REDACTED_" 9 | host: "192.168.1.11" 10 | 11 | - platform: wake_on_lan 12 | name: "Windows 8 Virtual Machine" 13 | mac_address: "_REDACTED_" 14 | host: "192.168.1.6" 15 | 16 | - platform: wake_on_lan 17 | name: "Ubuntu Virtual Machine" 18 | mac_address: "_REDACTED_" 19 | host: "192.168.1.9" 20 | 21 | - platform: wake_on_lan 22 | name: "Debian Virtual Machine" 23 | mac_address: "_REDACTED_" 24 | host: "192.168.1.4" 25 | 26 | - platform: wake_on_lan 27 | name: "Debian VPN Virtual Machine" 28 | mac_address: "_REDACTED_" 29 | host: "192.168.1.7" 30 | 31 | - platform: wake_on_lan 32 | name: "CCTV 1" 33 | mac_address: "00:00:00:00:00:00" 34 | host: "192.168.1.15" 35 | 36 | - platform: wake_on_lan 37 | name: "CCTV 2" 38 | mac_address: "00:00:00:00:00:00" 39 | host: "192.168.1.15" -------------------------------------------------------------------------------- /scenes.yaml: -------------------------------------------------------------------------------- 1 | - name: Bedtime Mode 2 | entities: 3 | group.living_room_tv: off 4 | switch.temp_switch_1: on 5 | light.mike: 6 | state: on 7 | brightness: 30 8 | light.alex: 9 | state: on 10 | brightness: 30 11 | light.bedroom_main_light: off 12 | group.garden_lights: off 13 | light.living_room_lights: off 14 | light.dining_room_light: off 15 | switch.christmas_tree_lights: off 16 | light.living_room: 17 | state: on 18 | brightness: 30 19 | script.bedtime: on 20 | 21 | - name: flash on 22 | entities: 23 | script.flash_lights: on 24 | 25 | - name: flash off 26 | entities: 27 | script.flash_lights: off 28 | 29 | - name: Away Mode 30 | entities: 31 | group.living_room: off 32 | group.bedroom_lights: off 33 | group.garden_lights: off 34 | group.living_room_lights: off 35 | group.office: off 36 | group.main_bathroom: off 37 | 38 | - name: TV Volume Up 39 | entities: 40 | switch.volume_up_tv_1: on 41 | 42 | - name: TV Volume Down 43 | entities: 44 | switch.volume_down_tv_1: on 45 | 46 | - name: Pause TV 47 | entities: 48 | switch.pause_tv: on 49 | 50 | - name: Play TV 51 | entities: 52 | switch.play_tv: on -------------------------------------------------------------------------------- /includes/switches/logitech_harmony.yaml: -------------------------------------------------------------------------------- 1 | 2 | - platform: mqtt 3 | name: "TV" 4 | state_topic: "harmony-api/hubs/harmonyhub/activities/tv/state" 5 | command_topic: "harmony-api/hubs/harmonyhub/activities/tv/command" 6 | payload_on: "on" 7 | payload_off: "off" 8 | qos: 0 9 | - platform: mqtt 10 | name: "Plex" 11 | state_topic: "harmony-api/hubs/harmonyhub/activities/plex/state" 12 | command_topic: "harmony-api/hubs/harmonyhub/activities/plex/command" 13 | payload_on: "on" 14 | payload_off: "off" 15 | qos: 0 16 | - platform: mqtt 17 | name: "Xbox ONE" 18 | state_topic: "harmony-api/hubs/harmonyhub/activities/xboxone/state" 19 | command_topic: "harmony-api/hubs/harmonyhub/activities/xboxone/command" 20 | payload_on: "on" 21 | payload_off: "off" 22 | - platform: mqtt 23 | name: "Apple TV" 24 | state_topic: "harmony-api/hubs/harmonyhub/activities/appletv/state" 25 | command_topic: "harmony-api/hubs/harmonyhub/activities/appletv/command" 26 | qos: 0 27 | payload_on: "on" 28 | payload_off: "off" 29 | - platform: mqtt 30 | name: "Android TV" 31 | state_topic: "harmony-api/hubs/harmonyhub/activities/androidtv/state" 32 | command_topic: "harmony-api/hubs/harmonyhub/activities/androidtv/command" 33 | qos: 0 34 | payload_on: "on" 35 | payload_off: "off" 36 | - platform: mqtt 37 | name: "PC" 38 | state_topic: "harmony-api/hubs/harmonyhub/activities/pc/state" 39 | command_topic: "harmony-api/hubs/harmonyhub/activities/pc/command" 40 | qos: 0 41 | payload_on: "on" 42 | payload_off: "off" 43 | - platform: mqtt 44 | name: "Xbox 360" 45 | state_topic: "harmony-api/hubs/harmonyhub/activities/xbox360/state" 46 | command_topic: "harmony-api/hubs/harmonyhub/activities/xbox360/command" 47 | qos: 0 48 | payload_on: "on" 49 | payload_off: "off" -------------------------------------------------------------------------------- /configuration.yaml: -------------------------------------------------------------------------------- 1 | homeassistant: 2 | name: Home 3 | latitude: !secret latitude 4 | longitude: !secret longitude 5 | elevation: !secret elevation 6 | unit_system: metric 7 | time_zone: Europe/London 8 | customize: !include customize.yaml 9 | 10 | zone: 11 | name: Emerald House 12 | latitude: !secret latitude_emerald 13 | longitude: !secret longitude_emerald 14 | icon: mdi:briefcase 15 | 16 | zone 2: 17 | name: Paddington 18 | latitude: !secret latitude_paddington 19 | longitude: !secret longitude_paddington 20 | icon: mdi:briefcase 21 | 22 | http: 23 | api_password: !secret api_password 24 | 25 | updater: 26 | discovery: 27 | conversation: 28 | history: 29 | logbook: 30 | sun: 31 | 32 | panel_iframe: !include paneliframes.yaml 33 | scene: !include scenes.yaml 34 | group: !include groups.yaml 35 | automation: !include_dir_merge_list includes/automation 36 | switch: !include_dir_merge_list includes/switches 37 | light: !include lights.yaml 38 | script: !include scripts.yaml 39 | sensor: !include sensors.yaml 40 | camera: !include cameras.yaml 41 | input_select: !include input_select.yaml 42 | input_boolean: !include input_boolean.yaml 43 | alexa: !include alexa.yaml 44 | 45 | emulated_hue: 46 | host_ip: 192.168.1.100 47 | listen_port: 8300 48 | expose_by_default: false 49 | exposed_domains: 50 | - light 51 | - switch 52 | - script 53 | 54 | alarm_control_panel: 55 | platform: manual 56 | code: !secret alarm_code 57 | 58 | rfxtrx: 59 | device: /dev/serial/by-id/usb-RFXCOM_RFXtrx433_06VVCQID-if00-port0 60 | debug: 61 | 62 | device_tracker: 63 | - platform: owntracks 64 | 65 | notify: 66 | - name: notify 67 | platform: pushover 68 | api_key: !secret api_key_pushover_1 69 | user_key: !secret user_key_pushover_1 70 | 71 | - name: telegram 72 | platform: telegram 73 | api_key: !secret api_key_telegram_1 74 | chat_id: !secret chat_id_telegram_1 75 | 76 | - name: pushbullet 77 | platform: pushbullet 78 | api_key: !secret api_key_pushbullet_1 79 | 80 | wemo: 81 | static: 82 | - 192.168.1.198 83 | - 192.168.1.140 84 | 85 | nest: 86 | username: !secret username_nest 87 | password: !secret password_nest 88 | 89 | climate: 90 | platform: nest 91 | 92 | media_player: 93 | - platform: lg_netcast 94 | host: 192.168.1.204 95 | access_token: 777855 96 | 97 | - platform: roku 98 | # - platform: plex 99 | # - platform: sonos 100 | - platform: cast 101 | 102 | mqtt: 103 | broker: 127.0.0.1 104 | port: 1883 105 | client_id: !secret client_id_mqtt 106 | username: !secret username_mqtt 107 | password: !secret password_mqtt 108 | 109 | zwave: 110 | usb_path: /dev/ttyACM0 111 | config_path: /srv/hass/hass_venv/lib/python3.4/site-packages/libopenzwave-0.3.1-py3.4-linux-armv7l.egg/config 112 | 113 | # Currently experimental 114 | shell_command: 115 | audio_test: bash /home/hass/.homeassistant/includes/speech.sh the current temerature is {{ states.climate.living_room.attributes.current_temperature }} degrees celcius and the patio door is {{ states.sensor.patio_door.state }} and the home is currently consuming {{ states.sensor.mains_electricity.state }} watts of electricity -------------------------------------------------------------------------------- /sensors.yaml: -------------------------------------------------------------------------------- 1 | - platform: speedtest 2 | server_id: _REDACTED_ 3 | monitored_conditions: 4 | - ping 5 | - download 6 | - upload 7 | 8 | - platform: wunderground 9 | api_key: !secret api_key_wunderground 10 | pws_id: !secret pws_id_wunderground 11 | monitored_conditions: 12 | - temp_c 13 | - wind_dir 14 | - wind_mph 15 | 16 | - platform: plex 17 | name: Plex Spy 18 | host: 192.168.1.4 19 | port: 32400 20 | username: !secret username_plex 21 | password: !secret password_plex 22 | server: !secret server_plex 23 | 24 | - platform: rfxtrx 25 | automatic_add: True 26 | devices: 27 | _REDACTED_: 28 | name: Mains Electricity 29 | 30 | - platform: template 31 | sensors: 32 | fibaro_battery: 33 | value_template: '{{ states.sensor.fibaro_system_fgms001_motion_sensor_burglar_5_10.attributes.battery_level }}' 34 | friendly_name: 'Fibaro Office Battery' 35 | unit_of_measurement: '%' 36 | 37 | nest_mode: 38 | value_template: '{% if is_state("sensor.states.climate.living_room.attributes.away_mode", "on") %}Away{% else %}Home{% endif %}' 39 | friendly_name: 'Nest Mode' 40 | 41 | bedroom_motion: 42 | value_template: '{% if is_state("sensor.fibaro_system_fgms001_motion_sensor_burglar_5_10", "8") %}Yes{% else %}No{% endif %}' 43 | friendly_name: 'Bedroom Motion' 44 | 45 | nursery_motion: 46 | value_template: '{% if is_state("sensor.aeotec_zw100_multisensor_6_burglar_7_10", "8") %}Yes{% else %}No{% endif %}' 47 | friendly_name: 'Nursey Motion' 48 | 49 | office_motion: 50 | value_template: '{% if is_state("switch.office_motion", "on") %}Yes{% else %}No{% endif %}' 51 | friendly_name: 'Office Motion' 52 | 53 | main_bathroom_motion: 54 | value_template: '{% if is_state("switch.main_bathroom_motion", "on") %}Yes{% else %}No{% endif %}' 55 | friendly_name: 'Main Bathroom Motion' 56 | 57 | front_door: 58 | value_template: '{% if is_state("switch.front_door", "off") %}Closed{% else %}Open{% endif %}' 59 | friendly_name: 'Front Door' 60 | 61 | patio_door: 62 | value_template: '{% if is_state("switch.patio_door", "off") %}Closed{% else %}Open{% endif %}' 63 | friendly_name: 'Patio Door' 64 | 65 | letterbox: 66 | value_template: '{% if is_state("switch.letterbox", "off") %}Closed{% else %}Open{% endif %}' 67 | friendly_name: 'Letterbox' 68 | 69 | nursery_window: 70 | value_template: '{% if is_state("switch.nursery_window", "off") %}Closed{% else %}Open{% endif %}' 71 | friendly_name: 'Nursery Window' 72 | 73 | bedroom_window: 74 | value_template: '{% if is_state("switch.bedroom_window", "off") %}Closed{% else %}Open{% endif %}' 75 | friendly_name: 'Bedroom Window' 76 | 77 | office_window: 78 | value_template: '{% if is_state("switch.office_window", "off") %}Closed{% else %}Open{% endif %}' 79 | friendly_name: 'Office Window' 80 | 81 | # owl_battery: 82 | # value_template: >- 83 | # {%- if states.sensor.mains_electricity.attributes.battery_numeric %} 84 | # {{ states.sensor.mains_electricity.attributes.battery_numeric }} 85 | # {% else %} 86 | # Unknown 87 | # {%- endif %} 88 | # friendly_name: 'Owl Energy Battery' 89 | # unit_of_measurement: '%' -------------------------------------------------------------------------------- /alexa.yaml: -------------------------------------------------------------------------------- 1 | intents: 2 | WhereAreWeIntent: 3 | speech: 4 | type: plaintext 5 | text: > 6 | {%- if is_state('device_tracker.pi_mikesiphone', 'home') -%} 7 | You are home, you silly 8 | {%- else -%} 9 | Mike is at {{ states("device_tracker.pi_mikesiphone") }} 10 | {% endif %} 11 | 12 | LocateIntent: 13 | action: 14 | service: notify.telegram 15 | data_template: 16 | message: The location of {{ User }} has been queried via Alexa. 17 | speech: 18 | type: plaintext 19 | text: > 20 | {%- for state in states.device_tracker -%} 21 | {%- if state.name.lower() == User.lower() -%} 22 | {{ state.name }} is at {{ state.state }} 23 | {%- endif -%} 24 | {%- else -%} 25 | I am sorry, I do not know where {{ User }} is. 26 | {%- endfor -%} 27 | card: 28 | type: simple 29 | title: Sample title 30 | content: Some more content 31 | 32 | ControlLightsIntent: 33 | action: 34 | service: light.turn_off 35 | entity_id: group.all_lights 36 | speech: 37 | type: plaintext 38 | text: > 39 | There you go. Enjoy the darkness. 40 | 41 | ElectricityConsumption: 42 | speech: 43 | type: plaintext 44 | text: > 45 | Your house is currently using {{ states.sensor.mains_electricity.state }} watts of electricity 46 | 47 | ElectricityConsumptionServer: 48 | speech: 49 | type: plaintext 50 | text: > 51 | Your unraid server is currently using {{ states.sensor.greenwave_powernode_1_port_power_6_8.state }} watts of electricity 52 | 53 | OpenWindows: 54 | speech: 55 | type: plaintext 56 | text: > 57 | The bedroom window is {{ states.sensor.bedroom_window.state }}. _REDACTED_ Bedroom window is {{ states.sensor.nursery_window.state }}. The office window is {{ states.sensor.office_window.state }}. I love windows. Windows 10 is my favourite. 58 | 59 | OpenDoors: 60 | speech: 61 | type: plaintext 62 | text: > 63 | The patio door is {{ states.sensor.patio_door.state }}. The front door is {{ states.sensor.front_door.state }}. 64 | 65 | FleurTemperature: 66 | speech: 67 | type: plaintext 68 | text: > 69 | The temperature in little _REDACTED_ bears room is currently {{ states.Sensor.aeotec_zw100_multisensor_6_temperature_7_1.state }} degrees celsius. 70 | 71 | InternetSpeed: 72 | speech: 73 | type: plaintext 74 | text: > 75 | Your downspeed is {{ states.sensor.speedtest_download.state }} megabits per second. Your upload speed is {{ states.sensor.speedtest_upload.state }} megabits per second. 76 | 77 | PauseTV: 78 | action: 79 | service: switch.turn_on 80 | entity_id: switch.pause_tv 81 | speech: 82 | type: plaintext 83 | text: > 84 | OK. TV paused. 85 | 86 | PlayTV: 87 | action: 88 | service: switch.turn_on 89 | entity_id: switch.play_tv 90 | speech: 91 | type: plaintext 92 | text: > 93 | OK. Enjoy. 94 | 95 | BedTime: 96 | action: 97 | service: switch.turn_on 98 | entity_id: switch.bedtime_switch_1 99 | speech: 100 | type: plaintext 101 | text: > 102 | OK. Good Night _REDACTED_. Sleep Tight. -------------------------------------------------------------------------------- /groups.yaml: -------------------------------------------------------------------------------- 1 | default_view: 2 | view: yes 3 | entities: 4 | - group.living_room_tv 5 | - group.living_room 6 | - group.living_room_lights 7 | - scene.bedtime_mode 8 | - scene.away_mode 9 | - scene.flash_on 10 | - scene.flash_off 11 | - group.office 12 | - group.garden_lights 13 | - group.bedroom 14 | - group.bedroom_lights 15 | - group.outside 16 | - group.outside_xmas_lights 17 | - group.main_bathroom 18 | - group.hallway 19 | - group.nursery 20 | - group.other 21 | - group.energy 22 | - group.batteries 23 | - group.machines 24 | - group.doors 25 | - group.windows 26 | - group.motion 27 | - group.people_status 28 | - group.services 29 | - sensor.plex_spy 30 | - sun.sun 31 | - device_tracker.pi_mikesiphone 32 | - alarm_control_panel.ha_alarm 33 | 34 | Living Room TV: 35 | name: Living Room TV 36 | entities: 37 | - switch.TV 38 | - switch.Plex 39 | - switch.Android_TV 40 | - switch.Apple_TV 41 | - switch.Xbox_ONE 42 | - switch.Xbox_360 43 | - switch.PC 44 | - input_select.tv_channels 45 | - switch.mute_tv_1 46 | - scene.tv_volume_up 47 | - scene.tv_volume_down 48 | - scene.pause_tv 49 | - scene.play_tv 50 | 51 | Living Room Lights: 52 | name: Living Room Lights 53 | entities: 54 | - light.Living_Room 55 | - light.Living_Room_Lights 56 | - light.Dining_Room_light 57 | - switch.Christmas_Tree_lights 58 | 59 | Living Room: 60 | name: Living Room 61 | entities: 62 | - sensor.patio_door 63 | - climate.living_room 64 | - sensor.nest_mode 65 | 66 | Office: 67 | name: Office 68 | entities: 69 | - light.Office_Light 70 | - sensor.office_motion 71 | - sensor.office_window 72 | 73 | Garden Lights: 74 | name: Garden Lights 75 | entities: 76 | - switch.Decking_Lights 77 | - switch.Twinkle_Lights 78 | - light.Outside_Light 79 | 80 | Bedroom Lights: 81 | name: Bedroom Lights 82 | entities: 83 | - light.Mike 84 | - light.Alex 85 | - light.bedroom_main_light 86 | 87 | Bedroom: 88 | name: Bedroom 89 | entities: 90 | - sensor.bedroom_window 91 | - sensor.bedroom_motion 92 | - sensor.fibaro_system_fgms001_motion_sensor_temperature_5_1 93 | - sensor.fibaro_system_fgms001_motion_sensor_luminance_5_3 94 | 95 | Main Bathroom: 96 | name: Main Bathroom 97 | entities: 98 | - sensor.main_bathroom_motion 99 | - light.main_bathroom_light 100 | 101 | Outside: 102 | name: Weather 103 | entities: 104 | - sensor.PWS_temp_c 105 | - sensor.PWS_wind_mph 106 | - sensor.PWS_wind_dir 107 | 108 | Other: 109 | name: Internet Status 110 | entities: 111 | - sensor.speedtest_download 112 | - sensor.speedtest_upload 113 | - sensor.speedtest_ping 114 | 115 | Energy: 116 | name: Energy 117 | entities: 118 | - sensor.mains_electricity 119 | - sensor.greenwave_powernode_1_port_power_6_8 120 | - sensor.greenwave_powernode_1_port_energy_6_0 121 | 122 | Batteries: 123 | name: Batteries 124 | entities: 125 | - sensor.fibaro_battery 126 | - sensor.owl_battery 127 | 128 | Hallway: 129 | name: Hallway 130 | entities: 131 | - sensor.front_door 132 | - sensor.letterbox 133 | 134 | Nursery: 135 | name: Nursery 136 | entities: 137 | - sensor.nursery_window 138 | - sensor.nursery_motion 139 | - sensor.aeotec_zw100_multisensor_6_luminance_7_3 140 | - sensor.aeotec_zw100_multisensor_6_relative_humidity_7_5 141 | - sensor.aeotec_zw100_multisensor_6_temperature_7_1 142 | 143 | Machines: 144 | name: Machine Status / Wake 145 | entities: 146 | - switch.Windows_10_Tower 147 | - switch.Windows_10_Virtual_Machine 148 | - switch.Debian_Virtual_Machine 149 | - switch.Debian_VPN_Virtual_Machine 150 | - switch.Ubuntu_Virtual_Machine 151 | - switch.Windows_8_Virtual_Machine 152 | - switch.CCTV_1 153 | - switch.CCTV_2 154 | 155 | Doors: 156 | name: Doors 157 | entities: 158 | - switch.patio_door 159 | - switch.front_door 160 | - switch.doorbell 161 | - switch.letterbox 162 | 163 | Windows: 164 | name: Windows 165 | entities: 166 | - switch.nursery_window 167 | - switch.office_window 168 | - switch.bedroom_window 169 | 170 | Motion: 171 | name: Motion 172 | entities: 173 | - input_boolean.office_motion 174 | - input_boolean.nursery_motion 175 | - input_boolean.bedroom_motion 176 | - input_boolean.main_bathroom_motion 177 | 178 | People Status: 179 | name: People Status 180 | entities: 181 | - input_boolean.alex_home 182 | - input_boolean.mike_home 183 | - input_boolean.sleeping 184 | - input_boolean.visitors_home 185 | 186 | Services: 187 | name: Services 188 | entities: 189 | - switch.apache_web_service_debian 190 | - switch._REDACTED_ 191 | - switch._REDACTED_ 192 | - switch._REDACTED_ 193 | - switch._REDACTED_ 194 | - switch.plex_server 195 | - switch._REDACTED_ 196 | - switch._REDACTED_ 197 | 198 | Outside Xmas Lights: 199 | name: Outside Xmas Lights 200 | entities: 201 | - switch.greenwave_powernode_1_port_switch_8_0 202 | - switch.icicles 203 | 204 | Rooms: 205 | view: yes 206 | name: Status 207 | entities: 208 | - group.Machines 209 | - group.Other 210 | - camera.mikes_location 211 | - group.Doors 212 | - group.Windows 213 | - group.Motion 214 | - group.Batteries 215 | - group.Energy 216 | - group.People_Status 217 | - group.services 218 | 219 | Rooms 2: 220 | view: yes 221 | name: Living Room 222 | entities: 223 | - group.Living_Room_TV 224 | - group.Living_Room_Lights 225 | - group.Living_Room 226 | - media_player.chromecastaudio 227 | - media_player.shield 228 | - media_player.lg_tv_remote 229 | 230 | Rooms 3: 231 | view: yes 232 | name: Back Garden 233 | entities: 234 | - group.Garden_Lights 235 | - group.Outside 236 | 237 | Rooms 4: 238 | view: yes 239 | name: Front Garden 240 | entities: 241 | - camera.Cam_1 242 | - camera.Cam_2 243 | - group.Outside 244 | - group.Outside_Xmas_Lights 245 | 246 | Rooms 5: 247 | view: yes 248 | name: Bedroom 249 | entities: 250 | - group.Bedroom_Lights 251 | - group.Bedroom 252 | - media_player.roku_REDACTED_ 253 | 254 | Rooms 6: 255 | view: yes 256 | name: Nursery 257 | entities: 258 | - group.Nursery 259 | 260 | Rooms 7: 261 | view: yes 262 | name: Office 263 | entities: 264 | - group.Office 265 | 266 | Rooms 8: 267 | view: yes 268 | name: Main Bathroom 269 | entities: 270 | - group.Main_Bathroom 271 | 272 | Rooms 9: 273 | view: yes 274 | name: Hallway 275 | entities: 276 | - group.Hallway -------------------------------------------------------------------------------- /includes/switches/command_line.yaml: -------------------------------------------------------------------------------- 1 | - platform: command_line 2 | switches: 3 | mute_tv_1: 4 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 29824507 mute" 5 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 29824507 mute" 6 | volume_up_tv_1: 7 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 29824507 volumeup" 8 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 29824507 volumeup" 9 | volume_down_tv_1: 10 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 29824507 volumedown" 11 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 29824507 volumedown" 12 | pause_humax_1: 13 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 pause" 14 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 play" 15 | pause_shield_1: 16 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324550 pause" 17 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324550 play" 18 | pause_xbox360_1: 19 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37328683 pause" 20 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37328683 play" 21 | pause_xboxone_1: 22 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 17988319 pause" 23 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 17988319 play" 24 | pause_appletv_1: 25 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 17690753 pause" 26 | command_off: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 17690753 play" 27 | 0_humax_1: 28 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 0" 29 | command_off: "" 30 | 1_humax_1: 31 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 1" 32 | command_off: "" 33 | 2_humax_1: 34 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 2" 35 | command_off: "" 36 | 3_humax_1: 37 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 3" 38 | command_off: "" 39 | 4_humax_1: 40 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 4" 41 | command_off: "" 42 | 5_humax_1: 43 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 5" 44 | command_off: "" 45 | 6_humax_1: 46 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 6" 47 | command_off: "" 48 | 7_humax_1: 49 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 7" 50 | command_off: "" 51 | 8_humax_1: 52 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 8" 53 | command_off: "" 54 | 9_humax_1: 55 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 9" 56 | command_off: "" 57 | humax_back_1: 58 | command_on: "/home/hass/.homeassistant/plugins/HarmonyHubControl/HarmonyHubControl _REDACTED_ _REDACTED_192.168.1.187 issue_device_command 37324755 back" 59 | command_off: "" 60 | 61 | _REDACTED_: 62 | command_on: ssh _REDACTED_ sudo /bin/systemctl start _REDACTED_ 63 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop _REDACTED_ 64 | command_state: ssh _REDACTED_ systemctl is-active _REDACTED_ 65 | value_template: > 66 | {{ value == 'active' }} 67 | friendly_name: _REDACTED_ 68 | 69 | _REDACTED_: 70 | command_on: ssh _REDACTED_ sudo /bin/systemctl start _REDACTED_ 71 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop _REDACTED_ 72 | command_state: ssh _REDACTED_ systemctl is-active _REDACTED_ 73 | value_template: > 74 | {{ value == 'active' }} 75 | friendly_name: _REDACTED_ 76 | 77 | _REDACTED_: 78 | command_on: ssh _REDACTED_ sudo /bin/systemctl start _REDACTED_ 79 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop _REDACTED_ 80 | command_state: ssh _REDACTED_ systemctl is-active _REDACTED_ 81 | value_template: > 82 | {{ value == 'active' }} 83 | friendly_name: _REDACTED_ 84 | 85 | # _REDACTED_: 86 | # command_on: ssh _REDACTED_ sudo /bin/systemctl start _REDACTED_ 87 | # command_off: ssh _REDACTED_ sudo /bin/systemctl stop _REDACTED_ 88 | # command_state: "ssh _REDACTED_ systemctl is-active _REDACTED_ 89 | # value_template: > 90 | # {{ value == 'active' }} 91 | # friendly_name: _REDACTED_ 92 | 93 | _REDACTED_: 94 | command_on: ssh _REDACTED_ sudo /bin/systemctl start _REDACTED_ 95 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop _REDACTED_ 96 | command_state: ssh _REDACTED_ systemctl is-active _REDACTED_ 97 | value_template: > 98 | {{ value == 'active' }} 99 | friendly_name: _REDACTED_ 100 | 101 | _REDACTED_: 102 | command_on: ssh _REDACTED_ sudo /bin/systemctl start _REDACTED_ 103 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop _REDACTED_ 104 | command_state: ssh _REDACTED_ systemctl is-active _REDACTED_ 105 | value_template: > 106 | {{ value == 'active' }} 107 | friendly_name: _REDACTED_ 108 | 109 | apache_web_service_debian: 110 | command_on: ssh _REDACTED_ sudo /bin/systemctl start apache2.service 111 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop apache2.service 112 | command_state: ssh _REDACTED_ systemctl is-active apache2 113 | value_template: > 114 | {{ value == 'active' }} 115 | friendly_name: Apache Web Service (Debian) 116 | 117 | plex_server: 118 | command_on: ssh _REDACTED_ sudo /bin/systemctl start plexmediaserver.service 119 | command_off: ssh _REDACTED_ sudo /bin/systemctl stop plexmediaserver.service 120 | command_state: ssh _REDACTED_ systemctl is-active plexmediaserver 121 | value_template: > 122 | {{ value == 'active' }} 123 | friendly_name: Plex Server 124 | 125 | #fake switches for use with automation and scripts 126 | temp_switch_1: 127 | command_off: "" 128 | bedtime_switch_1: 129 | command_off: "" 130 | pause_tv: 131 | command_off: "" 132 | play_tv: 133 | command_off: "" 134 | bbc_one_1: 135 | command_off: "" 136 | bbc_two: 137 | command_off: "" 138 | cbeebies: 139 | command_off: "" 140 | itv: 141 | command_off: "" 142 | channel_four: 143 | command_off: "" 144 | channel_five: 145 | command_off: "" 146 | 147 | alarm_test_1: 148 | command_on: "cvlc --play-and-exit /home/hass/.homeassistant/includes/alarm1.wav" 149 | 150 | alarm_test_2: 151 | command_on: "bash /home/hass/.homeassistant/includes/speech.sh battery is {{ states.sensor.fibaro_system_fgms001_motion_sensor_burglar_5_10.attributes.battery_level }} percent" -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Home Assistant Configuration 2 | 3 | My [Home Assistant](https://home-assistant.io/) Configuration Files 4 | 5 | ![Home_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/home.png) 6 | ![Status_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/status.png) 7 | ![Living Room_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/living_room.png) 8 | ![Back Garden_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/back_garden.png) 9 | ![Front Garden_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/front_garden.png) 10 | ![Bedroom_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/bedroom.png) 11 | ![Nursery_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/nursery.png) 12 | ![Office_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/office.png) 13 | ![Main Bathroom_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/main_bathroom.png) 14 | ![Hallway_Screenshot](https://raw.githubusercontent.com/badgerhome/home-assistant-configuration/master/images/hallway.png) 15 | 16 | 17 | ## Devices 18 | 19 | - [RASPBERRY PI 3 MODEL B](https://www.raspberrypi.org/products/raspberry-pi-3-model-b/) 20 | - [Aeotec Z-Stick Gen5](http://aeotec.com/z-wave-usb-stick) 21 | - [Fibaro Gen5 Motion Sensors](http://www.fibaro.com/en/the-fibaro-system/motion-sensor) 22 | - [Aeotec Multisensor6 Motion Sensors](http://aeotec.com/z-wave-sensor) 23 | - [Z-Wave Greenwave 1 Port PowerNode UK Wall Plugs ON/OFF Energry Monitoring](http://www.vesternet.com/z-wave-greenwave-1-port-powernode) 24 | - [Z-Wave TKB TZ69E GEN5 UK Wall Plugs ON/OFF Energry Monitoring](http://www.vesternet.com/z-wave-greenwave-1-port-powernode) 25 | - [RFXCOM RFXtrx433E USB HA controller](http://www.rfxcom.com/RFXtrx433E-USB-43392MHz-Transceiver/en) 26 | - [LightwaveRF LW107 PIR Movement Sensors](http://www.lightwaverf.com/product/lw107-pir-movement-sensor/) 27 | - [LightwaveRF Retrofit Dimmers](http://www.lightwaverf.com/product-category/retrofit-dimmers/) 28 | - [HomeEasy HE108/HE107 Retrofit Dimmer Switches](http://www.socketsandswitches.com/?SKSID=840&ItemID=2988) 29 | - [HomeEasy UK Remote Control RF Wall Plugs](http://www.uk-automation.co.uk/home-easy-remote-control-3-pack-socket-kit/) 30 | - [LightwaveRF LW904 Magnetic Switches](http://www.lightwaverf.com/product/lw904-magnetic-switch/) 31 | - [Lightwave RF Wireless Portable Door Chime Unit](https://www.downlights.co.uk/lightwave-rf-wireless-portable-door-chime-unit.html) 32 | - [OWL Micro+ CM180 Energy Monitor](http://www.theowl.com/index.php?cID=185) 33 | - [Wansview NCM751GA K1 CCTV Cameras](https://www.amazon.co.uk/Wansview-Camera-Waterproof-Outdoor-W1/dp/B01AC1XRGA) 34 | - [Logitech Harmony Hub](http://www.logitech.com/en-gb/product/harmony-hub) 35 | - [Google Chromecast Audio](https://www.google.com/chromecast/audio/) 36 | - [Amazon Echo UK](https://www.amazon.co.uk/Amazon-SK705DI-Echo-Black/dp/B01GAGVIE4) 37 | - [Nest Gen3 UK](https://nest.com/thermostat/meet-nest-thermostat/) 38 | - LG TV 39 | - [Roku 2](https://www.roku.com/en-gb/products/roku-2) 40 | - [Nvidia SHIELD](https://www2.nvidia.com/en-us/shield/) 41 | - [Philips Hue White Light Bulbs](http://www2.meethue.com/en-gb/) 42 | - [Philips Hue Lux Light Bulbs](http://www2.meethue.com/en-gb/) 43 | - [Philips Hue Bridge](http://www2.meethue.com/en-gb/) 44 | 45 | ## 3rd Party Software Used 46 | 47 | - [Maddox's Harmony-API](https://github.com/maddox/harmony-api) 48 | - [NovaGL's HarmonyHubControl](https://github.com/NovaGL/HarmonyHubControl) 49 | - [Nfarina's Homebridge](https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi) 50 | - [Home-Assistant's Homebridge-Homeassistant](https://github.com/home-assistant/homebridge-homeassistant) 51 | - [Webmin](http://www.webmin.com/) 52 | - [Jim-Easterbrook's Pywws](https://github.com/jim-easterbrook/pywws) 53 | - [OwnTracks iOS App](http://owntracks.appstor.io/) 54 | 55 | ## Devices & Software Outside of Home Assistant 56 | - [PLEX Media Server](https://plex.tv) 57 | - [Blue Iris CCTV Server](http://blueirissoftware.com/) 58 | - [Apache Web Server](https://httpd.apache.org/) 59 | - [Maplin Black USB Wireless Touchscreen Weather Station](http://www.maplin.co.uk/p/black-usb-wireless-touchscreen-weather-centre-n96gy) 60 | - [UnRAID Server (Running Debian & Windows 10 VM](https://lime-technology.com/) 61 | 62 | ## Alexa Skill API 63 | Below are some of the [Intents](https://developer.amazon.com/appsandservices/solutions/alexa/alexa-skills-kit/docs/defining-the-voice-interface#The Intent Schema) & [Utterances](https://developer.amazon.com/appsandservices/solutions/alexa/alexa-skills-kit/docs/defining-the-voice-interface#The Sample Utterances File) I have working with [Home Assistant](https://home-assistant.io/) via the Amazon [Alexa Skills Kit](https://developer.amazon.com/edw/home.html) API 64 | 65 | - ["Alexa, ask home where is user?" - Returns the location of the user - e.g "Michael is at Home" - VIDEO DEMO](https://youtu.be/u4xV0ZQATpk) 66 | 67 | - ["Alexa, ask home where are we?" - Returns the location of all users - e.g. "You are both at home, you silly" - VIDEO DEMO](https://www.youtube.com/watch?v=KQjvtkno20w) 68 | 69 | - ["Alexa, How much electricity are we using?" - Returns the current energy consumption of the home in Watts - e.g. "Your home is currently consuming 432 Watts of electricity" - VIDEO DEMO](https://www.youtube.com/watch?v=ElcyV6g2FOw) 70 | 71 | - ["Alexa, ask home are in windows open?" - Returns the state of the windows (open/closed) in the house - e.g. "The bedroom window is closed, The Nursery window is open" - VIDEO DEMO](https://www.youtube.com/watch?v=q_QnF6TtK1Y) 72 | 73 | - ["Alexa, ask home are any doors open?" - Returns the state of the doors (open/closed) in the house - e.g. "The front door is closed, the patio door is open" - VIDEO DEMO](https://www.youtube.com/watch?v=JUyeM9OZwTA) 74 | 75 | - ["Alexa, ask home how much power is the server using?" - Returns the current energy consumption of the server in Watts - e.g. "Your UnRaid server is currently using 54 watts of electricity" - VIDEO DEMO](https://www.youtube.com/watch?v=bAK2FwmP4ko) 76 | 77 | - "Alexa, ask home what is the nursery temperature" - Returns current temperature in nursery room - e.g. "The temperature in the little ones room is currently 20.2 degrees celcius" 78 | 79 | - ["Alexa, ask home how fast is the internet?" - Returns current downspeed and upspeed - e.g. "Your downspeed is 201 megabits per second, Your uploads is 40.5 megabits per second" - VIDEO DEMO](https://www.youtube.com/watch?v=NtwOrbB_kBc) 80 | 81 | - "Alexa, tell home to pause the T.V." - Pauses the Television on any input 82 | 83 | - "Alexa, tell home to resume playing the T.V." - Plays the Television on any input 84 | 85 | - "Alexa, tell home it's time for bed" - Turns all lights and switches off, leaves a lamp on dim for 5 mins, turns on bedside lamps dim, sets nest thermostat to 18degC 86 | 87 | Coming Soon: 88 | 89 | - Ask Alexa for a summary of the day (e.g. commute time for specific user to certain location, current weather, day's predicted weather, if any windows or doors are left open) and then asks: "would you like me to arm the alarm?" 90 | - Tell Alexa you're going on vacation > turn everything off and turn heating down. 91 | 92 | ## Amazon Alexa & Apple Siri (HomeKit) Emulated Hue 93 | - Control all lights individually or at once. On, Off & Brightness 94 | - Control Television. Turn on TV and numerious inputs. Turn on specific TV channels (.e.g. BBC ONE, Channel4, Cebeebies) 95 | - Control all switches individually or at once. On, Off 96 | - Control Scenes - e.g. Bedtime (switches off all lights and switches, turns on lamp for 5mins and sets nest to 18degC) 97 | - Get temperature information from rooms and outside. 98 | 99 | ## Notable Automations 100 | - When patio door is opened at night time > Switch on garden decking lights and outside wall lamp. 101 | - At Sunset > Switch on outside Christmas lights > Switch off at a set time. 102 | - When doorbell is pushed > Send a notification to mobile with a snapshot of the CCTV cameras and a link to the BlueIris app (allowing 2-way audio communication with person at the door remoteley) also notification to deskop pc when at work. 103 | - When doorbell is pushed > Show a Picture-In-Picture on the TV of the CCTV Camera. 104 | - When motion is detected in (room) > Turn on (lights) in (room) 105 | - When no motion has been detected for a period of time in (room) > turn off (lights) in (room) 106 | - When front door is opened > Send notification to mobile with snapshots of the CCTV cameras and notification to deskop pc when at work. 107 | 108 | Coming soon: 109 | - When a service running on Debian Server goes down > Restart it and send a notification to mobile. 110 | - When a CCTV camera goes offline > Send a noticication 111 | - When temperature in Nursery drops below 18degC > Send a notification to mobile. 112 | - When (user) arrives home > Disarm the Alarm and Greet them with a personal welcome message via audio (e.g. "Welcome home Michael, the temperate inside is 20degrees, it's 8degrees outside and your using 435 watts) 113 | - When the house is empty > turn everything off and arm the alarm 114 | - When motion is detected and no one is home > trigger the alarm (flash all lights in home, sound an alarm, send notification to mobile with CCTV snapshots) 115 | - When door is left open too long > warn with an audio alert/notification 116 | - When energy consumption goes above a set limit > warn with audio alert/notification 117 | - Whens users are sleeping > stop certain automations (e.g. motion lights on) / "downgraded" alarm arm 118 | - When a letter is posted through the letterbox > send a notification to mobile/desktop pc with snapshot of CCTV cameras 119 | - When close to home after being away for more than 24hours > Turn heating on 120 | - When battery levels on sensors are low > send notification 121 | - When first morning motion is detected > turn on lights, tv, heating. 122 | - When tumble dryer in shed is finished > send notification and audio alarm. 123 | - When on vacation > randomise lights on and off. 124 | - Monitor state of all network devices (Alexa, TV, etc) 125 | -------------------------------------------------------------------------------- /customize.yaml: -------------------------------------------------------------------------------- 1 | # custom media players 2 | media_player.chromecastaudio: 3 | friendly_name: Chromecast Audio 4 | media_player.roku_42655p010709: 5 | friendly_name: Bedroom Roku 2 6 | media_player.shield: 7 | friendly_name: Nvidia Shield 8 | 9 | # custom tracked devices 10 | device_tracker.michaelsapplewatch: 11 | hidden: true 12 | device_tracker.michaelsmacbookpro: 13 | hidden: true 14 | device_tracker.michaelsipad: 15 | hidden: true 16 | 17 | # custom logitech harmony hub switch activities 18 | switch.Xbox_ONE: 19 | icon: mdi:xbox 20 | emulated_hue: true 21 | switch.Xbox_360: 22 | icon: mdi:xbox 23 | emulated_hue: true 24 | switch.Apple_TV: 25 | icon: mdi:apple 26 | emulated_hue: true 27 | switch.Android_TV: 28 | icon: mdi:android 29 | emulated_hue: true 30 | switch.Plex: 31 | icon: mdi:plex 32 | emulated_hue: true 33 | switch.TV: 34 | icon: mdi:television 35 | emulated_hue: true 36 | emulated_hue_name: "Telley" 37 | switch.PC: 38 | icon: mdi:windows 39 | #coming soon - a script for PC that sends a WOL packet to Wake the Machine and a shutdown command to switch it off. 40 | 41 | # custom logitech harmony hub switch commands - mainly used with automations and Alexa as Emulated Hue 42 | switch.mute_tv_1: 43 | icon: mdi:volume-off 44 | friendly_name: Mute TV 45 | emulated_hue: true 46 | switch.volume_up_tv_1: 47 | icon: mdi:volume-high 48 | friendly_name: TV Volume Up 49 | hidden: yes 50 | emulated_hue: true 51 | emulated_hue_name: "TV Volume Up" 52 | switch.volume_down_tv_1: 53 | icon: mdi:volume-medium 54 | friendly_name: TV Volume Down 55 | hidden: yes 56 | emulated_hue: true 57 | emulated_hue_name: "TV Volume Down" 58 | 59 | switch.pause_appletv_1: 60 | hidden: yes 61 | switch.pause_humax_1: 62 | hidden: yes 63 | switch.pause_shield_1: 64 | hidden: yes 65 | switch.pause_xbox360_1: 66 | hidden: yes 67 | switch.pause_xboxone_1: 68 | hidden: yes 69 | 70 | #To control channels using Logitech Harmony Hub via Alexa and Siri - Controls numbers 0-9 on a Humax Freesat Box 71 | switch.0_humax_1: 72 | hidden: yes 73 | switch.1_humax_1: 74 | hidden: yes 75 | switch.2_humax_1: 76 | hidden: yes 77 | switch.3_humax_1: 78 | hidden: yes 79 | switch.4_humax_1: 80 | hidden: yes 81 | switch.5_humax_1: 82 | hidden: yes 83 | switch.6_humax_1: 84 | hidden: yes 85 | switch.7_humax_1: 86 | hidden: yes 87 | switch.8_humax_1: 88 | hidden: yes 89 | switch.9_humax_1: 90 | hidden: yes 91 | switch.humax_back_1: 92 | hidden: yes 93 | 94 | switch.bbc_one_1: 95 | homebridge_name: BBC ONE 96 | 97 | script.tv_bbc_one: 98 | emulated_hue: true 99 | emulated_hue_name: "B B C ONE" 100 | 101 | switch.bbc_two: 102 | homebridge_name: BBC TWO 103 | 104 | script.tv_bbc_two: 105 | emulated_hue: true 106 | emulated_hue_name: "B B C TWO" 107 | 108 | switch.itv: 109 | homebridge_name: ITV 110 | 111 | script.tv_itv: 112 | emulated_hue: true 113 | emulated_hue_name: "I T V" 114 | 115 | switch.cbeebies: 116 | homebridge_name: Cbeebies 117 | 118 | script.tv_cbeebies: 119 | emulated_hue: true 120 | emulated_hue_name: "Cbeebies" 121 | 122 | switch.channel_four: 123 | homebridge_name: Channel Four 124 | 125 | script.tv_channel_four: 126 | emulated_hue: true 127 | emulated_hue_name: "FOUR H D" 128 | 129 | switch.channel_five: 130 | homebridge_name: Channel Five 131 | 132 | script.tv_channel_five: 133 | emulated_hue: true 134 | emulated_hue_name: "FIVE H D" 135 | 136 | # custom lights 137 | # garden 138 | switch.Decking_Lights: 139 | icon: mdi:lightbulb 140 | emulated_hue: true 141 | switch.Twinkle_Lights: 142 | icon: mdi:lightbulb 143 | friendly_name: Fence Lights 144 | emulated_hue: true 145 | light.Outside_Light: 146 | friendly_name: Wall Lamp 147 | emulated_hue: true 148 | switch.icicles: 149 | icon: mdi:ornament 150 | 151 | 152 | # living room 153 | light.Living_Room: 154 | friendly_name: Big Lamp 155 | icon: mdi:lamp 156 | emulated_hue: true 157 | light.Living_Room_Lights: 158 | emulated_hue: true 159 | light.Dining_Room_Light: 160 | emulated_hue: true 161 | switch.Christmas_Tree_Lights: 162 | icon: mdi:pine-tree 163 | emulated_hue: true 164 | 165 | # bedroom 166 | light.Mike: 167 | icon: mdi:lamp 168 | emulated_hue: true 169 | light.Alex: 170 | icon: mdi:lamp 171 | emulated_hue: true 172 | 173 | # custom internet speedtest 174 | sensor.speedtest_download: 175 | icon: mdi:cloud-download 176 | friendly_name: Download 177 | sensor.speedtest_upload: 178 | icon: mdi:cloud-upload 179 | friendly_name: Upload 180 | sensor.speedtest_ping: 181 | icon: mdi:vector-line 182 | friendly_name: Ping 183 | 184 | # custom wunderground weather - data is served from my own weather station via Wunderground using PYWWS on a Raspberry Pi 185 | sensor.pws_temp_c: 186 | friendly_name: Temperature 187 | sensor.pws_wind_mph: 188 | icon: mdi:weather-windy 189 | friendly_name: Wind 190 | sensor.pws_wind_dir: 191 | icon: mdi:arrow-all 192 | friendly_name: Wind Direction 193 | 194 | # custom machine and virtual machine wake on lan 195 | switch.Windows_10_Tower: 196 | icon: mdi:windows 197 | homebridge_hidden: true 198 | switch.Windows_10_Virtual_Machine: 199 | icon: mdi:windows 200 | homebridge_hidden: true 201 | switch.Debian_Virtual_Machine: 202 | icon: mdi:linux 203 | homebridge_hidden: true 204 | switch.Debian_VPN_Virtual_Machine: 205 | icon: mdi:linux 206 | homebridge_hidden: true 207 | switch.Ubuntu_Virtual_Machine: 208 | icon: mdi:linux 209 | homebridge_hidden: true 210 | switch.Windows_8_Virtual_Machine: 211 | icon: mdi:windows 212 | homebridge_hidden: true 213 | # used for status only to tell if the CCTV cameras have a network connection 214 | switch.CCTV_1: 215 | icon: mdi:webcam 216 | homebridge_hidden: true 217 | switch.CCTV_2: 218 | icon: mdi:webcam 219 | homebridge_hidden: true 220 | 221 | # custom climate 222 | climate.living_room: 223 | friendly_name: Nest 224 | 225 | # custom scenes 226 | scene.away_mode: 227 | icon: mdi:run 228 | scene.bedtime_mode: 229 | icon: mdi:hotel 230 | scene.tv_volume_up: 231 | icon: mdi:volume-high 232 | scene.tv_volume_down: 233 | icon: mdi:volume-medium 234 | scene.pause_tv: 235 | icon: mdi:pause 236 | scene.play_tv: 237 | icon: mdi:play 238 | 239 | # custom doors 240 | switch.doorbell: 241 | icon: mdi:bell-ring 242 | homebridge_hidden: true 243 | switch.patio_door: 244 | icon: mdi:glassdoor 245 | homebridge_hidden: true 246 | switch.front_door: 247 | icon: mdi:glassdoor 248 | homebridge_hidden: true 249 | switch.letterbox: 250 | icon: mdi:email-outline 251 | homebridge_hidden: true 252 | 253 | # custom windows 254 | switch.nursery_window: 255 | icon: mdi:blinds 256 | homebridge_hidden: true 257 | switch.office_window: 258 | icon: mdi:blinds 259 | homebridge_hidden: true 260 | switch.bedroom_window: 261 | icon: mdi:blinds 262 | homebridge_hidden: true 263 | 264 | # custom automations 265 | switch.temp_switch_1: 266 | hidden: true 267 | 268 | switch.bedtime_switch_1: 269 | emulated_hue: true 270 | emulated_hue_name: "Bedtime" 271 | homebridge_hidden: true 272 | 273 | switch.pause_tv: 274 | emulated_hue: true 275 | emulated_hue_name: "Pause Telley" 276 | 277 | switch.play_tv: 278 | emulated_hue: true 279 | emulated_hue_name: "Unpause Telley" 280 | 281 | # input booleans 282 | # people status 283 | input_boolean.mike_home: 284 | icon: mdi:human-male 285 | input_boolean.alex_home: 286 | icon: mdi:human-female 287 | input_boolean.visitors_home: 288 | icon: mdi:human-male-female 289 | input_boolean.sleeping: 290 | icon: mdi:sleep 291 | # motion status 292 | input_boolean.office_motion: 293 | icon: mdi:run 294 | input_boolean.nursery_motion: 295 | icon: mdi:run 296 | input_boolean.main_bathroom_motion: 297 | icon: mdi:run 298 | input_boolean.bedroom_motion: 299 | icon: mdi:run 300 | 301 | # custom z-wave sensors 302 | # fibaro sensor - 1 303 | sensor.fibaro_system_fgms001_motion_sensor_temperature_5_1: 304 | friendly_name: Temperature 305 | sensor.fibaro_system_fgms001_motion_sensor_luminance_5_3: 306 | friendly_name: LUX 307 | icon: mdi:white-balance-sunny 308 | sensor.fibaro_system_fgms001_motion_sensor_burglar_5_10: 309 | friendly_name: Motion 310 | icon: mdi:run 311 | 312 | # aeotec multisensor 6 - 1 313 | binary_sensor.aeotec_zw100_multisensor_6_sensor_7_0: 314 | polling_intensity: 1 315 | 316 | sensor.aeotec_zw100_multisensor_6_luminance_7_3: 317 | friendly_name: LUX 318 | icon: mdi:white-balance-sunny 319 | sensor.aeotec_zw100_multisensor_6_relative_humidity_7_5: 320 | friendly_name: Humidity 321 | icon: mdi:water-percent 322 | sensor.aeotec_zw100_multisensor_6_temperature_7_1: 323 | friendly_name: Temperature 324 | 325 | # greenwave power node - office 326 | sensor.greenwave_powernode_1_port_power_6_8: 327 | friendly_name: Server Electricity 328 | icon: mdi:power 329 | sensor.greenwave_powernode_1_port_energy_6_0: 330 | friendly_name: Server Total Usage 331 | icon: mdi:power-settings 332 | switch.greenwave_powernode_1_port_switch_6_0: 333 | friendly_name: Server 334 | icon: mdi:server 335 | homebridge_hidden: true 336 | 337 | # greenwave power node - outside rudolph xmas lights 338 | switch.greenwave_powernode_1_port_switch_8_0: 339 | friendly_name: Rudolph 340 | icon: mdi:ornament 341 | 342 | # energy sensors 343 | sensor.mains_electricity: 344 | icon: mdi:power 345 | 346 | # template sensors 347 | # nest 348 | sensor.nest_mode: 349 | icon: mdi:home 350 | # motion 351 | sensor.office_motion: 352 | icon: mdi:run 353 | sensor.nursery_motion: 354 | icon: mdi:run 355 | sensor.main_bathroom_motion: 356 | icon: mdi:run 357 | sensor.bedroom_motion: 358 | icon: mdi:run 359 | # letterbox 360 | sensor.letterbox: 361 | icon: mdi:email-outline 362 | # doors 363 | sensor.patio_door: 364 | icon: mdi:glassdoor 365 | sensor.front_door: 366 | icon: mdi:glassdoor 367 | # windows 368 | sensor.nursery_window: 369 | icon: mdi:blinds 370 | sensor.bedroom_window: 371 | icon: mdi:blinds 372 | sensor.office_window: 373 | icon: mdi:blinds 374 | 375 | # custom services 376 | switch.apache_web_service_debian: 377 | icon: mdi:floppy 378 | switch._REDACTED_: 379 | icon: mdi:floppy 380 | switch._REDACTED_: 381 | icon: mdi:floppy 382 | switch._REDACTED_: 383 | icon: mdi:floppy 384 | switch._REDACTED_: 385 | icon: mdi:floppy 386 | switch.plex_server: 387 | icon: mdi:floppy 388 | switch._REDACTED_: 389 | icon: mdi:floppy 390 | switch._REDACTED_: 391 | icon: mdi:floppy --------------------------------------------------------------------------------