This is the current config. Moved old to the v1-config branch

This commit is contained in:
Jeffrey Stone 2018-03-06 11:04:37 -05:00
parent d0e9db33c8
commit 67ecd08d7a
81 changed files with 1745 additions and 352 deletions

View File

@ -1,9 +1,9 @@
# Home-Assistant Config by [@thejeffreystone](http://www.twitter.com/thejeffreystone)
[Home Assistant](https://home-assistant.io/) configuration files (YAMLs)
This is my Home Assistant Configuration and it is a work in progress. So much to add and so little time.
This is version 2 of my Home Assistant Configuration and it is a work in progress.
Currently I am running HA on a Dell Optiplex running Ubuntu 16.04.
Currently I am running HA on a Raspberry Pi 3.
**Devices I have :**
* Apple Devices (Macbooks, Mac Mini, iPhones, iPads)
@ -16,10 +16,16 @@ Currently I am running HA on a Dell Optiplex running Ubuntu 16.04.
* [GoControl Z-Wave Bulbs](http://a.co/ajfXdIS)
* [Cree Connect Bulbs](http://a.co/91ddysL)
* [Foscam FI8918W](http://a.co/cExSWZ7)
* [ASUS RT-N66U](http://a.co/cCDuNkI)
* [GoControl Z-Wave Garage Door Opener](http://a.co/iw3H4zQ)
* [ZWave Door Sensor]( http://a.co/4Uj8d5r)
* [Sonoff WiFi Wireless Smart Switch ]( http://a.co/9v8KnBT)
* Levitron Plug in ZWave Dimmer
* Levitron ZWave Switch
* Dome Motion Sensor
* Dome Door Window Sensor
* AppleTv
* ChromeCast
* Roku Streaming Stick
**App Integrations**
* Amazon Echo Skill
@ -28,36 +34,13 @@ Currently I am running HA on a Dell Optiplex running Ubuntu 16.04.
* MQTT (For Smartthings and Owntracks)
* Google Maps (For Traffic/Travel Times)
* [Smartthings-MQTT-Bridge](https://github.com/stjohnjohnson/smartthings-mqtt-bridge)
* [Homebridge](https://github.com/nfarina/homebridge)
**Automations:**
```
LOCATION AWARENESS:
Send notifications based on arrival and departure of zones as well as integration with Echo so Alexa can provide location when asked.
SUNSET:
Turn on Outside lights and Living Room Lamp (100%)
SUNRISE:
Turn off all lights
SECURITY
When smoke is detected all lights turn on
```
**Todo List**
* Move HA to RasberryPi 3.
* Move Automations currently handled by Smartthings to HA.
* Add LED Strips to stairs, kitchen cabinets.
* Add Slack notifications.
* ~~Add GoControl Z-Wave Garage Door Opener~~
* Add LED Strips to stairs
* Put Door Sensor in Mailbox
* Add scenes for various daily events and to streamline automation
* Add RGB LED Bulbs to the lamps in the bedrooms and living areas
* Add Motion detectors
* Add door sensors
* ~~Integrate with Google Maps to provide traffic and ETA for daily driving routes~~
* Add Smart locks to ensure all doors are locked.
* Replace other Smoke Detectors with Z-Wave Detectors.

View File

@ -6,143 +6,135 @@ homeassistant:
unit_system: imperial
time_zone: America/New_York
customize: !include customize.yaml
group: !include groups.yaml
automation: !include automation.yaml
sensor: !include_dir_merge_list sensors
light: !include_dir_merge_list lights
switch: !include_dir_merge_list switches
script: !include scripts.yaml
alexa: !include alexa/intents.yaml
input_select: !include input_select.yaml
scene: !include scenes.yaml
frontend:
themes:
blue:
primary-color: "#356AA0"
http:
api_password: !secret MY_API_PASS
ssl_certificate: !secret SSL_CERT
ssl_key: !secret SSL_KEY
#ssl_certificate: !secret SSL_CERT
#ssl_key: !secret SSL_KEY
#base_url: !secret BASEURL
cors_allowed_origins:
- https://google.com
- https://home-assistant.io
use_x_forwarded_for: True
trusted_networks:
- 127.0.0.1
- 192.168.7.0/24
ip_ban_enabled: True
login_attempts_threshold: 5
zone:
name: Home
latitude: !secret MY_LATITUDE
longitude: !secret MY_LONGITUDE
radius: 100
icon: mdi:account-multiple
config:
zone 2:
name: Manheim
latitude: !secret WORK_LATITUDE
longitude: !secret WORK_LONGITUDE
radius: 500
icon: mdi:office
conversation:
zone 3:
name: Zoo Atlanta
latitude: 33.7321545
longitude: -84.3734925
radius: 350
icon: mdi:paw
device_tracker:
- platform: nmap_tracker
hosts: 192.168.7.1/24
track_new_devices: yes
- platform: icloud
username: !secret ICLOUD_USER
password: !secret ICLOUD_PASS
track_new_devices: yes
- platform: geofency
- platform: owntracks
track_new_devices: yes
#- platform: bluetooth_tracker
zone 4:
name: Gump
latitude: 33.89261183797744
longitude: -83.96071630537878
radius: 200
icon: mdi:school
discovery:
zone 5:
name: Pottery
latitude: 33.987571
longitude: -84.0951167
radius: 100
icon: mdi:palette
updater:
#include_used_components: true
zone 6:
name: The Learning Gym
latitude: 33.8992118
longitude: -84.0054688
radius: 100
icon: mdi:dumbbell
sun:
zone 7:
name: Gwinnett Swim
latitude: 34.1414549
longitude: -83.9602195
radius: 100
icon: mdi:swim
#https://home-assistant.io/components/recorder/
recorder:
purge_interval: 1
purge_keep_days: 3
zone 8:
name: Summit
latitude: !secret SUMMIT_LATITUDE
longitude: !secret SUMMIT_LONGITUDE
radius: 500
icon: mdi:office
#https://home-assistant.io/components/logger/
logger:
default: error
logs:
homeassistant.components.sensor.template: critical
homeassistant.components.cover: critical
history:
#zwave:
# usb_path: /dev/ttyACM0
media_player:
- platform: cast
- platform: apple_tv
host: 192.168.7.23
login_id: !secret apple_tv_login
- platform: roku
host: 192.168.7.52
name: roku living room
- platform: vlc
name: hass_speaker
arguments: '--alsa-audio-device=hw:0,0'
tts:
- platform: google
cache: true
cache_dir: /tmp/tts
time_memory: 300
notify:
- platform: ios
- name: all_ios
platform: group
services:
- service: ios_jeffreystonesiphone
- service: ios_jeffreystonesipad
- service: ios_katherinestonesiphone
- name: jeff_ios
platform: group
services:
- service: ios_jeffreystonesiphone
- service: ios_jeffreystonesipad
mqtt:
broker: 192.168.1.20
broker: 192.168.7.24
port: 1883
username: !secret MQTT_USER
password: !secret MQTT_PASS
# View all events in a logbook
logbook:
# Enables support for tracking state changes over time.
history:
### Includes ###
alert: !include_dir_merge_named alerts/
group: !include groups.yaml
automation: !include_dir_merge_list automation
sensor: !include_dir_merge_list sensors
binary_sensor: !include_dir_merge_list binary_sensors
light: !include_dir_merge_list lights
switch: !include_dir_merge_list switches
script: !include_dir_merge_named scripts/
intent_script: !include intents/intents.yaml
scene: !include scenes.yaml
input_select: !include input_select.yaml
input_boolean: !include input_boolean.yaml
zone: !include zones.yaml
ios: !include ios.yaml
# Enables the frontend
frontend:
# Allows you to issue voice commands from the frontend
conversation:
#camera:
# platform: mjpeg
# mjpeg_url: !secret CAMERA
# name: Skylars Room
climate:
platform: honeywell
username: !secret HONEYWELL_USER
password: !secret HONEYWELL_PASS
name: First Floor
region: us
device_tracker:
- platform: asuswrt
host: 192.168.1.1
protocol: telnet
mode: router
username: !secret ROUTER_USER
password: !secret ROUTER_PASS
interval_seconds: 60
consider_home: 180
- platform: icloud
username: !secret ICLOUD_USER
password: !secret ICLOUD_PASS
interval_seconds: 60
consider_home: 180
- platform: bluetooth_tracker
duckdns:
domain: !secret duckdns_domain
access_token: !secret duckdns_token
notify:
# platform: googlevoice
# username: !secret GV_USER
# password: !secret GV_PASS
# name: googlevoice
# - platform: pushbullet
# api_key: !secret pushbullet_api
platform: ios
python_script:
### Devices and Services
ifttt:
key: !secret IFTTT_API_KEY
media_player:
- platform: cast
host: 192.168.1.219
- platform: apple_tv
host: 192.168.1.12
login_id: !secret apple_tv_login
cover:
- platform: mqtt
name: "Garage Door"
@ -155,14 +147,23 @@ cover:
retain: true
optimistic: true
# Discover some devices automatically
discovery:
climate:
platform: honeywell
username: !secret HONEYWELL_USER
password: !secret HONEYWELL_PASS
name: First Floor
region: us
scan_interval: 600
# Checks for available updates
updater:
alexa:
# Track the sun
sun:
map:
### Custom Commands
# iOS
ios:
shell_command:
alarm_off: pkill mpg123
tornado_alarm: mpg123 /media/audio/Tornado_Siren.mp3
door_chime: mpg123 /media/audio/Store_Door_Chime.mp3
security_alarm: mpg123 /media/audio/security_siren.mp3
security_alarm_intro: mpg123 /media/audio/Siren_Noise.mp3

View File

@ -87,14 +87,25 @@ sensor.dark_sky_daily_max_precip_intensity:
# Devices #
device_tracker.owntracks_jeffreysphone:
device_tracker.owntracks_jeffreystonesiphone:
#icon: mdi:human-male
entity_picture: !secret JEFF_ICON
friendly_name: Jeff
sensor.jeffrey_location:
#icon: mdi:human-male
entity_picture: !secret JEFF_ICON
friendly_name: Jeff
sensor.jeff_destination:
icon: mdi:google-maps
name: "Jeffs Destination"
device_tracker.jeffreystonesiphone:
#icon: mdi:human-male
entity_picture: !secret JEFF_ICON
friendly_name: Jeff
sensor.jeff_phone_battery:
icon: mdi:battery-30
friendly_name: "Jeff's iPhone Battery"
@ -156,6 +167,9 @@ sensor.kat_ipad:
sensor.appletv:
icon: mdi:apple
sensor.roku:
icon: mdi:television
sensor.xboxone:
icon: mdi:xbox
@ -196,22 +210,18 @@ switch.tower_lamp:
switch.driveway_light:
icon: mdi:lightbulb
switch.side_door_light:
switch.side_door:
icon: mdi:lightbulb
switch.front_porch_left:
switch.front_porch:
icon: mdi:lightbulb
switch.front_porch_right:
switch.front_lamp:
icon: mdi:lightbulb
switch.rail_lights:
switch.loft_lamp:
icon: mdi:lightbulb
sensor.garage_door:
friendly_name: Garage Door
cover.garage_door:
device_class: garage
friendly_name: Garage Door
@ -227,3 +237,131 @@ sensor.home_to_zoo:
sensor.pws_alerts:
friendly_name: "Weather Alerts"
icon: mdi:alert
switch.master_fan:
friendly_name: "Master Box Fan"
icon: mdi:power-plug
switch.house_secured:
name: House Secured
icon: mdi:lock
switch.vacation_mode:
name: Vacation Mode
icon: mdi:airplane-takeoff
switch.guest_mode:
name: Guest Mode
icon: mdi:account-multiple
switch.notifications_to_kat:
name: Notify Katherine
icon: mdi:telegram
switch.notifications_to_jeff:
name: Notify Jeff
icon: mdi:telegram
switch.automations:
name: automations
icon: mdi:home-automation
sensor.kitchen_fire:
name: Kitchen Smoke Detector
icon: mdi:tower-fire
switch.garage_alarm:
name: Garage Door Alarm
icon: mdi:alert
input_select.trash_pickup:
name: Trash Pickup
icon: mdi:delete-variant
input_select.recycle_pickup:
name: Recycle Pickup
icon: mdi:delete-variant
switch.trash_notification:
name: Trash Notifications
icon: mdi:telegram
sensor.eero_loft:
icon: mdi:router-wireless
sensor.eero_livingroom:
icon: mdi:router-wireless
sensor.smoke_kitchen:
icon: mdi:fire
sensor.family_status:
icon: mdi:home
name: Family Status
sensor.ha_uptime:
friendly_name: HA Uptime
icon: mdi:clock-start
sensor.installed_version:
friendly_name: Installed
icon: mdi:folder-download
sensor.lets_encrypt_expiration:
friendly_name: Lets Encrypt Expiration
icon: mdi:timelapse
sensor.current_ha_version:
friendly_name: Latest Release
icon: mdi:github-circle
sensor.connected_clients:
friendly_name: Connections
icon: mdi:lan-connect
zwave.aeotec_zw090_zstick_gen5_us:
friendly_name: Zwave USB Hub
sensor.ha_v2db:
friendly_name: HA Database
icon: mdi:file
sensor.ha_log:
friendly_name: HA Log
icon: mdi:file
media_player.roku_5s6719003683:
friendly_name: Roku Living Room
icon: mdi:youtube-tv
switch.kitchen_cabinets:
icon: mdi:lightbulb
switch.kitchen_light_strip:
icon: mdi:lightbulb
sensor.accurite_back_porch_temperature:
friendly_name: Back Porch Temp
icon: mdi:thermometer
unit_of_measurement: '°F'
sensor.accurite_back_porch_humidity:
friendly_name: Back Porch Humidity
icon: mdi:water-percent
unit_of_measurement: '%'
sensor.accurite_garage_temperature:
friendly_name: Garage Temp
icon: mdi:thermometer
unit_of_measurement: '°F'
sensor.accurite_garage_humidity:
friendly_name: Garage Humidity
icon: mdi:water-percent
unit_of_measurement: '%'
binary_sensor.garage_dome_sensor:
friendly_name: Garage Motion
sensor.washer_power:
friendly_name: Washer Power
icon: mdi:power-plug
unit_of_measurement: 'w'
sensor.washer:
icon: mdi:power-plug
###### Groups #######

View File

@ -1,13 +1,40 @@
### GROUPS ###
### Views ###
default_view:
name: Home
view: yes
icon: mdi:home
entities:
- group.notices
- group.family
- group.weather_summary
- group.travel_times
- persistent_notification.wxalert
- group.house
- group.thermostat
- group.garage
- group.appliances
- group.pollen_forecast
- group.outside_temp
security:
name: Security
view: yes
icon: mdi:security
entities:
- group.security_system
- group.security_alerts
- group.doors
- group.motion_sensors
- group.fire
lights:
name: Lights
view: yes
icon: mdi:lightbulb
entities:
- group.living_room
- group.master_bedroom
- group.loft
- group.driveway
- group.front_porch
- group.kitchen
- group.scenes
people:
name: People
@ -16,73 +43,146 @@ people:
entities:
- group.jeffrey
- group.katherine
- group.travel_times
living:
name: Living
media:
name: media
view: yes
icon: mdi:sofa
icon: mdi:theater
entities:
- group.living_lights
- group.living_scenes
- group.living_tv
- group.living_gaming
- group.tvs
- group.gaming
- media_player.apple_tv
- media_player.chromecast_lr
- media_player.living_room_tv
- media_player.roku_5s6719003683
- media_player.guest_tv
outdoors:
name: Outdoors
power:
name: power usage
view: yes
icon: mdi:power-plug
entities:
- group.laundry_room
weather:
name: weather
view: yes
icon: mdi:tree
entities:
- group.outside_lights
- group.weather_summary
- group.weather_alerts
- group.sun_and_moon
- group.weather_forecast
- group.pollen_forecast
- group.precipitation
- group.wind
- group.daily_stats
garage:
name: Garage
view: yes
icon: mdi:car
entities:
- group.garage_door
network:
name: Network
homeassistant:
name: HA
view: yes
icon: mdi:network
icon: mdi:home-automation
entities:
- group.ha_system_monitor
- group.ha_version_info
- group.file_size
- group.internet
- group.computers
- group.home_automation
- group.servers
weather:
name: Weather
chores:
name: Chores
view: yes
icon: mdi:weather-partlycloudy
icon: mdi:calendar
entities:
- group.temperature
- group.precipitation
- group.wind
- group.daily_stats
- group.trash_schedule
settings:
name: Settings
view: yes
icon: mdi:settings
entities:
- group.automations
- group.notifications
#################################################################################
### Grops ###
Notices:
- sensor.pws_alerts
Security Status:
- sensor.garage_door
- binary_sensor.back_door
- binary_sensor.front_door
- binary_sensor.laundry_room_door
- binary_sensor.attic_door
- binary_sensor.garage_dome_sensor
- binary_sensor.garage_door
- sensor.smoke_kitchen
- sensor.attic_door
Security Alerts:
control: hidden
entities:
- input_boolean.garage_issue
- input_boolean.security_alarm
- input_boolean.tornado_alarm
Security System:
control: hidden
entities:
- sensor.security_status
- input_boolean.secure_mode
- input_boolean.vacation_mode
House:
control: hidden
entities:
- sensor.house_status
- input_boolean.audible_notifications
- input_boolean.guest_mode
Motion Sensors:
- binary_sensor.garage_dome_sensor
Doors:
- binary_sensor.back_door
- binary_sensor.front_door
- binary_sensor.laundry_room_door
- binary_sensor.attic_door
- binary_sensor.garage_door
Attic:
- binary_sensor.attic_door
Family:
- device_tracker.jeffreystonesiphone
- device_tracker.owntracks_jeffreystonesiphone
- device_tracker.katherinestonesiphone
Jeffrey:
- device_tracker.jeffreystonesiphone
control: hidden
entities:
- device_tracker.owntracks_jeffreystonesiphone
- sensor.jeff_lstatus
- sensor.jeff_destination
- sensor.jeff_iphone_batt
- sensor.jeff_ett_home
- input_select.jeff_status
- input_boolean.jeff_heading_home
- input_boolean.text_notify_jeff
Jeffrey Location:
control: hidden
entities:
- device_tracker.owntracks_jeffreystonesiphone
- device_tracker.jeffreystonesiphone
Katherine:
control: hidden
entities:
- device_tracker.katherinestonesiphone
- sensor.kat_iphone_batt
- sensor.kat_ett_home
- input_boolean.kat_heading_home
- input_boolean.text_notify_kat
Travel Times:
- sensor.home_to_summit
@ -90,43 +190,77 @@ Travel Times:
- sensor.jeff_ett_home
- sensor.kat_ett_home
Living Lights:
Living Room:
- switch.fireplace_lights
- light.tower_lamp
- switch.rail_lights
- light.front_lamp
Living Scenes:
Loft:
- light.loft_lamp
Master Bedroom:
- switch.master_fan
Laundry Room:
#- switch.washer
- sensor.washer_power
Kitchen:
- light.kitchen_cabinets
- light.kitchen_light_strip
Appliances:
- sensor.washer_status
Scenes:
- scene.livingroom_dim
- scene.livingroom_night
- scene.livingroom_normal
- scene.movie_time
- scene.dim_kitchen
- scene.normal_kitchen
Outside Lights:
- switch.driveway_light
- switch.side_door_light
- switch.front_porch_left
- switch.front_porch_right
- switch.side_door
- switch.front_porch
Driveway:
- switch.driveway_light
- switch.side_door
Front Porch:
- switch.front_porch
Thermostat:
- climate.first_floor
Sun and Moon:
- sun.sun
- sun.next_rising
- sun.next_setting
- sensor.moon
Weather Summary:
- sensor.dark_sky_summary
- sensor.dark_sky_apparent_temperature
- sensor.dark_sky_humidity
- sensor.dark_sky_dew_point
- sensor.accurite_back_porch_temperature
- sensor.accurite_back_porch_humidity
Weather Forecast:
- sensor.dark_sky_minutely_summary
- sensor.dark_sky_hourly_summary
- sensor.dark_sky_daily_summary
Temperature:
- sensor.dark_sky_temperature
Outside Temp:
- sensor.dark_sky_apparent_temperature
- sensor.dark_sky_humidity
- sensor.dark_sky_dew_point
- sensor.accurite_back_porch_temperature
- sensor.accurite_back_porch_humidity
Precipitation:
- sensor.dark_sky_nearest_storm_distance
@ -151,24 +285,18 @@ Internet:
- sensor.speedtest_download
- sensor.speedtest_upload
#HVAC:
# - device_tracker.gateway2f3bca
Home Automation:
- sensor.smartthings
- sensor.amazon_dot_lr
- sensor.amazon_dot_kn
- sensor.honeywell
- sensor.eero_loft
- sensor.eero_livingroom
#Cameras:
# - device_tracker.ipcam_00626e46eb09_1
TVs:
- sensor.samsungtv
Living TV:
- sensor.samsungtv
Living Gaming:
- sensor.xboxone
Computers:
@ -178,9 +306,73 @@ Computers:
- sensor.kat_ipad
- sensor.kat_mini
Servers:
- sensor.tycho
- sensor.tightbeam
Garage Door:
- cover.garage_door
Modes:
control: hidden
entities:
- input_boolean.secure_mode
- input_boolean.vacation_mode
- input_boolean.guest_mode
Automation:
- input_boolean.automations
Zones:
- binary_sensor.zone_3
Garage:
- cover.garage_door
- binary_sensor.garage_dome_sensor
- sensor.accurite_garage_temperature
- sensor.accurite_garage_humidity
Fire:
- sensor.smoke_kitchen
HA System Monitor:
- sensor.cpu
- sensor.disk_use_percent_
- sensor.memory_use_percent
- sensor.network_in_eth0
- sensor.network_out_eth0
- sensor.last_boot
- sensor.ha_uptime
- sensor.lets_encrypt_expiration
HA Version Info:
- sensor.installed_version
- sensor.current_ha_version
File Size:
control: hidden
entities:
- sensor.ha_v2db
- sensor.ha_log
#Zwave:
# - zwave.aeotec_zw090_zstick_gen5_us
Weather Alerts:
control: hidden
entities:
- sensor.pws_alerts
- sensor.storm_statement
- sensor.tstorm_warning
- sensor.tornado_watch
- sensor.tornado_warning
Pollen Alerts:
control: hidden
entities:
- sensor.allergy_index_average_forecasted
- sensor.allergy_index_average_historical
- sensor.allergy_index_today
- sensor.allergy_index_tomorrow
- sensor.cold__flu_forecasted_average
Trash Schedule:
- input_select.trash_pickup
- input_select.recycle_pickup
- input_boolean.trash_notification

77
input_boolean.yaml Normal file
View File

@ -0,0 +1,77 @@
secure_mode:
name: Secure Mode
icon: mdi:security
vacation_mode:
name: Vacation Mode
icon: mdi:airplane-takeoff
guest_mode:
name: Guest Mode
icon: mdi:account-multiple
automations:
name: Automations
icon: mdi:home-automation
trash_notification:
name: Trash Notification
icon: mdi:telegram
notifications_kat:
name: Notifications to Kat
icon: mdi:telegram
notifications_jeff:
name: Notifications to Jeff
icon: mdi:telegram
welcome_greeting:
name: Welcome Greeting
icon: mdi:speaker-wireless
lockdown_notification:
name: Lockdown Notifications
icon: mdi:speaker-wireless
garage_notifications:
name: Garage Notifications
icon: mdi:speaker-wireless
tornado_alarm:
name: Tornado Alarm
icon: mdi:speaker-wireless
tstorm_alarm:
name: T-Storm Alarm
icon: mdi:speaker-wireless
security_alarm:
name: Security Alarm
icon: mdi:speaker-wireless
fire_alarm:
name: Fire Alarm
icon: mdi:speaker-wireless
text_notify_jeff:
name: Send Jeff Texts
icon: mdi:telegram
text_notify_kat:
name: Send Kat Texts
icon: mdi:telegram
audible_notifications:
name: Audible Notifications
icon: mdi:speaker-wireless
presence_notifications_jeff:
name: Send Jeff Presence Texts
icon: mdi:telegram
presence_notifications_kat:
name: Send Kat Presence Texts
icon: mdi:telegram
garage_issue:
name: Garage Issue
icon: mdi:alert
security_issue:
name: Security Issue
kat_heading_home:
name: Kat Heading Home
icon: mdi:car
jeff_heading_home:
name: Jeff Heading Home
icon: mdi:car
washer_notification:
name: Washer Notification
icon: mdi:speaker-wireless
washer_running:
name: Washer Running
icon: mdi:speaker-wireless
skylar_notifications:
name: Skylar Audible Notifications
icon: mdi:speaker-wireless

View File

@ -1,14 +1,26 @@
jeff_status:
name: Jeff Status
alarm_mode:
name: alarm mode
options:
- stationary
- moving
- unknown
initial: unknown
kat_status:
name: Kat Status
- home_armed
- away_armed
- disarmed
trash_pickup:
name: Trash Pickup
options:
- stationary
- moving
- unknown
initial: unknown
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
initial: Tuesday
icon: mdi:delete-variant
recycle_pickup:
name: Recycle Pickup
options:
- Monday
- Tuesday
- Wednesday
- Thursday
- Friday
initial: Tuesday
icon: mdi:delete-variant

50
ios.yaml Normal file
View File

@ -0,0 +1,50 @@
push:
categories:
- name: Lamps Off
identifier: 'Lamps'
actions:
- identifier: 'LAMPS_OFF'
title: 'Lamps Off'
activationMode: 'background'
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'DISMISS'
title: 'Dismiss'
activationMode: 'background'
authenticationRequired: yes
destructive: no
behavior: 'default'
- name: Htpc Off
identifier: 'Htpc'
actions:
- identifier: 'HTPC_OFF'
title: 'Htpc Off'
activationMode: 'background'
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'DISMISS'
title: 'Dismiss'
activationMode: 'background'
authenticationRequired: yes
destructive: no
behavior: 'default'
- name: Dektop Off
identifier: 'Desktop'
actions:
- identifier: 'DESKTOP_OFF'
title: 'Desktop Off'
activationMode: 'background'
authenticationRequired: yes
destructive: yes
behavior: 'default'
- identifier: 'DISMISS'
title: 'Dismiss'
activationMode: 'background'
authenticationRequired: yes
destructive: no
behavior: 'default'

19
lights/kitchen.yaml Normal file
View File

@ -0,0 +1,19 @@
- platform: mqtt
name: "Kitchen Cabinets"
state_topic: "smartthings/Kitchen Cabinets/switch"
command_topic: "smartthings/Kitchen Cabinets/switch"
brightness_state_topic: "smartthings/Kitchen Cabinets/level"
brightness_command_topic: "smartthings/Kitchen Cabinets/level"
brightness_scale: 101
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Kitchen Light Strip"
state_topic: "smartthings/Kitchen Light Strip/switch"
command_topic: "smartthings/Kitchen Light Strip/switch"
brightness_state_topic: "smartthings/Kitchen Light Strip/level"
brightness_command_topic: "smartthings/Kitchen Light Strip/level"
payload_on: "on"
payload_off: "off"
retain: true

View File

@ -4,6 +4,17 @@
command_topic: "smartthings/Tower Lamp/switch"
brightness_state_topic: "smartthings/Tower Lamp/level"
brightness_command_topic: "smartthings/Tower Lamp/level"
brightness_scale: 101
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Front Lamp"
state_topic: "smartthings/Front Lamp/switch"
command_topic: "smartthings/Front Lamp/switch"
brightness_state_topic: "smartthings/Front Lamp/level"
brightness_command_topic: "smartthings/Front Lamp/level"
brightness_scale: 101
payload_on: "on"
payload_off: "off"
retain: true

10
lights/loft.yaml Normal file
View File

@ -0,0 +1,10 @@
- platform: mqtt
name: "Loft Lamp"
state_topic: "smartthings/Loft Lamp/switch"
command_topic: "smartthings/Loft Lamp/switch"
brightness_state_topic: "smartthings/Loft Lamp/level"
brightness_command_topic: "smartthings/Loft Lamp/level"
brightness_scale: 101
payload_on: "on"
payload_off: "off"
retain: true

View File

@ -3,14 +3,37 @@
light.tower_lamp:
state: on
brightness: 100
light.front_lamp:
state: on
brightness: 100
- name: livingroom dim
entities:
light.tower_lamp:
state: on
brightness: 40
light.front_lamp:
state: on
brightness: 40
- name: livingroom night
entities:
light.tower_lamp:
state: on
brightness: 10
light.front_lamp:
state: off
- name: movie time
entities:
light.tower_lamp:
state: off
light.front_lamp:
state: off
- name: dim kitchen
entities:
light.kitchen_cabinets:
state: on
brightness: 40
- name: normal kitchen
entities:
light.kitchen_cabinets:
state: on
brightness: 100

View File

@ -0,0 +1,5 @@
appliances_off:
sequence:
- service: switch.turn_off
data:
entity_id: switch.master_fan

View File

@ -0,0 +1,5 @@
appliances_on:
sequence:
- service: switch.turn_on
data:
entity_id: switch.master_fan

12
scripts/driveway_off.yaml Normal file
View File

@ -0,0 +1,12 @@
# Turn off Driveway lights after 10 minute delay
driveway_off:
sequence:
- delay:
minutes: 10
- service: switch.turn_off
data:
entity_id: switch.driveway_light
- service: switch.turn_off
data:
entity_id: switch.side_door

12
scripts/driveway_on.yaml Normal file
View File

@ -0,0 +1,12 @@
driveway_on:
sequence:
- condition: state
entity_id: sun.sun
state: 'below_horizon'
- service: switch.turn_on
data:
entity_id: switch.driveway_light
- service: switch.turn_on
data:
entity_id: switch.side_door

View File

@ -0,0 +1,6 @@
family_is_away:
sequence:
- service: mqtt.publish
data:
topic: "house/family/status"
payload_template: "away"

View File

@ -0,0 +1,6 @@
family_is_home:
sequence:
- service: mqtt.publish
data:
topic: "house/family/status"
payload_template: "home"

View File

@ -0,0 +1,15 @@
fire_alarm_kitchen:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Smoke Detected: Kitchen"
- delay:
minutes: 1
- service: notify.jeff_ios
data:
message: 'Smoke Detected in Kitchen.'
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Attention. Smoke detected in the kitchen.

View File

@ -0,0 +1,16 @@
garage_abort_lockdown:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Aborting Lockdown - Garage Could Not Close"
- condition: state
entity_id: input_boolean.secure_mode
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage was unable to close.
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode

11
scripts/garage_close.yaml Normal file
View File

@ -0,0 +1,11 @@
close_garage:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "HASS: Closing Garage"
- condition: state
entity_id: cover.garage_door
state: "open"
- service: cover.close_cover
entity_id: cover.garage_door

View File

@ -0,0 +1,11 @@
garage_closing:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "INFO: Garage Closing"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage is Closing

View File

@ -0,0 +1,13 @@
garage_failed_to_close:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "WARN: Garage Could Not Close"
- condition: state
entity_id: sensor.garage_door_contact
state: "open"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage was unable to close.

View File

@ -0,0 +1,16 @@
#garage_now_closed:
# sequence:
# - event: LOGBOOK_ENTRY
# event_data:
# name: EVENT
# message: "SUCCESS: Garage Now Closed"
# - condition: state
# entity_id: sensor.garage_door_contact
# state: "closed"
#- service: notify.jeff_ios
# data:
# message: 'SUCCESS: Garage Now Closed'
#- service: tts.google_say
# data:
# entity_id: media_player.hass_speaker
# message: Garage has been Closed.

11
scripts/garage_open.yaml Normal file
View File

@ -0,0 +1,11 @@
open_garage:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "opening the garage"
- condition: state
entity_id: cover.garage_door
state: "closed"
- service: cover.open_cover
entity_id: cover.garage_door

View File

@ -1,8 +1,12 @@
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning inside lights off."
- service: switch.turn_off
data:
entity_id: switch.tower_lamp
inside_all_off:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning inside lights off"
- service: light.turn_off
data:
entity_id: light.tower_lamp
- service: light.turn_off
data:
entity_id: light.front_lamp

View File

@ -1,11 +1,15 @@
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning inside lights on."
- service: switch.turn_on
data:
entity_id: switch.tower_lamp
- service: scene.turn_on
data:
entity_id: scene.livingroom_normal
inside_all_on:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning inside lights on."
- service: light.turn_on
data:
entity_id: light.tower_lamp
- service: light.turn_on
data:
entity_id: light.front_lamp
- service: scene.turn_on
data:
entity_id: scene.livingroom_normal

View File

@ -0,0 +1,8 @@
jeff_at_work_notification:
sequence:
- condition: state
entity_id: input_boolean.text_notify_kat
state: "on"
- service: notify.ios_katherinestonesiphone
data:
message: Jeff has arrived at Summit

View File

@ -0,0 +1,7 @@
jeff_destination_arrived:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Arrived"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_harbins:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Harbins"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_home:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Home"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_na:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "na"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_none:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "none"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_summit:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Summit"
retain: true

View File

@ -0,0 +1,7 @@
jeff_destination_zoo:
sequence:
- service: mqtt.publish
data:
topic: "jeff/driving/destination"
payload: "Zoo"
retain: true

View File

@ -0,0 +1,9 @@
jeff_is_home_audible:
sequence:
- condition: state
entity_id: input_boolean.audible_notifications
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Jeffrey is home

View File

@ -1,9 +1,7 @@
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Jeff is Moving"
- service: input_select.select_option
data:
entity_id: input_select.jeff_status
option: moving
jeff_is_moving:
sequence:
- service: mqtt.publish
data:
topic: "jeff/location/status"
payload: "moving"
retain: true

View File

@ -1,9 +1,7 @@
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Jeff is Stationary"
- service: input_select.select_option
data:
entity_id: input_select.jeff_status
option: stationary
jeff_is_stationary:
sequence:
- service: mqtt.publish
data:
topic: "jeff/location/status"
payload: "stationary"
retain: true

View File

@ -0,0 +1,9 @@
kat_is_home_audible:
sequence:
- condition: state
entity_id: input_boolean.audible_notifications
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Katherine is home

View File

@ -0,0 +1,7 @@
kill_audible_alarm:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Silence Alarm"
- service: shell_command.alarm_off

9
scripts/lockdown.yaml Normal file
View File

@ -0,0 +1,9 @@
lockdown:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Executing Lockdown procedures"
- service: input_boolean.turn_on
data:
entity_id: input_boolean.secure_mode

View File

@ -0,0 +1,11 @@
lockdown:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Executing Lockdown in 5 mins"
- delay:
minutes: 5
- service: input_boolean.turn_on
data:
entity_id: input_boolean.secure_mode

View File

@ -1,17 +1,15 @@
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning outside lights off."
- service: switch.turn_off
data:
entity_id: switch.driveway_light
- service: switch.turn_off
data:
entity_id: switch.side_door_light
- service: switch.turn_off
data:
entity_id: switch.front_porch_left
- service: switch.turn_off
data:
entity_id: switch.front_porch_right
outside_all_off:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning outside lights off."
- service: switch.turn_off
data:
entity_id: switch.driveway_light
- service: switch.turn_off
data:
entity_id: switch.side_door_light
- service: switch.turn_off
data:
entity_id: switch.front_porch

View File

@ -1,17 +1,16 @@
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning outside lights on."
- service: switch.turn_on
data:
entity_id: switch.driveway_light
- service: switch.turn_on
data:
entity_id: switch.side_door_light
- service: switch.turn_on
data:
entity_id: switch.front_porch_left
- service: switch.turn_on
data:
entity_id: switch.front_porch_right
outside_all_on:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Turning outside lights on."
- service: switch.turn_on
data:
entity_id: switch.driveway_light
- service: switch.turn_on
data:
entity_id: switch.side_door_light
- service: switch.turn_on
data:
entity_id: switch.front_porch

View File

@ -0,0 +1,13 @@
security_access_authorized:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Access Authorized: Security Measures Standing Down"
#- service: notify.jeff_ios
# data:
# message: 'Access Authorized: Security Measures Standing Down'
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Access Authorized. Security response has been canceled

View File

@ -0,0 +1,18 @@
security_check_garage:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Performing Security check - Garage"
- condition: state
#entity_id: sensor.garage_door_contact
entity_id: cover.garage_door
state: "open"
- delay:
minutes: 1
- service: input_boolean.turn_on
data:
entity_id: input_boolean.garage_issue
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode

View File

@ -0,0 +1,16 @@
security_check_verified:
sequence:
- condition: state
#entity_id: sensor.garage_door_contact
entity_id: cover.garage_door
state: "closed"
- condition: state
entity_id: group.doors
state: "closed"
- service: notify.jeff_ios
data:
message: "SECURITY: Lockdown procedures Complete"
- service: homeassistant.turn_off
entity_id: script.security_check_zones
- service: homeassistant.turn_off
entity_id: script.security_check_garage

View File

@ -0,0 +1,17 @@
security_check_zones:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "SECURITY: Performing Security check - Zones"
- condition: state
entity_id: group.doors
state: "Open"
- delay:
seconds: 20
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode
- service: input_boolean.turn_on
data:
entity_id: input_boolean.security_issue

View File

@ -0,0 +1,31 @@
security_report:
sequence:
- delay:
seconds: 9
- service: tts.google_say
data_template:
entity_id: media_player.hass_speaker
message: >
{%- if is_state("input_boolean.security_alarm", "on") %}
{%- if is_state("binary_sensor.front_door", "on") %}
Front door is open
{%- endif %}
{%- if is_state("binary_sensor.back_door", "on") %}
Back door is open
{%- endif %}
{%- if is_state("binary_sensor.laundry_room_door", "on") %}
Laundry door is open
{%- endif %}
{%- if is_state("binary_sensor.attic_door", "on") %}
Attic door is open
{%- endif %}
{%- if is_state("binary_sensor.garage_door", "on") %}
Garage door is open
{%- endif %}
{%- if is_state("binary_sensor.garage_motion", "on") %}
Motion in garage
{%- endif %}
{% else %}
House is secure
{%- endif %}

View File

@ -0,0 +1,9 @@
security_sound_alarm:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Sounding Security Alarm"
- delay:
seconds: 80
- service: shell_command.security_alarm

View File

@ -0,0 +1,10 @@
security_sound_alarm_intro:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Sounding Security Alarm Intro"
- condition: state
entity_id: sensor.family_status
state: home
- service: shell_command.security_alarm_intro

View File

@ -0,0 +1,12 @@
security_warning_back_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Back door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Back door open

View File

@ -0,0 +1,12 @@
security_warning_front_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Front door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: front door open

View File

@ -0,0 +1,12 @@
security_warning_garage_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Front door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Garage is open

View File

@ -0,0 +1,12 @@
security_warning_garage_motion:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Motion in Garage"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Motion in Garage

View File

@ -0,0 +1,12 @@
security_warning_front_door:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Warning: Laundry room door open"
- delay:
seconds: 5
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Laundry Room door open

View File

@ -0,0 +1,9 @@
skylar_dressed_notifications:
sequence:
- condition: state
entity_id: sensor.family_status
state: home
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Skylar it is time to get dressed

12
scripts/standby.yaml Normal file
View File

@ -0,0 +1,12 @@
standby:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Security standing down"
- service: input_boolean.turn_off
data:
entity_id: input_boolean.secure_mode
- service: notify.jeff_ios
data:
message: Anchorage House in Standby

View File

@ -0,0 +1,17 @@
status_report:
sequence:
- service: tts.google_say
data_template:
entity_id: media_player.hass_speaker
message: >
{% if now().strftime("%H")|int < 12 %}
Good morning
{% elif now().strftime("%H")|int < 18 %}
Good afternoon
{% else %}
Good evening
{% endif %}
It's {{now().strftime("%H%M")}}
It's currently {{states.sensor.dark_sky_summary.state}} and {{states.sensor.dark_sky_temperature.state|round}}
degrees in Grayson. Today will be {{states.sensor.dark_sky_hourly_summary.state|replace(".", "")}}, with a high of
{{states.sensor.dark_sky_daily_high_temperature.state|round}} degrees.

14
scripts/test_tts.yaml Normal file
View File

@ -0,0 +1,14 @@
test_tts:
sequence:
- service: tts.google_say
data_template:
entity_id: media_player.hass_speaker
message: >
{% if now().strftime("%H")|int < 12 %}
Good morning
{% elif now().strftime("%H")|int < 18 %}
Good afternoon
{% else %}
Good evening
{% endif %}
This is simply a test of google's text to speech platform

View File

@ -0,0 +1,12 @@
tornado_alarm:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Sounding Tornado Alarm"
- delay:
seconds: 15
- service: shell_command.tornado_alarm

View File

@ -0,0 +1,13 @@
tornado_warning:
sequence:
- event: LOGBOOK_ENTRY
event_data:
name: EVENT
message: "Tornado Warning"
#- service: notify.jeff_ios
# data:
# message: 'Tornado Warning Issued for Anchorage House.'
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: Atention. Severe Weather Alert. A Tornado Warning has been issued for this area. Repeat. A Tornado Warning has been issued for this area. Sounding Alarm.

View File

@ -0,0 +1,8 @@
vacation_canceled:
sequence:
- condition: state
entity_id: input_boolean.vacation_mode
state: "on"
- service: input_boolean.turn_off
data:
entity_id: input_boolean.vacation_mode

View File

@ -0,0 +1,14 @@
washer_finished_notification:
sequence:
- condition: state
entity_id: input_boolean.washer_notification
state: 'on'
- delay:
minutes: 3
- service: notify.all_ios
data:
message: "Washer is done"
- service: input_boolean.turn_off
data:
entity_id: input_boolean.washer_notification
- service: script.washer_notification_audible

View File

@ -0,0 +1,10 @@
washer_notification_audible:
sequence:
- condition: state
entity_id: input_boolean.audible_notifications
state: "on"
- service: tts.google_say
data:
entity_id: media_player.hass_speaker
message: The Washing Machine has stopped

17
scripts/wxalert_tile.yaml Normal file
View File

@ -0,0 +1,17 @@
wxalert_tile:
sequence:
## Dismiss any current alert so the UI isn't filled
## up with these if there are more then one.
## Only show the latest alert
- service: persistent_notification.dismiss
data:
notification_id: "wxalert"
## Create a new persistant notification in the UI for a new alert
- service_template: >
{% if states.sensor.pws_alerts.attributes.Message %}
persistent_notification.create
{% endif %}
data_template:
notification_id: "wxalert"
message: '{{ states.sensor.pws_alerts.attributes.Message }}'
title: '{{ states.sensor.pws_alerts.attributes.Description }}'

32
sensors/batteries.yaml Normal file
View File

@ -0,0 +1,32 @@
- platform: mqtt
name: "Front Door Battery"
state_topic: "smartthings/Front Door/battery"
- platform: mqtt
name: "Laundry Door Battery"
state_topic: "smartthings/Laundry Room Door/battery"
- platform: mqtt
name: "Kitchen Smoke Battery"
state_topic: "smartthings/Kitchen Smoke/battery"
- platform: mqtt
name: "Back Door Battery"
state_topic: "smartthings/Back Door/battery"
- platform: template
sensors:
jeff_iphone_batt:
unit_of_measurement: '%'
value_template: >-
{%- if states.device_tracker.jeffreystonesiphone.attributes.battery %}
{{ states.device_tracker.jeffreystonesiphone.attributes.battery | round(1) }}
{% else %}
{{ states.sensor.jeff_iphone_batt.state }}
{%- endif %}
icon_template: '{%- if is_state("sensor.jeff_iphone_batt", "unknown") %}mdi:battery-unknown{%- elif is_state_attr("device_tracker.jeffreystonesiphone", "battery_status", "Charging") %}mdi:battery-charging{%- elif states.device_tracker.jeffreystonesiphone.attributes.battery <= 5 %}mdi:battery-outline{%- elif states.device_tracker.jeffreystonesiphone.attributes.battery >= 95 %}mdi:battery{% else %}mdi:battery-{{(states.device_tracker.jeffreystonesiphone.attributes.battery|float / 10)|round*10}}{%- endif %}'
kat_iphone_batt:
unit_of_measurement: '%'
value_template: >-
{%- if states.device_tracker.katherinestonesiphone.attributes.battery %}
{{ states.device_tracker.katherinestonesiphone.attributes.battery | round(1) }}
{% else %}
{{ states.sensor.kat_iphone_batt.state }}
{%- endif %}
icon_template: '{%- if is_state("sensor.kat_iphone_batt", "unknown") %}mdi:battery-unknown{%- elif is_state_attr("device_tracker.katherinestonesiphone", "battery_status", "Charging") %}mdi:battery-charging{%- elif states.device_tracker.katherinestonesiphone.attributes.battery <= 5 %}mdi:battery-outline{%- elif states.device_tracker.katherinestonesiphone.attributes.battery >= 95 %}mdi:battery{% else %}mdi:battery-{{(states.device_tracker.katherinestonesiphone.attributes.battery|float / 10)|round*10}}{%- endif %}'

View File

@ -2,15 +2,11 @@
sensors:
amazon_dot_lr:
friendly_name: 'Amazon Dot LR'
value_template: "{{ 'Online' if is_state('device_tracker.kindlecdf98981f', 'home') else 'Offline' }}"
value_template: "{{ 'Online' if is_state('device_tracker.dot_livingroom', 'home') else 'Offline' }}"
amazon_dot_kn:
friendly_name: 'Amazon Dot KN'
value_template: "{{ 'Online' if is_state('device_tracker.kindle23d7b37a0', 'home') else 'Offline' }}"
circle:
friendly_name: 'Disney Circle'
value_template: "{{ 'Online' if is_state('device_tracker.circle', 'home') else 'Offline' }}"
value_template: "{{ 'Online' if is_state('device_tracker.dot_kitchen', 'home') else 'Offline' }}"
tycho:
friendly_name: 'tycho'
@ -28,9 +24,9 @@
friendly_name: 'xboxone'
value_template: "{{ 'Online' if is_state('device_tracker.xboxone', 'home') else 'Offline' }}"
chromecast:
friendly_name: 'Chromecast'
value_template: "{{ 'On' if is_state('media_player.chromecast_lr', 'on') else 'Off' }}"
chromecast_livingroom:
friendly_name: 'Chromecast - Living Room'
value_template: "{{ 'On' if is_state('media_player.chromecast_livingroom', 'on') else 'Off' }}"
smartthings:
friendly_name: 'SmartThings'
@ -44,10 +40,6 @@
friendly_name: 'Honeywell'
value_template: "{{ 'Online' if is_state('device_tracker.gateway2f3bca', 'home') else 'Offline' }}"
router:
friendly_name: 'Asus Router'
value_template: "{{ 'Online' if is_state('device_tracker.routerasuscom', 'home') else 'Offline' }}"
kat_mini:
friendly_name: "Kat's Mini"
value_template: "{{ 'Online' if is_state('device_tracker.katherinesmini', 'home') else 'Offline' }}"
@ -68,22 +60,36 @@
friendly_name: "Kat's iPad"
value_template: "{{ 'Online' if is_state('device_tracker.katherinesipad', 'home') else 'Offline' }}"
jeff_iphone_batt:
unit_of_measurement: '%'
value_template: >-
{%- if states.device_tracker.jeffreystonesiphone.attributes.battery %}
{{ states.device_tracker.jeffreystonesiphone.attributes.battery | round(1) }}
{% else %}
{{ states.sensor.jeff_iphone_batt.state }}
{%- endif %}
icon_template: '{%- if is_state("sensor.jeff_iphone_batt", "unknown") %}mdi:battery-unknown{%- elif is_state_attr("device_tracker.jeffreystonesiphone", "battery_status", "Charging") %}mdi:battery-charging{%- elif states.device_tracker.jeffreystonesiphone.attributes.battery <= 5 %}mdi:battery-outline{%- elif states.device_tracker.jeffreystonesiphone.attributes.battery >= 95 %}mdi:battery{% else %}mdi:battery-{{(states.device_tracker.jeffreystonesiphone.attributes.battery|float / 10)|round*10}}{%- endif %}'
eero_livingroom:
friendly_name: "Eero Living Room"
value_template: "{{ 'Online' if is_state('device_tracker.eero_livingroom', 'home') else 'Offline' }}"
kat_iphone_batt:
unit_of_measurement: '%'
eero_loft:
friendly_name: "Eero Loft"
value_template: "{{ 'Online' if is_state('device_tracker.eero_loft', 'home') else 'Offline' }}"
smoke_kitchen:
friendly_name: "Kitchen Smoke"
value_template: "{{ 'Smoke Detected!' if is_state('device_tracker.eero_loft', 'smoke') else 'All Clear' }}"
security_status:
friendly_name: 'Security System'
value_template: '{{ "Armed" if is_state("input_boolean.secure_mode", "on") else "Disarmed" }}'
icon_template: '{%- if is_state("input_boolean.secure_mode", "on") %}mdi:lock{% else %}mdi:lock-open{%- endif %}'
garage_motion:
friendly_name: "Garage Motion"
value_template: "{{ 'open' if is_state('sensor.garage_dome_sensor', 'motion') else 'clear' }}"
washer_status:
friendly_name: "Washer Status"
value_template: >-
{%- if states.device_tracker.katherinestonesiphone.attributes.battery %}
{{ states.device_tracker.katherinestonesiphone.attributes.battery | round(1) }}
{% else %}
{{ states.sensor.kat_iphone_batt.state }}
{%- endif %}
icon_template: '{%- if is_state("sensor.kat_iphone_batt", "unknown") %}mdi:battery-unknown{%- elif is_state_attr("device_tracker.katherinestonesiphone", "battery_status", "Charging") %}mdi:battery-charging{%- elif states.device_tracker.katherinestonesiphone.attributes.battery <= 5 %}mdi:battery-outline{%- elif states.device_tracker.katherinestonesiphone.attributes.battery >= 95 %}mdi:battery{% else %}mdi:battery-{{(states.device_tracker.katherinestonesiphone.attributes.battery|float / 10)|round*10}}{%- endif %}'
{% if states('sensor.washer_power') | float > 2 %}
running
{% else %}
idle
{%endif %}
icon_template: mdi:washing-machine

View File

@ -1,7 +1,7 @@
- platform: google_travel_time
name: "Jeff ETT Home"
api_key: !secret google_api
origin: device_tracker.jeffreystonesiphone
origin: device_tracker.owntracks_jeffreystonesiphone
destination: zone.home
- platform: google_travel_time
name: "Kat ETT Home"

25
sensors/house.yaml Normal file
View File

@ -0,0 +1,25 @@
- platform: mqtt
name: "Family Status"
state_topic: "house/family/status"
payload_on: "home"
payload_off: "away"
retain: true
- platform: template
sensors:
house_status:
friendly_name: Status
unit_of_measurement: ''
value_template: >-
{%- if is_state("sensor.family_status", "home") %}
Home ({{ states.sensor.security_status.state }})
{% else %}
Away ({{ states.sensor.security_status.state }})
{%- endif %}
icon_template: >-
{%- if is_state("sensor.family_status", "home") %}
mdi:home
{%- elif is_state("sensor.family_status", "away") %}
mdi:home-outline
{% else %}
mdi:home-outline
{%- endif %}

View File

@ -1,12 +1,13 @@
- platform: mqtt
name: "Jeff Phone Battery"
state_topic: "owntracks/owntracks/jeffreysphone"
state_topic: "owntracks/owntracks/jeffreystonesiphone"
qos: 0
unit_of_measurement: "%"
value_template: '{{ value_json.batt }}'
- platform: mqtt
name: "Jeff Velocity"
state_topic: "owntracks/owntracks/jeffreysphone"
state_topic: "owntracks/owntracks/jeffreystonesiphone"
qos: 0
unit_of_measurement: "mph"
unit_of_measurement: "kmh"
value_template: '{{ value_json.vel }} '

4
sensors/power.yaml Normal file
View File

@ -0,0 +1,4 @@
- platform: mqtt
name: "Washer Power"
state_topic: "smartthings/Washer/power"
retain: true

12
sensors/presence.yaml Normal file
View File

@ -0,0 +1,12 @@
- platform: mqtt
name: "Kat Presence"
state_topic: "smartthings/Kat/presence"
payload_on: "present"
payload_off: "not present"
retain: true
- platform: mqtt
name: "Jeff Presence"
state_topic: "smartthings/Jeffrey/presence"
payload_on: "present"
payload_off: "not present"
retain: true

9
sensors/security.yaml Normal file
View File

@ -0,0 +1,9 @@
- platform: mqtt
name: "Lockdown Status"
state_topic: "house/lockdown/status"
- platform: mqtt
name: "Kitchen Smoke"
state_topic: "smartthings/Kitchen Smoke/smoke"
payload_on: "smoke"
payload_off: "clear"
retain: true

57
sensors/system.yaml Normal file
View File

@ -0,0 +1,57 @@
- platform: systemmonitor
resources:
- type: disk_use_percent
arg: /
- type: memory_use_percent
- type: network_in
arg: eth0
- type: network_out
arg: eth0
- type: last_boot
- type: load_15m
- type: processor_use
- type: since_last_boot
- platform: cpuspeed
name: CPU
- platform: time_date
display_options:
- 'time'
- 'date'
- 'date_time'
- 'time_date'
- 'time_utc'
- 'beat'
- platform: cert_expiry
host: !secret BASEURL
name: Lets Encrypt Expiration
- platform: command_line
name: "HA Uptime"
command: echo "$(($(date +%s) - $(date -d "$(head -n1 /home/homeassistant/.homeassistant/home-assistant.log | cut -d' ' -f-2)" +%s)))"
scan_interval: 720
value_template: >-
{% set uptime = value | int %}
{% set seconds = uptime % 60 %}
{% set minutes = ((uptime % 3600) / 60) | int %}
{% set hours = ((uptime % 86400) / 3600) | int %}
{% set days = (uptime / 86400) | int %}
{%- if days > 0 -%}
{%- if days == 1 -%}
1 day
{%- else -%}
{{ days }} days
{%- endif -%}
{{ ', ' }}
{%- endif -%}
{{ '%02d' % hours }}:{{ '%02d' % minutes }}
- platform: command_line
command: python3 -c "import requests; print(requests.get('https://pypi.python.org/pypi/homeassistant/json').json()['info']['version'])"
name: Current HA Version
- platform: command_line
name: Installed version
command: "head -5 /home/homeassistant/.homeassistant/.HA_VERSION"
- platform: command_line
name: ha_v2db
command: "ls -sh /home/homeassistant/.homeassistant/home-assistant_v2.db | cut -f1 -d ' '"
- platform: command_line
name: ha_log
command: "ls -sh /home/homeassistant/.homeassistant/home-assistant.log | cut -f1 -d ' '"

45
sensors/users.yaml Normal file
View File

@ -0,0 +1,45 @@
- platform: mqtt
name: "Jeff Destination"
state_topic: "jeff/driving/destination"
- platform: mqtt
name: "Jeff Status"
state_topic: "jeff/location/status"
- platform: template
sensors:
jeff_lstatus:
friendly_name: Jeff is
unit_of_measurement: ''
value_template: >-
{%- if is_state("sensor.jeff_status", "moving") %}
moving
{% else %}
stationary
{%- endif %}
icon_template: >-
{%- if is_state("sensor.jeff_status", "moving") %}
mdi:bike
{% else %}
mdi:map-marker
{%- endif %}
- platform: template
sensors:
family_presence:
friendly_name: Family Presence
unit_of_measurement: ''
value_template: >-
{%- if is_state("sensor.jeff_presence", "present") %}
Home
{% elif is_state("sensor.kat_presence", "present") %}
Home
{% else %}
Away
{%- endif %}
icon_template: >-
{%- if is_state("sensor.family_presence", "Home") %}
mdi:home
{%- elif is_state("sensor.family_presence", "Away") %}
mdi:home-outline
{% else %}
mdi:sync-alert
{%- endif %}

View File

@ -34,3 +34,92 @@
seconds: 0
milliseconds: 0
- platform: moon
- platform: pollen
zip_code: 30017
monitored_conditions:
- allergy_average_forecasted
- allergy_average_historical
- allergy_index_today
- allergy_index_tomorrow
- allergy_index_yesterday
- disease_average_forecasted
## Accurite 158 - Back Porch
- platform: mqtt
name: "Accurite Back Porch Temperature"
state_topic: "house/accurite-158/temperature"
- platform: mqtt
name: "Accurite Back Porch Humidity"
state_topic: "house/accurite-158/humidity"
# - platform: mqtt
# name: "Accurite Back Porch Status"
# state_topic: "house/accurite-158/status"
# - platform: mqtt
# name: "Accurite Back Porch Battery"
# state_topic: "house/accurite-158/battery"
- platform: mqtt
name: "Accurite Back Porch Model"
state_topic: "house/accurite-158/model"
- platform: mqtt
name: "Accurite Back Porch lupdate"
state_topic: "house/accurite-158/lastupdate"
- platform: mqtt
name: "Accurite Garage Temperature"
state_topic: "house/accurite-10968/temperature"
- platform: mqtt
name: "Accurite Garage Humidity"
state_topic: "house/accurite-10968/humidity"
- platform: mqtt
name: "Accurite Garage Model"
state_topic: "house/accurite-10968/model"
- platform: mqtt
name: "Accurite Garage lupdate"
state_topic: "house/accurite-10968/lastupdate"
- platform: template
sensors:
tornado_warning:
friendly_name: 'Tornado Warning'
value_template: >-
{%- if is_state("sensor.pws_alerts.attributes.Description", "Tornado Warning") %}
active
{% elif is_state("sensor.pws_alerts.attributes.Description_TOR", "Tornado Warning") %}
active
{% else %}
inactive
{%- endif %}
icon_template: mdi:message-alert
tornado_watch:
friendly_name: 'Tornado Watch'
value_template: >-
{%- if is_state("sensor.pws_alerts.attributes.Description", "Tornado Watch") %}
active
{% elif is_state("sensor.pws_alerts.attributes.Description_TOW", "Tornado Watch") %}
active
{% else %}
inactive
{%- endif %}
icon_template: mdi:message-alert
tstorm_warning:
friendly_name: 'T-Storm Warning'
value_template: >-
{%- if is_state("sensor.pws_alerts.attributes.Description", "Severe Thunderstorm Warning") %}
active
{% elif is_state("sensor.pws_alerts.attributes.Description_WRN", "Severe Thunderstorm Warning") %}
active
{% else %}
inactive
{%- endif %}
icon_template: mdi:message-alert
storm_statement:
friendly_name: 'Storm Statement'
value_template: >-
{%- if is_state("sensor.pws_alerts.attributes.Description", "Severe Weather Statement") %}
active
{% elif is_state("sensor.pws_alerts.attributes.Description_SVR", "Severe Weather Statement") %}
active
{% else %}
inactive
{%- endif %}
icon_template: mdi:message-alert

7
switches/laundry.yaml Normal file
View File

@ -0,0 +1,7 @@
- platform: mqtt
name: "Washer"
state_topic: "smartthings/Washer/switch"
command_topic: "smartthings/Washer/switch"
payload_on: "on"
payload_off: "off"
retain: true

View File

@ -5,10 +5,3 @@
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Rail Lights"
state_topic: "smartthings/Stairs Rail/switch"
command_topic: "smartthings/Stairs Rail/switch"
payload_on: "on"
payload_off: "off"
retain: true

View File

@ -0,0 +1,54 @@
- platform: mqtt
name: "Text Notify Kat"
command_topic: "kat/notify/text"
state_topic: "kat/notify/text"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Audibly Notify Kat"
command_topic: "kat/notify/audio"
state_topic: "kat/notify/audio"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Text Notify Jeff"
command_topic: "jeff/notify/text"
state_topic: "jeff/notify/text"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Audibly Notify Jeff"
command_topic: "jeff/notify/audio"
state_topic: "jeff/notify/audio"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Text Notify House"
command_topic: "house/notify/text"
state_topic: "house/notify/text"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Audibly Notify House"
command_topic: "house/notify/audio"
state_topic: "house/notify/audio"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true

View File

@ -6,23 +6,16 @@
payload_off: "off"
retain: true
- platform: mqtt
name: "Side Door Light"
state_topic: "smartthings/Side Door Light/switch"
command_topic: "smartthings/Side Door Light/switch"
name: "Side Door"
state_topic: "smartthings/Side Door/switch"
command_topic: "smartthings/Side Door/switch"
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Front Porch Left"
state_topic: "smartthings/Porch Left/switch"
command_topic: "smartthings/Porch Left/switch"
name: "Front Porch"
state_topic: "smartthings/Front Porch/switch"
command_topic: "smartthings/Front Porch/switch"
payload_on: "on"
payload_off: "off"
retain: true
- platform: mqtt
name: "Front Porch Right"
state_topic: "smartthings/Porch Right/switch"
command_topic: "smartthings/Porch Right/switch"
payload_on: "on"
payload_off: "off"
retain: true

8
switches/sonoff.yaml Normal file
View File

@ -0,0 +1,8 @@
- platform: mqtt
name: "Master Fan"
command_topic: "cmnd/sonoff/power"
state_topic: "stat/sonoff/POWER"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: true