2018-02-18 00:58:45 +00:00
#-------------------------------------------
# # @CCOSTAN
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
## Garadget_Stuff - [Garadget](http://amzn.to/2jQLpVQ) - Garage Door opener/sensor
2019-03-05 21:26:54 +00:00
# Video and Write Up - https://www.vcloudinfo.com/2019/03/how-to-add-garadget-to-home-assistant.html
2020-05-03 22:12:24 +00:00
# Switch to Access_Tokens - https://www.vcloudinfo.com/2020/05/fixing-garadget-in-home-assistant.html
2018-02-18 00:58:45 +00:00
#-------------------------------------------
cover :
2019-02-28 21:56:33 +00:00
- platform : garadget
covers :
large_garage :
device : !secret large_garage_id
2020-04-10 01:29:27 +00:00
#username: !secret garadget_username
#password: !secret garadget_password
access_token : !secret garadget_access_token
2019-03-01 17:39:38 +00:00
name : large_garage
2019-02-28 21:56:33 +00:00
small_garage :
device : !secret small_garage_id
2020-04-10 01:29:27 +00:00
#username: !secret garadget_username
#password: !secret garadget_password
access_token : !secret garadget_access_token
2019-03-01 17:39:38 +00:00
name : small_garage
2019-02-28 21:56:33 +00:00
2018-02-18 00:58:45 +00:00
sensor :
- platform : template
sensors :
small_garage_status :
friendly_name : 'State of the door'
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
value_template : '{{ states.cover.small_garage.state }}'
small_garage_time_in_state :
friendly_name : 'Time Since Change'
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
value_template : '{{ states.cover.small_garage.attributes["time_in_state"] }}'
small_garage_wifi_signal_strength :
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
friendly_name : 'WiFi strength'
value_template : '{{ states.cover.small_garage.attributes["wifi_signal_strength"] }}'
unit_of_measurement : 'dB'
small_garage_reflection_rate :
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
friendly_name : 'Reflection Rate'
value_template : '{{ states.cover.small_garage.attributes["sensor_reflection_rate"] }}'
- platform : mqtt
name : 'Small Garage Brightness'
state_topic : 'garadget/Garadget Small/status'
unit_of_measurement : '%'
value_template : '{{ value_json.bright }}'
2020-06-08 15:52:47 +00:00
- platform : mqtt
name : 'Large Garage Brightness'
state_topic : 'garadget/Garadget Large/status'
unit_of_measurement : '%'
value_template : '{{ value_json.bright }}'
2018-02-18 00:58:45 +00:00
- platform : template
sensors :
large_garage_status :
friendly_name : 'State of the door'
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
value_template : '{{ states.cover.large_garage.state }}'
large_garage_time_in_state :
friendly_name : 'Time Since Change'
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
value_template : '{{ states.cover.large_garage.attributes["time_in_state"] }}'
large_garage_wifi_signal_strength :
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
friendly_name : 'WiFi strength'
value_template : '{{ states.cover.large_garage.attributes["wifi_signal_strength"] }}'
unit_of_measurement : 'dB'
large_garage_reflection_rate :
2019-03-31 21:13:37 +00:00
entity_id : [ ]
2018-02-18 00:58:45 +00:00
friendly_name : 'Reflection Rate'
value_template : '{{ states.cover.large_garage.attributes["sensor_reflection_rate"] }}'
group :
2020-02-25 00:52:57 +00:00
garage_doors :
name : Garage Doors
entities :
- cover.large_garage
- cover.small_garage
2018-02-18 00:58:45 +00:00
2020-06-08 15:27:11 +00:00
######################################################################
## Garage Status Announcements - Only during normal hours.
######################################################################
2018-02-18 00:58:45 +00:00
automation :
- alias : 'Update Garage Brightness'
trigger :
2019-02-23 23:03:43 +00:00
- platform : time_pattern
2018-02-26 06:24:28 +00:00
minutes : '/5'
2018-02-18 00:58:45 +00:00
action :
- service : mqtt.publish
data :
topic : "garadget/Garadget Small/command"
payload : "get-status"
- service : mqtt.publish
data :
topic : "garadget/Garadget Large/command"
payload : "get-status"
2020-06-08 15:27:11 +00:00
- alias : 'Garage Door State Change'
trigger :
- platform : state
entity_id :
- cover.large_garage
- cover.small_garage
from : 'open'
to : 'closed'
for : '00:02:00'
- platform : state
entity_id :
- cover.large_garage
- cover.small_garage
from : 'closed'
to : 'open'
for : '00:02:30'
action :
# - service_template: >
# {% set hour=states("sensor.time").split(':')[0] | int %}
# {% if hour >= 7 and hour <= 9 and states.input_boolean.school_mode.state == 'on'%}
# input_boolean.turn_off
# {% else %}
# input_boolean.turn_on
# {% endif %}
# entity_id: input_boolean.alert_mode
- service : script.speech_engine
data_template :
DoorClosed : "The {{ trigger.entity_id.split('.')[1]|replace('_', ' ') }} is now {{ (trigger.to_state.state)|replace('_', ' ') }}."
call_garage_check : 1
###################################
## Garadget Wind Door Checks - [Garadget](https://amzn.to/2jQLpVQ)
###################################
- alias : 'Wind Speed Garage Door Check'
trigger :
- platform : numeric_state
entity_id : sensor.dark_sky_wind_speed
above : 20
condition :
- condition : or
conditions :
- condition : template
value_template : "{{ states('cover.large_garage') == 'opened' }}"
- condition : template
value_template : "{{ states('cover.small_garage') == 'opened'}}"
action :
- service : input_boolean.turn_on
entity_id : input_boolean.alert_mode
- service : script.notify_engine
data_template :
title : 'Check/Close Garage Doors - High Speed Wind Alert:'
value1 : "Small: {{ states('cover.small_garage')}}"
value2 : "Large: {{ states('cover.large_garage')}}"
apns_id : 'information'
who : 'parents'
- service : script.speech_engine
data_template :
value1 : >
"The winds are picking up outside. The wind speed is {{ states('sensor.dark_sky_wind_speed')|round}} miles per hour. For safety, please close the garage doors.
{% if is_state('cover.large_garage', 'open') -%}
The Large Garage Door is open
{% endif -%}
{% if is_state('cover.small_garage', 'open') -%}
{% if is_state('cover.large_garage', 'open') -%}and
{%- endif %} The small Garage Door is open.
{% endif %}"
- service : script.tweet_engine_image
data_template :
tweet : >
{{ [
"Wind speed is {{ states('sensor.dark_sky_wind_speed')|round}} miles per hour. For safety, I'm going to close the @garadget doors." ,
"Getting pretty windy! {{ states('sensor.dark_sky_wind_speed')|round}}MPH. Time to ask @Garadget to close the garage doors."
] | random + "(http://amzn.to/2jQLpVQ)"}}
image : >-
{{ [
"/config/www/custom_ui/floorplan/images/branding/windy.png"
] | random }}