🏠 Home Assistant configuration & Documentation for my Smart House. Write-ups, videos, part lists, and links throughout. Be sure to it. Updated FREQUENTLY!
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
CCOSTAN a32be72dca
Merge the lab into the readme for easy searching.
9 years ago
automation Both doors need to be closed for this to be accurate. 9 years ago
customize Hide my garadget Id. Not that it's super important but... 9 years ago
device_tracker Fix lights so Alexa doesn't get confused. 10 years ago
group Hide my garadget Id. Not that it's super important but... 9 years ago
input_boolean Trying some new stuff 9 years ago
scene Added new Nest Stuff - Removed Default View - Updated Sunrise lights. 9 years ago
script Cleaning up the UI and stuff. 9 years ago
sensor Check for external IP changes! 9 years ago
shell_scripts Updated to 0.33 9 years ago
switch Outlet work. Need them more reliable. 9 years ago
.HA_VERSION Added new Nest Stuff - Removed Default View - Updated Sunrise lights. 9 years ago
.gitignore Trying to get SSL working but hidden. 10 years ago
.uuid Add a Router Panel - MOdify Views 10 years ago
README.md Merge the lab into the readme for easy searching. 9 years ago
configuration.yaml Try this Emulated Hub AGAIN.. 9 years ago
nest.conf Added new Nest Stuff - Removed Default View - Updated Sunrise lights. 9 years ago

README.md

Home-Assistant Config by @ccostan

Home Assistant configuration files (YAMLs)

This is my Home Assistant Configuration created with the All In One installer. I update it pretty regularly. Home Assistant runs on my Raspberry Pi 3 with Aeon Labs Z Wave Stick (GEN 5). I've also added a 433Mhz Transmitter and receiver

Software on the Pi : Home Assistant , Dasher, SSL via SSLS - 5 Bucks A Year!

Devices I have :

Automations:

  • Guest mode to disable certain interior automations. Trigger via Alexa & IFTTT.
  • IFTTT Notifications for Offline Devices, BadLogins, HA Startups, new HA versions and External IP changes for DSN.
  • Monitor the reflection rates of Garadget and notify when they being to drop too low when closed (indicating a shift in the controller)
  • Notifications when the garage door is left open at night or when we leave the house.
  • (IFTTT) Logging entries in Logbooks for Rachio, Doorbell
  • Auto Heal ZWave at 2:30am
  • Using Etekcity Outlets to control accent lighting above kitchen cabinets and room cutouts.
  • Turn on Hallway light for no more than 20 minutes when Pantry door is opened.
  • Turn on TV Time Lights (dim and color) at Sunset (if home and TV is on)
  • Turn on Upstairs light if Nest detects people and it's nighttime.
  • Turn off lights when Nest detects we are away. (Upstairs and Downstairs)
  • Turn on some lights abd switches when we get home
  • Turn on some outdoor Lights at Sunset, Turn off 4 hours before sunrise. Turn off interior lights when we go to sleep.
  • Turn on lights during school days for a morning routine for the kids and wife. Has No School overide boolean in GUI.
  • Detects when lights are turned on and adjusts them to correct brightness based on time of day.
  • Leverage Alexa, IFTTT and Elekcity outlet to control Printer On/Off via Voice. Turns off automatically after 20 minutes.
  • (IFTTT) Blink ALL lights at 9:30 to remind me to take medicine. (also Alexa Alert)
  • (IFTTT) Blink Office lights 15 minutes before ANY meeting on my calendar (using IFTTT)
  • (IFTTT) Stop watering grass via Rachio if winds are greater than 20 MPH.
  • (IFTTT) Blink ALL lights if Winds get to 70MPH - Hurricance warning.
  • Sets up the front lights in the house with preset colors depending on the month.
  • On motion from Doorbell (IFTTT) Turn front lights to Bright White lights for 10 minutes and then back to original colors.

Screenshot of Home View Screenshot of Garage Door View Screenshot of Lights Screenshot of Info

#Todo List

https://community.home-assistant.io/t/voice-controlled-cheap-non-smart-led-strip-with-ok-google-command/5756

https://community.home-assistant.io/t/snmp-bandwidth-monitor/7122

https://i.imgur.com/xy10yI1.png

#Lab notes:

  • alias: 'Get Random Time' trigger: platform: time after: '21:00:00' action:
    • service: input_slider.select_value data_template: entity_id: input_slider.hour value: '{{ (range(22, 23) | random) }}'
    • service: input_slider.select_value data_template: entity_id: input_slider.random_minute value: '{{ (range(30, 45) | random) }}'

Then simply use that in your light turn off automation:

  • alias: 'Turn lights off' trigger: platform: template value_template: '{{ now.hour == (states.input_slider.random_hour.state | int) and now.minute == (states.input_slider.random_minute.state | int) }}' action:

    • service: light.turn_off data: entity_id: light.hue_color_lamp_1
  • automation: alias: Random GLeft initial_state: False hide_entity: False trigger: platform: time seconds: '/5' action: service: homeassistant.turn_on entity_id:

    • light.gright data: effect: random transition: 1 brightness: 255
  • platform: template sensors: front_door_clean: value_template: '{% if is_state("binary_sensor.front_door", "on") %}Open{% else %}Closed{% endif %}' friendly_name: 'Front Door' entity_id: binary_sensor.front_door

Template Binary Sensors

platform: template sensors: flood_sensor: value_template: >- {% if states.sensor.everspring_st812_flood_detector_flood_2_5.state == '255' %} 'on' {% elif states.sensor.everspring_st812_flood_detector_flood_2_5.state == '0' %} 'off' {% else %} n/a {% endif %}

Using Slider_Booleans to store data and restore it after.

https://community.home-assistant.io/t/brighten-front-porch-lights-then-return-to-recorded-dim-level/6641

input_slider: porch_brightness: name: Front Porch Brightness initial: 25 min: 0 max: 255 step: 1

script: record_front_porch: alias: Record front porch status to slider sequence: - service: input_slider.select_value data_template: entity_id: input_slider.porch_brightness value: '{% if states.light.front_porch_light_level_32_0.state == "off" %}0{% else %}{{states.light.front_porch_light_level_32_0.attributes.brightness}}{% endif %}'

return_front_porch: alias: Return front porch to recorded value sequence: - service: light.turn_on entity_id: light.front_porch_light_level_32_0 data_template: brightness: '{{states.input_slider.porch_brightness.state | int}}' - service: input_boolean.turn_off entity_id: input_boolean.front_porch_motion_light_active

return_front_porch_delayed: alias: Wait 5 min and then return front porch to recorded value sequence: - delay: minutes: 5 - service: script.return_front_porch

automation: - alias: Motion ON front porch trigger: # if motion is ON - this is triggered via IFTTT and Arlo - platform: state entity_id: input_boolean.motion_front_porch to: 'on' from: 'off' action: # some notifications - service: notify.scott_notifier data: message: "Motion front porch" title: "Front Porch" data: priority: 0 - service: notify.kodi data: message: "Motion front porch" title: "Front Porch" # only at night - condition: state entity_id: sun.sun state: 'below_horizon' #remember the state of front porch - service: script.record_front_porch # turn the light on - service: light.turn_on entity_id: light.front_porch_light_level_32_0 data: brightness: 255 # script with a delay that'll reset light in 5 min - service: script.return_front_porch_delayed

Easy Garbage Automation

  • alias: brown garbage trigger: platform: time hours: 20 minutes: 00 seconds: 0 condition: condition: time

At least one of the following is required.

  weekday:
    - mon
    - thu
action:
  service: notify.thorsten
  data:
    message: 'Put the brown garbage out!'
  • alias: blue garbage trigger: platform: time hours: 20 minutes: 00 seconds: 0 condition: condition: time

At least one of the following is required.

  weekday:
    - tue
action:
  service: notify.thorsten
  data:
    message: 'Put the blue garbage out!'

{%- if now().month in [01, 11, 12] -%} Yes {%- else -%} NO {%- endif %}

binary_sensor: platform: command_line name: Daughter Laptop command: ping -W 1 -c 1 192.168.0.101 > /dev/null 2>&1 && echo success || echo fail sensor_class: connectivity payload_on: "success" payload_off: "fail"

Powered by TurnKey Linux.