nursery to girls room... finally

This commit is contained in:
CeeWeasel
2025-12-03 23:21:30 -05:00
parent 921c3df342
commit 78cd67a560
129 changed files with 2715 additions and 2677 deletions
@@ -4,7 +4,7 @@ sensor:
name: Lowest Window Battery
type: min
entity_ids:
- sensor.nursery_window_battery
- sensor.girls_room_window_battery
- sensor.computer_area_window_battery
- sensor.entryway_window_battery
- sensor.front_room_window_battery
@@ -36,7 +36,7 @@ sensor:
- sensor.master_bedroom_closet_door_battery
- sensor.master_bedroom_door_battery
- sensor.master_suite_door_battery
- sensor.nursery_closet_door_battery
- sensor.girls_room_closet_door_battery
- sensor.patio_door_battery
- sensor.storage_room_door_battery
- sensor.pantry_door_battery
@@ -7,7 +7,7 @@ sensor:
- sensor.front_room_motion_sensor_battery_level
- sensor.kitchen_motion_sensor_battery_level
- sensor.master_bedroom_multisensor_battery_level
- sensor.nursery_multisensor_battery_level
- sensor.girls_room_multisensor_battery_level
- sensor.computer_area_multisensor_battery_level
- sensor.great_room_multisensor_battery_level
- sensor.garage_multisensor_battery_level
+4 -4
View File
@@ -30,7 +30,7 @@ script:
# entity_id: >
# {% if is_state('input_select.cast_to_screen_dropdown', 'Front Room Display') %}
# media_player.front_room_hub
# {% elif is_state('input_select.cast_to_screen_dropdown', 'Nursery Hub') %}
# {% elif is_state('input_select.cast_to_screen_dropdown', 'Girls Room Hub') %}
# media_player.girls_room_hub
# {% elif is_state('input_select.cast_to_screen_dropdown', 'Computer Area Hub') %}
# media_player.computer_area_hub
@@ -47,7 +47,7 @@ script:
# media-source://camera/camera.frigate_cam04
# {% elif is_state('input_select.camera_dropdown', 'Master Bedroom') %}
# media-source://camera/camera.frigate_cam06
# {% elif is_state('input_select.camera_dropdown', 'Nursery') %}
# {% elif is_state('input_select.camera_dropdown', 'Girls Room') %}
# media-source://camera/camera.frigate_cam08
# {% elif is_state('input_select.camera_dropdown', 'Back Yard') %}
# media-source://camera/camera.frigate_cam14
@@ -75,7 +75,7 @@ script:
# entity_id: >
# {% if is_state('input_select.cast_to_screen_dropdown', 'Front Room Display') %}
# media_player.front_room_hub
# {% elif is_state('input_select.cast_to_screen_dropdown', 'Nursery Hub') %}
# {% elif is_state('input_select.cast_to_screen_dropdown', 'Girls Room Hub') %}
# media_player.girls_room_hub
# {% elif is_state('input_select.cast_to_screen_dropdown', 'Computer Area Hub') %}
# media_player.computer_area_hub
@@ -91,7 +91,7 @@ script:
# rtsp://192.168.1.11:8554/cam04_sub_opus
# {% elif is_state('input_select.camera_dropdown', 'Master Bedroom') %}
# rtsp://192.168.1.11:8554/cam06_sub_opus
# {% elif is_state('input_select.camera_dropdown', 'Nursery') %}
# {% elif is_state('input_select.camera_dropdown', 'Girls Room') %}
# rtsp://192.168.1.11:8554/cam08_sub_opus
# {% elif is_state('input_select.camera_dropdown', 'Back Yard') %}
# rtsp://192.168.1.11:8554/cam14_sub_opus
+7 -7
View File
@@ -1,7 +1,7 @@
input_number:
# These numbers control what speed the ceiling fans should default to.
# If a room is occupied, and it is relatively warm, the fan should come on
# These numbers help ensure that when the fan turns on, it creates a noticible difference
# These numbers control what speed the ceiling fans should default to.
# If a room is occupied, and it is relatively warm, the fan should come on
# These numbers help ensure that when the fan turns on, it creates a noticible difference
master_bedroom_fan_min_temp:
name: Master Bedroom Fan Min Temp
min: 60
@@ -27,25 +27,25 @@ input_number:
step: 1
mode: slider
nursery_fan_min_temp:
girls_room_fan_min_temp:
name: Nursery Fan Min Temp
min: 60
max: 80
step: 1
mode: slider
nursery_fan_low_temp:
girls_room_fan_low_temp:
name: Nursery Fan Low Temp
min: 60
max: 80
step: 1
mode: slider
nursery_fan_medium_temp:
girls_room_fan_medium_temp:
name: Nursery Fan Medium Temp
min: 60
max: 80
step: 1
mode: slider
nursery_fan_high_temp:
girls_room_fan_high_temp:
name: Nursery Fan High Temp
min: 60
max: 80
+19
View File
@@ -0,0 +1,19 @@
template:
- cover:
- unique_id: templatecover.garage_door
device_class: GARAGE
open_cover:
- action: switch.turn_on
data:
entity_id: switch.shelly_garage_door
close_cover:
- action: switch.turn_on
data:
entity_id: switch.shelly_garage_door
stop_cover:
- action: switch.turn_on
data:
entity_id: switch.shelly_garage_door
default_entity_id: cover.garage_door
name: Garage Door
state: "{{is_state('binary_sensor.garage_door','on')}}"
+4 -4
View File
@@ -183,7 +183,7 @@ google_assistant:
- Front Room
room: Front Room
fan.master_bedroom:
fan.master_bedroom_fan_light_switch_fan:
name: Master Bedroom Fan
room: Master Bedroom
expose: true
@@ -191,7 +191,7 @@ google_assistant:
- Fan
- Ceiling Fan
fan.nursery:
fan.girls_room_fan_light_switch_fan:
name: Nursery Fan
room: Nursery
expose: true
@@ -224,14 +224,14 @@ google_assistant:
room: Furnace Room
expose: true
input_button.nursery_bedtime:
input_button.girls_room_bedtime:
name: Kids Bedtime
room: Nursery
expose: true
aliases:
- Nursery Bedtime
input_button.nursery_awake:
input_button.girls_room_awake:
name: Kids Awake
room: Nursery
expose: true
+6 -6
View File
@@ -4,7 +4,7 @@ sensor:
type: max
entity_ids:
- sensor.master_bedroom_multisensor_air_temperature
- sensor.nursery_multisensor_air_temperature
- sensor.girls_room_multisensor_air_temperature
- sensor.thermostat_temperature
- sensor.bar_temperature
- sensor.front_room_thermostat_temperature
@@ -15,7 +15,7 @@ sensor:
type: min
entity_ids:
- sensor.master_bedroom_multisensor_air_temperature
- sensor.nursery_multisensor_air_temperature
- sensor.girls_room_multisensor_air_temperature
- sensor.thermostat_temperature
- sensor.bar_temperature
- sensor.front_room_thermostat_temperature
@@ -26,7 +26,7 @@ sensor:
# type: mean
# entity_ids:
# - sensor.master_bedroom_multisensor_air_temperature
# - sensor.nursery_multisensor_air_temperature
# - sensor.girls_room_multisensor_air_temperature
# - sensor.thermostat_temperature
# - sensor.bar_temperature
# - sensor.front_room_thermostat_temperature
@@ -37,7 +37,7 @@ sensor:
type: max
entity_ids:
- sensor.master_bedroom_multisensor_humidity
- sensor.nursery_multisensor_humidity
- sensor.girls_room_multisensor_humidity
- sensor.front_room_thermostat_humidity
- sensor.kitchen_multisensor_humidity
- sensor.thermostat_humidity
@@ -47,7 +47,7 @@ sensor:
type: min
entity_ids:
- sensor.master_bedroom_multisensor_humidity
- sensor.nursery_multisensor_humidity
- sensor.girls_room_multisensor_humidity
- sensor.front_room_thermostat_humidity
- sensor.kitchen_multisensor_humidity
- sensor.thermostat_humidity
@@ -57,7 +57,7 @@ sensor:
type: mean
entity_ids:
- sensor.master_bedroom_multisensor_humidity
- sensor.nursery_multisensor_humidity
- sensor.girls_room_multisensor_humidity
- sensor.front_room_thermostat_humidity
- sensor.kitchen_multisensor_humidity
- sensor.thermostat_humidity
+9 -9
View File
@@ -328,27 +328,27 @@ template:
- platform: state
entity_id:
- input_number.nursery_light_level_trigger
- sensor.nursery_multisensor_illuminance
- input_number.girls_room_light_level_trigger
- sensor.girls_room_multisensor_illuminance
binary_sensor:
- name: "Nursery Naturally Lit"
unique_id: templatebinarysensor_nurserynaturallylit
- name: "Girls Room Naturally Lit"
unique_id: templatebinarysensor_girls_roomnaturallylit
delay_on:
seconds: 3
delay_off:
seconds: 3
state: >
{{ states('sensor.nursery_multisensor_illuminance') | float(default=0) > states('input_number.nursery_light_level_trigger') | float(default=0) }}
{{ states('sensor.girls_room_multisensor_illuminance') | float(default=0) > states('input_number.girls_room_light_level_trigger') | float(default=0) }}
icon: >
{% if states('sensor.nursery_multisensor_illuminance') | float(default=0) > states('input_number.nursery_light_level_trigger') | float(default=0) %}
{% if states('sensor.girls_room_multisensor_illuminance') | float(default=0) > states('input_number.girls_room_light_level_trigger') | float(default=0) %}
mdi:weather-sunny
{% else %}
mdi:weather-sunny-off
{% endif %}
attributes:
illuminance: "{{ states('sensor.nursery_multisensor_illuminance') | float(default=0) }}"
trigger: "{{ states('input_number.nursery_light_level_trigger') | float(default=0) }}"
illuminance: "{{ states('sensor.girls_room_multisensor_illuminance') | float(default=0) }}"
trigger: "{{ states('input_number.girls_room_light_level_trigger') | float(default=0) }}"
input_number:
boys_room_light_level_trigger:
@@ -428,7 +428,7 @@ input_number:
max: 50000
mode: box
nursery_light_level_trigger:
girls_room_light_level_trigger:
name: Nursery Light Level Trigger
icon: mdi:brightness-auto
min: 0
+38
View File
@@ -0,0 +1,38 @@
template:
- sensor:
- unique_id: templatesensor.sun_elevation
unit_of_measurement: degrees
default_entity_id: sensor.sun_elevation
icon: >
{% set elevation = state_attr('sun.sun', 'elevation')|default(0) %}
{% if elevation > 0 %}
mdi:weather-sunny
{% else %}
mdi:weather-night
{% endif %}
state: '{{ state_attr("sun.sun", "elevation") }}'
name: sun_elevation
- unique_id: templatesensor.period_of_day
default_entity_id: sensor.period_of_day
name: Period of the Day
state: >-
{% if (as_timestamp(states.sun.sun.attributes.next_dusk)) - (as_timestamp(states.sun.sun.attributes.next_setting)) < 0 %}
Dusk
{% elif (as_timestamp(states.sun.sun.attributes.next_rising)) - (as_timestamp(states.sun.sun.attributes.next_dawn)) < 0 %}
Dawn
{% elif (states.sun.sun.attributes.elevation) < -4 %}
Night
{% else %}
Day
{% endif %}
icon: >
{% if is_state("sensor.period_of_day", "Dawn") %}
mdi:weather-sunset-up
{% elif is_state("sensor.period_of_day", "Dusk") %}
mdi:weather-sunset-down
{% elif is_state("sensor.period_of_day", "Night") %}
mdi:moon-waxing-crescent
{% elif is_state("sensor.period_of_day", "Day") %}
mdi:weather-sunny
{% endif %}
File diff suppressed because it is too large Load Diff
+27
View File
@@ -0,0 +1,27 @@
template:
- fan:
- unique_id: template_fan.utility_room_vent
turn_on:
- action: switch.turn_on
entity_id:
- switch.utility_room_vent_switch
turn_off:
- action: switch.turn_off
entity_id:
- switch.utility_room_vent_switch
default_entity_id: fan.utility_room_vent
name: Utility Room Vent
state: "{{ states('switch.utility_room_vent_switch') }}"
- unique_id: templatefan.bathroom_vent
turn_on:
- action: switch.turn_on
entity_id:
- switch.bathroom_vent_switch
turn_off:
- action: switch.turn_off
entity_id:
- switch.bathroom_vent_switch
default_entity_id: fan.bathroom_vent
name: Bathroom Vent
state: "{{ states('switch.bathroom_vent_switch') }}"
+209 -209
View File
@@ -1,246 +1,246 @@
template:
- sensor:
# - unique_id: templatesensor.hvac_mode
# default_entity_id: sensor.hvac_mode
# name: HVAC Mode
# state: '{{states("climate.thermostat")}}'
- sensor:
# - unique_id: templatesensor.hvac_mode
# default_entity_id: sensor.hvac_mode
# name: HVAC Mode
# state: '{{states("climate.thermostat")}}'
- unique_id: templatesensor.hvac_equipment_running
default_entity_id: sensor.hvac_equipment_running
name: HVAC Equipment Running
state: '{{state_attr("climate.thermostat", "equipment_running")|default("none", true)}}'
- unique_id: templatesensor.hvac_equipment_running
default_entity_id: sensor.hvac_equipment_running
name: HVAC Equipment Running
state: '{{state_attr("climate.thermostat", "equipment_running")|default("none", true)}}'
- unique_id: templatesensor.hvac_action
default_entity_id: sensor.hvac_action
state: '{{state_attr("climate.thermostat", "hvac_action")}}'
name: HVAC Action
- unique_id: templatesensor.hvac_action
default_entity_id: sensor.hvac_action
state: '{{state_attr("climate.thermostat", "hvac_action")}}'
name: HVAC Action
- unique_id: templatesensor.clint_status
default_entity_id: sensor.clint_status
state: '{{ states.input_select.clint_status_dropdown.state }}'
name: 'Clint'
- unique_id: templatesensor.clint_status
default_entity_id: sensor.clint_status
state: "{{ states.input_select.clint_status_dropdown.state }}"
name: "Clint"
- unique_id: templatesensor.emmett_status
default_entity_id: sensor.emmett_status
state: '{{ states.input_select.emmett_status_dropdown.state }}'
name: 'Emmett'
- unique_id: templatesensor.emmett_status
default_entity_id: sensor.emmett_status
state: "{{ states.input_select.emmett_status_dropdown.state }}"
name: "Emmett"
- unique_id: templatesensor.bridget_status
default_entity_id: sensor.bridget_status
state: '{{ states.input_select.bridget_status_dropdown.state }}'
name: 'Bridget'
- unique_id: templatesensor.bridget_status
default_entity_id: sensor.bridget_status
state: "{{ states.input_select.bridget_status_dropdown.state }}"
name: "Bridget"
- unique_id: templatesensor.kristy_status
default_entity_id: sensor.kristy_status
state: '{{ states.input_select.kristy_status_dropdown.state }}'
name: 'Kristy'
- unique_id: templatesensor.kristy_status
default_entity_id: sensor.kristy_status
state: "{{ states.input_select.kristy_status_dropdown.state }}"
name: "Kristy"
- unique_id: templatesensor.marshall_status
default_entity_id: sensor.marshall_status
state: '{{ states.input_select.marshall_status_dropdown.state }}'
name: 'Marshall'
- unique_id: templatesensor.marshall_status
default_entity_id: sensor.marshall_status
state: "{{ states.input_select.marshall_status_dropdown.state }}"
name: "Marshall"
- unique_id: templatesensor.tess_status
default_entity_id: sensor.tess_status
state: '{{ states.input_select.tess_status_dropdown.state }}'
name: 'Tess'
- unique_id: templatesensor.tess_status
default_entity_id: sensor.tess_status
state: "{{ states.input_select.tess_status_dropdown.state }}"
name: "Tess"
- unique_id: templatesensor.ebin_status
default_entity_id: sensor.ebin_status
state: '{{ states.input_select.ebin_status_dropdown.state }}'
name: 'Ebin'
- unique_id: templatesensor.ebin_status
default_entity_id: sensor.ebin_status
state: "{{ states.input_select.ebin_status_dropdown.state }}"
name: "Ebin"
- unique_id: templatesensor.people_count
default_entity_id: sensor.people_count
name: 'People Count'
state: >
{{[ states.input_boolean.clint_home,
states.input_boolean.emmett_home,
states.input_boolean.bridget_home,
states.input_boolean.kristy_home,
states.input_boolean.marshall_home,
states.input_boolean.tess_home,
states.input_boolean.ebin_home,
states.input_boolean.guest_home ]
| selectattr('state', 'eq', 'on') | list | count}}
- unique_id: templatesensor.people_count
default_entity_id: sensor.people_count
name: "People Count"
state: >
{{[ states.input_boolean.clint_home,
states.input_boolean.emmett_home,
states.input_boolean.bridget_home,
states.input_boolean.kristy_home,
states.input_boolean.marshall_home,
states.input_boolean.tess_home,
states.input_boolean.ebin_home,
states.input_boolean.guest_home ]
| selectattr('state', 'eq', 'on') | list | count}}
- unique_id: templatesensor.count_automations
default_entity_id: sensor.count_automations
state: "{{ states.automation | list | length }}"
- unique_id: templatesensor.count_automations
default_entity_id: sensor.count_automations
state: "{{ states.automation | list | length }}"
- unique_id: templatesensor.count_scripts
default_entity_id: sensor.count_scripts
state: "{{ states.script | list | length }}"
- unique_id: templatesensor.count_scripts
default_entity_id: sensor.count_scripts
state: "{{ states.script | list | length }}"
- unique_id: templatesensor.count_device_trackers
default_entity_id: sensor.count_device_trackers
state: "{{ states.device_tracker | list | length }}"
- unique_id: templatesensor.count_device_trackers
default_entity_id: sensor.count_device_trackers
state: "{{ states.device_tracker | list | length }}"
- unique_id: templatesensor.count_binary_sensors
default_entity_id: sensor.count_binary_sensors
state: "{{ states.binary_sensor | list | length }}"
- unique_id: templatesensor.count_binary_sensors
default_entity_id: sensor.count_binary_sensors
state: "{{ states.binary_sensor | list | length }}"
- unique_id: templatesensor.count_sensors
default_entity_id: sensor.count_sensors
state: "{{ states.sensor | list | length }}"
- unique_id: templatesensor.count_sensors
default_entity_id: sensor.count_sensors
state: "{{ states.sensor | list | length }}"
- unique_id: templatesensor.count_switches
default_entity_id: sensor.count_switches
state: "{{ states.switch | list | length }}"
- unique_id: templatesensor.count_switches
default_entity_id: sensor.count_switches
state: "{{ states.switch | list | length }}"
- unique_id: templatesensor.count_zones
default_entity_id: sensor.count_zones
state: "{{ states.zone | list | length }}"
- unique_id: templatesensor.count_zones
default_entity_id: sensor.count_zones
state: "{{ states.zone | list | length }}"
- unique_id: templatesensor.count_input_booleans
default_entity_id: sensor.count_input_booleans
state: "{{ states.input_boolean | list | length }}"
- unique_id: templatesensor.count_input_booleans
default_entity_id: sensor.count_input_booleans
state: "{{ states.input_boolean | list | length }}"
- unique_id: templatesensor.count_input_numbers
default_entity_id: sensor.count_input_numbers
state: "{{ states.input_number | list | length }}"
- unique_id: templatesensor.count_input_numbers
default_entity_id: sensor.count_input_numbers
state: "{{ states.input_number | list | length }}"
- unique_id: templatesensor.count_input_texts
default_entity_id: sensor.count_input_texts
state: "{{ states.input_text | list | length }}"
- unique_id: templatesensor.count_input_texts
default_entity_id: sensor.count_input_texts
state: "{{ states.input_text | list | length }}"
- unique_id: templatesensor.count_input_selects
default_entity_id: sensor.count_input_selects
state: "{{ states.input_select | list | length }}"
- unique_id: templatesensor.count_input_selects
default_entity_id: sensor.count_input_selects
state: "{{ states.input_select | list | length }}"
- unique_id: templatesensor.count_input_datetimes
default_entity_id: sensor.count_input_datetimes
state: "{{ states.input_datetime | list | length }}"
- unique_id: templatesensor.count_input_datetimes
default_entity_id: sensor.count_input_datetimes
state: "{{ states.input_datetime | list | length }}"
- unique_id: templatesensor.steam1_game
default_entity_id: sensor.steam1_game
state: >-
{% if state_attr('sensor.steam_76561197960668089', 'game') is not none%}
{{ state_attr('sensor.steam_76561197960668089', 'game') }}
{% else %}
{{ states('sensor.steam_76561197960668089') }}
{% endif %}
- unique_id: templatesensor.steam1_game
default_entity_id: sensor.steam1_game
state: >-
{% if state_attr('sensor.steam_76561197960668089', 'game') is not none%}
{{ state_attr('sensor.steam_76561197960668089', 'game') }}
{% else %}
{{ states('sensor.steam_76561197960668089') }}
{% endif %}
- unique_id: templatesensor.non_summer_per_kwh
default_entity_id: sensor.nonsummer_per_kwh
name: 'Non-Summer Rate'
state: 0.100496
icon: mdi:currency-usd
unit_of_measurement: '$/kWh'
- unique_id: templatesensor.non_summer_per_kwh
default_entity_id: sensor.nonsummer_per_kwh
name: "Non-Summer Rate"
state: 0.100496
icon: mdi:currency-usd
unit_of_measurement: "$/kWh"
- unique_id: templatesensor.summer_nonpeak_per_kwh
default_entity_id: sensor.summernonpeak_per_kwh
name: 'Summer Non-Peak Rate'
state: 0.100649
icon: mdi:currency-usd
unit_of_measurement: '$/kWh'
- unique_id: templatesensor.summer_nonpeak_per_kwh
default_entity_id: sensor.summernonpeak_per_kwh
name: "Summer Non-Peak Rate"
state: 0.100649
icon: mdi:currency-usd
unit_of_measurement: "$/kWh"
- unique_id: templatesensor.summerpeak_per_kwh
default_entity_id: sensor.summerpeak_per_kwh
name: 'Summer Peak Rate'
state: 0.149656
icon: mdi:currency-usd
unit_of_measurement: '$/kWh'
- unique_id: templatesensor.summerpeak_per_kwh
default_entity_id: sensor.summerpeak_per_kwh
name: "Summer Peak Rate"
state: 0.149656
icon: mdi:currency-usd
unit_of_measurement: "$/kWh"
- unique_id: templatesensor.energy_cost
default_entity_id: sensor.energy_cost
name: 'Energy Cost'
state: >-
{% if now().month > 9 or now().month < 6 -%}
0.100496
{%- else -%}
{%- if now().weekday() < 5 and now().hour >= 14 and now().hour <= 19 -%}
0.149656
{%- else -%}
0.100649
{%- endif -%}
{% endif %}
icon: mdi:currency-usd
unit_of_measurement: '$/kWh'
- unique_id: templatesensor.energy_cost
default_entity_id: sensor.energy_cost
name: "Energy Cost"
state: >-
{% if now().month > 9 or now().month < 6 -%}
0.100496
{%- else -%}
{%- if now().weekday() < 5 and now().hour >= 14 and now().hour <= 19 -%}
0.149656
{%- else -%}
0.100649
{%- endif -%}
{% endif %}
icon: mdi:currency-usd
unit_of_measurement: "$/kWh"
- unique_id: templatesensor.energy_tariff
default_entity_id: sensor.energy_tariff
name: 'Energy Tariff'
state: >-
{% if now().month > 9 or now().month < 6 -%}
Non-Summer
{%- else -%}
{%- if now().weekday() < 5 and now().hour >= 14 and now().hour <= 19 -%}
Summer Peak
{%- else -%}
Summer Non-Peak
{%- endif -%}
{% endif %}
- unique_id: templatesensor.energy_tariff
default_entity_id: sensor.energy_tariff
name: "Energy Tariff"
state: >-
{% if now().month > 9 or now().month < 6 -%}
Non-Summer
{%- else -%}
{%- if now().weekday() < 5 and now().hour >= 14 and now().hour <= 19 -%}
Summer Peak
{%- else -%}
Summer Non-Peak
{%- endif -%}
{% endif %}
- unique_id: templatesensor.general_waste
default_entity_id: sensor.general_waste
name: 'General Waste'
icon: mdi:trash-can
state: >-
{% if is_state('calendar.trash_schedule','on') %}
today
{% elif state_attr('calendar.trash_schedule','offset_reached') %}
tomorrow
{% else %}
future
{% endif %}
- unique_id: templatesensor.general_waste
default_entity_id: sensor.general_waste
name: "General Waste"
icon: mdi:trash-can
state: >-
{% if is_state('calendar.trash_schedule','on') %}
today
{% elif state_attr('calendar.trash_schedule','offset_reached') %}
tomorrow
{% else %}
future
{% endif %}
#my_room_status
- unique_id: temlatesensor.occupied_room_count
default_entity_id: sensor.occupied_room_count
name: Rooms Occupied
state: "{{ (expand('group.my_room_status') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_room_status', 'on'), 'mdi:floor-plan','mdi:floor-plan') }}"
#my_room_status
- unique_id: temlatesensor.occupied_room_count
default_entity_id: sensor.occupied_room_count
name: Rooms Occupied
state: "{{ (expand('group.my_room_status') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_room_status', 'on'), 'mdi:floor-plan','mdi:floor-plan') }}"
- unique_id: temlatesensor.speakers_on_count
default_entity_id: sensor.speakers_on_count
name: Speakers On
state: "{{ (expand('group.all_my_speakers') | selectattr('state', 'eq', 'playing')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.all_my_speakers', 'on'), 'mdi:speaker-multiple','mdi:speaker-off') }}"
- unique_id: temlatesensor.speakers_on_count
default_entity_id: sensor.speakers_on_count
name: Speakers On
state: "{{ (expand('group.all_my_speakers') | selectattr('state', 'eq', 'playing')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.all_my_speakers', 'on'), 'mdi:speaker-multiple','mdi:speaker-off') }}"
- unique_id: temlatesensor.lights_on_count
default_entity_id: sensor.lights_on_count
name: Lights On
state: "{{ (expand('group.my_lights') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_lights', 'on'), 'mdi:lightbulb-group','mdi:lightbulb-group-off') }}"
- unique_id: temlatesensor.lights_on_count
default_entity_id: sensor.lights_on_count
name: Lights On
state: "{{ (expand('group.my_lights') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_lights', 'on'), 'mdi:lightbulb-group','mdi:lightbulb-group-off') }}"
- unique_id: temlatesensor.open_windows_count
default_entity_id: sensor.open_windows_count
name: Open Windows
state: "{{ (expand('group.my_exterior_windows') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_exterior_windows', 'on'), 'mdi:window-open-variant','mdi:window-closed-variant') }}"
- unique_id: temlatesensor.open_windows_count
default_entity_id: sensor.open_windows_count
name: Open Windows
state: "{{ (expand('group.my_exterior_windows') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_exterior_windows', 'on'), 'mdi:window-open-variant','mdi:window-closed-variant') }}"
- unique_id: temlatesensor.open_external_doors_count
default_entity_id: sensor.open_external_doors_count
name: Open External Doors
state: "{{ (expand('group.my_exterior_doors') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_exterior_windows', 'on'), 'mdi:door-open','mdi:door') }}"
- unique_id: temlatesensor.open_external_doors_count
default_entity_id: sensor.open_external_doors_count
name: Open External Doors
state: "{{ (expand('group.my_exterior_doors') | selectattr('state', 'eq', 'on')) | list | count |int(default=0) }}"
icon: "{{ iif(is_state('group.my_exterior_windows', 'on'), 'mdi:door-open','mdi:door') }}"
- unique_id: temlatesensor.frigate_person_count
default_entity_id: sensor.frigate_person_count
name: Frigate Person Count
state: >-
{{
states('sensor.boys_room_person_count')|int(default=0) +
states('sensor.computer_area_person_count')|int(default=0) +
states('sensor.dining_room_person_count')|int(default=0) +
states('sensor.entryway_person_count')|int(default=0) +
states('sensor.front_porch_person_count')|int(default=0) +
states('sensor.front_room_person_count')|int(default=0) +
states('sensor.furnace_room_person_count')|int(default=0) +
states('sensor.great_room_person_count')|int(default=0) +
states('sensor.kitchen_person_count')|int(default=0) +
states('sensor.master_bedroom_person_count')|int(default=0) +
states('sensor.nursery_person_count')|int(default=0) +
states('sensor.utility_room_person_count')|int(default=0) +
states('sensor.walkway_person_count')|int(default=0) +
states('sensor.workshop_person_count')|int(default=0)
}}
icon: mdi:human-queue
- unique_id: temlatesensor.frigate_person_count
default_entity_id: sensor.frigate_person_count
name: Frigate Person Count
state: >-
{{
states('sensor.boys_room_person_count')|int(default=0) +
states('sensor.computer_area_person_count')|int(default=0) +
states('sensor.dining_room_person_count')|int(default=0) +
states('sensor.entryway_person_count')|int(default=0) +
states('sensor.front_porch_person_count')|int(default=0) +
states('sensor.front_room_person_count')|int(default=0) +
states('sensor.furnace_room_person_count')|int(default=0) +
states('sensor.great_room_person_count')|int(default=0) +
states('sensor.kitchen_person_count')|int(default=0) +
states('sensor.master_bedroom_person_count')|int(default=0) +
states('sensor.girls_room_person_count')|int(default=0) +
states('sensor.utility_room_person_count')|int(default=0) +
states('sensor.walkway_person_count')|int(default=0) +
states('sensor.workshop_person_count')|int(default=0)
}}
icon: mdi:human-queue
# monitored_daily_kwh:
# unique_id: templatesensor.monitored_daily_kwh
# name: 'Monitored Daily [kWh]'
# icon: mdi:flash
# unit_of_measurement: kWh
# state: "{{ states('sensor.basement_and_laundry_lights_and_plugs_kwh')|float(default=0) + }}"
# monitored_daily_kwh:
# unique_id: templatesensor.monitored_daily_kwh
# name: 'Monitored Daily [kWh]'
# icon: mdi:flash
# unit_of_measurement: kWh
# state: "{{ states('sensor.basement_and_laundry_lights_and_plugs_kwh')|float(default=0) + }}"
+217
View File
@@ -0,0 +1,217 @@
template:
- switch:
- unique_id: 9d2081d6-6ae2-4e51-81d3-cd8679905de8
# This shouldn't be used because it just re-circulates the air in the house.
# Since there aren't any returns in the basement, the upstairs air recirculates itself
# which accomplishes nothing
# I'd need to get some kind of fresh air intake and a damper
turn_on:
- action: ecobee.set_fan_min_on_time
data:
fan_min_on_time: 60
turn_off:
- action: ecobee.set_fan_min_on_time
data:
fan_min_on_time: 0
default_entity_id: switch.thermostat_fan_mode
name: Thermostat Fan Mode
state: >-
{% if state_attr('climate.thermostat', 'fan_min_on_time') | int(default=0) < 5 %}
{{'false'}}
{% else %}
{{ 'true' }}
{% endif %}
- unique_id: 81b29c14-23e0-4215-a3dd-21a52564d44e
default_entity_id: switch.master_bedroom_light_cycle
name: "Master Bedroom Light Cycle"
state: "{{ is_state('input_boolean.master_bedroom_light_cycle', 'on') }}"
turn_on:
action: input_boolean.turn_on
data:
entity_id: input_boolean.master_bedroom_light_cycle
turn_off:
action: input_boolean.turn_off
data:
entity_id: input_boolean.master_bedroom_light_cycle
icon: >-
{% if is_state('input_boolean.master_bedroom_light_cycle', 'on') %}
mdi:party-popper
{% else %}
mdi:party-popper
{% endif %}
- unique_id: 000baf7e-3065-432e-a3eb-e4f1d40f8028
default_entity_id: switch.girls_room_light_cycle
name: "Girls Room Light Cycle"
state: "{{ is_state('input_boolean.girls_room_light_cycle', 'on') }}"
turn_on:
action: input_boolean.turn_on
data:
entity_id: input_boolean.girls_room_light_cycle
turn_off:
action: input_boolean.turn_off
data:
entity_id: input_boolean.girls_room_light_cycle
icon: >-
{% if is_state('input_boolean.girls_room_light_cycle', 'on') %}
mdi:party-popper
{% else %}
mdi:party-popper
{% endif %}
- unique_id: bbdb494c-2ec9-4840-a1e9-c20268136ebb
default_entity_id: switch.boys_room_light_cycle
name: "Boys Room Light Cycle"
state: "{{ is_state('input_boolean.boys_room_light_cycle', 'on') }}"
turn_on:
action: input_boolean.turn_on
data:
entity_id: input_boolean.boys_room_light_cycle
turn_off:
action: input_boolean.turn_off
data:
entity_id: input_boolean.boys_room_light_cycle
icon: >-
{% if is_state('input_boolean.boys_room_light_cycle', 'on') %}
mdi:party-popper
{% else %}
mdi:party-popper
{% endif %}
- unique_id: 267f9562-7fcd-42cd-aa8d-b801b1a18ffc
default_entity_id: switch.front_room_light_cycle
name: "Front Room Light Cycle"
state: "{{ is_state('input_boolean.front_room_light_cycle', 'on') }}"
turn_on:
action: input_boolean.turn_on
data:
entity_id: input_boolean.front_room_light_cycle
turn_off:
action: input_boolean.turn_off
data:
entity_id: input_boolean.front_room_light_cycle
icon: >-
{% if is_state('input_boolean.front_room_light_cycle', 'on') %}
mdi:party-popper
{% else %}
mdi:party-popper
{% endif %}
- unique_id: fff0f6b6-dfcf-4bda-b21e-1cf1ef385cd1
default_entity_id: switch.great_room_light_cycle
name: "Great Room Light Cycle"
state: "{{ is_state('input_boolean.great_room_light_cycle', 'on') }}"
turn_on:
action: input_boolean.turn_on
data:
entity_id: input_boolean.great_room_light_cycle
turn_off:
action: input_boolean.turn_off
data:
entity_id: input_boolean.great_room_light_cycle
icon: >-
{% if is_state('input_boolean.great_room_light_cycle', 'on') %}
mdi:party-popper
{% else %}
mdi:party-popper
{% endif %}
- unique_id: fc8be266-37ce-4eac-a2c5-2398f84681bb
default_entity_id: switch.computer_area_light_cycle
name: "Computer Area Light Cycle"
state: "{{ is_state('input_boolean.computer_area_light_cycle', 'on') }}"
turn_on:
action: input_boolean.turn_on
data:
entity_id: input_boolean.computer_area_light_cycle
turn_off:
action: input_boolean.turn_off
data:
entity_id: input_boolean.computer_area_light_cycle
icon: >-
{% if is_state('input_boolean.computer_area_light_cycle', 'on') %}
mdi:party-popper
{% else %}
mdi:party-popper
{% endif %}
- unique_id: be11d0e0-4858-4381-8528-23c16179bbe3
default_entity_id: switch.girls_room_bed_lights
state: "{{ is_state('light.black_bed_wled', 'on') or is_state('light.white_bed_wled', 'on') }}"
turn_on:
action: select.select_option
target:
entity_id:
- select.black_bed_wled_preset
- select.white_bed_wled_preset
data:
option: Bouncing Balls
turn_off:
action: select.select_option
target:
entity_id:
- select.black_bed_wled_preset
- select.white_bed_wled_preset
data:
option: "Off"
icon: >-
mdi:led-strip-variant
- unique_id: 5cba4cb3-1fa0-482f-b419-edde77030500
default_entity_id: switch.virtual_reality
state: "{{ is_state('switch.vr_headset_plug', 'on') }}"
turn_on:
action: homeassistant.turn_on
data:
entity_id:
- switch.vr_headset_plug
turn_off:
action: homeassistant.turn_off
data:
entity_id:
- switch.vr_headset_plug
icon: >-
mdi:virtual-reality
# all_chores:
# unique_id: templateswitch.all_chores
# state: "{{ is_state('input_boolean.grocy_next_chores', 'on')}}"
# turn_on:
# action: homeassistant.turn_on
# data:
# entity_id:
# - input_boolean.grocy_next_chores
# turn_off:
# action: homeassistant.turn_off
# data:
# entity_id:
# - input_boolean.grocy_next_chores
# boys_room_chores:
# unique_id: templateswitch.boys_room_chores
# state: "{{ is_state('input_boolean.boys_room_next_chores', 'on')}}"
# turn_on:
# action: homeassistant.turn_on
# data:
# entity_id:
# - input_boolean.boys_room_next_chores
# turn_off:
# action: homeassistant.turn_off
# data:
# entity_id:
# - input_boolean.boys_room_next_chores
# computer_area_chores:
# unique_id: templateswitch.computer_area_chores
# state: "{{ is_state('input_boolean.computer_area_next_chores', 'on')}}"
# turn_on:
# action: homeassistant.turn_on
# data:
# entity_id:
# - input_boolean.computer_area_next_chores
# turn_off:
# action: homeassistant.turn_off
# data:
# entity_id:
# - input_boolean.computer_area_next_chores
+11
View File
@@ -0,0 +1,11 @@
sensor:
- platform: time_date
display_options:
- 'time'
- 'date'
- 'date_time'
- 'date_time_utc'
- 'date_time_iso'
- 'time_date'
- 'time_utc'
@@ -93,10 +93,10 @@ automation:
# - select.microwave_plug_daily
# - select.microwave_plug_weekly
# - select.microwave_plug_monthly
# - select.nursery_dining_kitchen_lights_hourly
# - select.nursery_dining_kitchen_lights_daily
# - select.nursery_dining_kitchen_lights_weekly
# - select.nursery_dining_kitchen_lights_monthly
# - select.girls_room_dining_kitchen_lights_hourly
# - select.girls_room_dining_kitchen_lights_daily
# - select.girls_room_dining_kitchen_lights_weekly
# - select.girls_room_dining_kitchen_lights_monthly
# - select.stove_hourly
# - select.stove_daily
# - select.stove_weekly