mirror of
https://github.com/CeeWeasel/fresh-home.git
synced 2026-08-09 18:40:14 -04:00
Cleanup fixes and some BS
This commit is contained in:
@@ -1,83 +0,0 @@
|
|||||||
alias: Respond to Chickadee
|
|
||||||
id: automation_respond_to_chickadee
|
|
||||||
mode: single
|
|
||||||
description: ""
|
|
||||||
trigger:
|
|
||||||
# - platform: state
|
|
||||||
# entity_id: input_boolean.chickadee_is_waiting
|
|
||||||
# from: 'off'
|
|
||||||
# to: 'on'
|
|
||||||
- platform: numeric_state
|
|
||||||
entity_id: sensor.chickadee_unread
|
|
||||||
above: 0
|
|
||||||
condition:
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.guest_mode
|
|
||||||
state: "off"
|
|
||||||
- condition: state
|
|
||||||
entity_id: group.podeins_at_home
|
|
||||||
state: "off"
|
|
||||||
action:
|
|
||||||
- repeat:
|
|
||||||
while:
|
|
||||||
- condition: numeric_state
|
|
||||||
entity_id: sensor.chickadee_unread
|
|
||||||
above: 0
|
|
||||||
# - condition: state
|
|
||||||
# entity_id: input_boolean.chickadee_is_waiting
|
|
||||||
# state: 'on'
|
|
||||||
sequence:
|
|
||||||
- choose:
|
|
||||||
- conditions:
|
|
||||||
- condition: state
|
|
||||||
entity_id: binary_sensor.kids_at_home
|
|
||||||
state: "off"
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.allow_announcements
|
|
||||||
state: "on"
|
|
||||||
|
|
||||||
- condition: not
|
|
||||||
conditions:
|
|
||||||
- condition: state
|
|
||||||
entity_id: sensor.pixel_7_audio_mode
|
|
||||||
state: in_communication
|
|
||||||
- condition: state
|
|
||||||
entity_id: sensor.pixel_7_audio_mode
|
|
||||||
state: in_call
|
|
||||||
- condition: state
|
|
||||||
entity_id: input_boolean.kids_bedtime
|
|
||||||
state: "on"
|
|
||||||
|
|
||||||
sequence:
|
|
||||||
- service: script.make_clever_announcement
|
|
||||||
data:
|
|
||||||
media_content_id: media-source://media_source/local/Sounds/tts/respond_to_chickadee.mp3
|
|
||||||
|
|
||||||
- service: notify.mobile_app_pixel_7
|
|
||||||
data:
|
|
||||||
message: >-
|
|
||||||
Chickadee is waiting to hear back on {{states('sensor.chickadee_unread')}} message(s)!
|
|
||||||
title: Tweet tweet
|
|
||||||
|
|
||||||
- service: notify.hass_agent_group
|
|
||||||
data:
|
|
||||||
message: >-
|
|
||||||
Chickadee is waiting to hear back on {{states('sensor.chickadee_unread')}} message(s)!
|
|
||||||
title: Tweet tweet
|
|
||||||
|
|
||||||
- service: persistent_notification.create
|
|
||||||
data:
|
|
||||||
message: >-
|
|
||||||
Chickadee is waiting to hear back on {{states('sensor.chickadee_unread')}} message(s)!
|
|
||||||
title: Tweet Tweet
|
|
||||||
notification_id: 07111985
|
|
||||||
|
|
||||||
- delay:
|
|
||||||
hours: 0
|
|
||||||
minutes: 2
|
|
||||||
seconds: 0
|
|
||||||
milliseconds: 0
|
|
||||||
|
|
||||||
- service: persistent_notification.dismiss
|
|
||||||
data:
|
|
||||||
notification_id: 07111985
|
|
||||||
@@ -13,7 +13,7 @@ trigger:
|
|||||||
- input_boolean.home_occupied
|
- input_boolean.home_occupied
|
||||||
- binary_sensor.kitchen_occupied
|
- binary_sensor.kitchen_occupied
|
||||||
to: 'off'
|
to: 'off'
|
||||||
for: '00:05:00'
|
for: '00:15:00'
|
||||||
|
|
||||||
# - platform: time_pattern
|
# - platform: time_pattern
|
||||||
# minutes: "/5"
|
# minutes: "/5"
|
||||||
|
|||||||
@@ -359,21 +359,21 @@ template:
|
|||||||
state: >
|
state: >
|
||||||
{{ states('binary_sensor.is_raining') }}
|
{{ states('binary_sensor.is_raining') }}
|
||||||
|
|
||||||
- trigger:
|
# - trigger:
|
||||||
# - platform: homeassistant
|
# # - platform: homeassistant
|
||||||
# event: start
|
# # event: start
|
||||||
|
|
||||||
# - platform: time
|
# # - platform: time
|
||||||
# at: '01:00:00'
|
# # at: '01:00:00'
|
||||||
|
|
||||||
# - platform: state
|
# # - platform: state
|
||||||
# entity_id: input_boolean.sprinkler_is_winterized
|
# # entity_id: input_boolean.sprinkler_is_winterized
|
||||||
|
|
||||||
binary_sensor:
|
# binary_sensor:
|
||||||
- name: "Sprinkler: In Season"
|
# - name: "Sprinkler: In Season"
|
||||||
unique_id: "custom_binary_sensor.sprinkler_in_season"
|
# unique_id: "custom_binary_sensor.sprinkler_in_season"
|
||||||
device_class: moisture
|
# device_class: moisture
|
||||||
state: "{{ now().month > 4 and now().month < 10 }}"
|
# state: "{{ now().month > 4 and now().month < 10 }}"
|
||||||
|
|
||||||
# - trigger:
|
# - trigger:
|
||||||
# - platform: homeassistant
|
# - platform: homeassistant
|
||||||
|
|||||||
@@ -1,10 +0,0 @@
|
|||||||
input_text:
|
|
||||||
gpt_prompt:
|
|
||||||
initial: ""
|
|
||||||
max: 255
|
|
||||||
name: GPT Prompt
|
|
||||||
|
|
||||||
input_button:
|
|
||||||
update_gpt_response:
|
|
||||||
name: Update GPT Response
|
|
||||||
icon: mdi:brain
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
automation:
|
|
||||||
description: ""
|
|
||||||
mode: single
|
|
||||||
trigger:
|
|
||||||
- platform: state
|
|
||||||
entity_id:
|
|
||||||
- sensor.hassio_mindsdb_response
|
|
||||||
attribute: response_text
|
|
||||||
condition: []
|
|
||||||
action:
|
|
||||||
- service: notify.send_message
|
|
||||||
target:
|
|
||||||
entity_id: notify.mindsdb_responses
|
|
||||||
data:
|
|
||||||
message: >
|
|
||||||
"input":"{{ states('input_text.gpt_prompt') }}","output":"{{ state_attr('sensor.hassio_mindsdb_response','response_text')}}"
|
|
||||||
|
|
||||||
|
|
||||||
@@ -117,7 +117,7 @@ input_button:
|
|||||||
icon: mdi:sprinkler
|
icon: mdi:sprinkler
|
||||||
|
|
||||||
full_run_program:
|
full_run_program:
|
||||||
name: Run Full run Program
|
name: Run Full Run Program
|
||||||
icon: mdi:sprinkler
|
icon: mdi:sprinkler
|
||||||
|
|
||||||
automatic_run_program:
|
automatic_run_program:
|
||||||
@@ -156,7 +156,7 @@ automation:
|
|||||||
|
|
||||||
- id: full_run_program_enabled
|
- id: full_run_program_enabled
|
||||||
platform: state
|
platform: state
|
||||||
entity_id: input_button.full_run
|
entity_id: input_button.full_run_program
|
||||||
|
|
||||||
- id: automatic_run_program_enabled
|
- id: automatic_run_program_enabled
|
||||||
platform: state
|
platform: state
|
||||||
|
|||||||
@@ -22,7 +22,8 @@ packages:
|
|||||||
wifi: !include common/ethernet.yaml
|
wifi: !include common/ethernet.yaml
|
||||||
device_base: !include common/device_base.yaml
|
device_base: !include common/device_base.yaml
|
||||||
hx711: !include common/hx711_single_verbose.yaml
|
hx711: !include common/hx711_single_verbose.yaml
|
||||||
ble_proxy: !include common/ble_proxy.yaml
|
# Disabling this to see if it does a better job of staying online
|
||||||
|
# ble_proxy: !include common/ble_proxy.yaml
|
||||||
|
|
||||||
esp32:
|
esp32:
|
||||||
board: wemos_d1_mini32
|
board: wemos_d1_mini32
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ cards:
|
|||||||
- type: history-graph
|
- type: history-graph
|
||||||
entities:
|
entities:
|
||||||
- entity: sensor.pm_dishwasher_w
|
- entity: sensor.pm_dishwasher_w
|
||||||
- entity: sensor.shelly_dishwasher_w
|
|
||||||
hours_to_show: 2
|
hours_to_show: 2
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
@@ -83,4 +82,3 @@ cards:
|
|||||||
- entity: binary_sensor.dishwasher
|
- entity: binary_sensor.dishwasher
|
||||||
- entity: binary_sensor.dishwasher_door_contact
|
- entity: binary_sensor.dishwasher_door_contact
|
||||||
- entity: sensor.dishwasher_door_device_temperature
|
- entity: sensor.dishwasher_door_device_temperature
|
||||||
- entity: sensor.shelly_dishwasher_w
|
|
||||||
@@ -11,7 +11,6 @@ cards:
|
|||||||
- type: history-graph
|
- type: history-graph
|
||||||
entities:
|
entities:
|
||||||
- entity: sensor.pm_dishwasher_w
|
- entity: sensor.pm_dishwasher_w
|
||||||
- entity: sensor.shelly_dishwasher_w
|
|
||||||
hours_to_show: 2
|
hours_to_show: 2
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
@@ -83,4 +82,3 @@ cards:
|
|||||||
- entity: binary_sensor.dishwasher
|
- entity: binary_sensor.dishwasher
|
||||||
- entity: binary_sensor.dishwasher_door_contact
|
- entity: binary_sensor.dishwasher_door_contact
|
||||||
- entity: sensor.dishwasher_door_device_temperature
|
- entity: sensor.dishwasher_door_device_temperature
|
||||||
- entity: sensor.shelly_dishwasher_w
|
|
||||||
@@ -124,7 +124,7 @@ cards:
|
|||||||
Comfy
|
Comfy
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
||||||
Slightly Uncomfy
|
Slightly Uncomfy
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderatly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderately_uncomfortable') %}
|
||||||
Moderatly Uncomfy
|
Moderatly Uncomfy
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
||||||
Highly Uncomfortable
|
Highly Uncomfortable
|
||||||
@@ -136,7 +136,7 @@ cards:
|
|||||||
mdi:thermometer-low
|
mdi:thermometer-low
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
||||||
mdi:thermometer
|
mdi:thermometer
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderatly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderately_uncomfortable') %}
|
||||||
mdi:thermometer-high
|
mdi:thermometer-high
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
||||||
mdi:thermometer-alert
|
mdi:thermometer-alert
|
||||||
@@ -148,7 +148,7 @@ cards:
|
|||||||
green
|
green
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
||||||
yellow
|
yellow
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderatly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderately_uncomfortable') %}
|
||||||
orange
|
orange
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
||||||
red
|
red
|
||||||
@@ -205,9 +205,40 @@ cards:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
tap_action:
|
tap_action:
|
||||||
action: more-info
|
action: more-info
|
||||||
- type: custom:mushroom-entity-card
|
- type: custom:mushroom-template-card
|
||||||
entity: sensor.thermal_comfort_thoms_discomfort_perception
|
entity: sensor.thermal_comfort_thoms_discomfort_perception
|
||||||
name: Thoms Discomfort Perception
|
primary: Thoms
|
||||||
|
secondary: >
|
||||||
|
{% if is_state('sensor.thermal_comfort_thoms_discomfort_perception','no_discomfort') %}
|
||||||
|
No discomfort
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','less_than_half') %}
|
||||||
|
Less than half
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','more_than_half') %}
|
||||||
|
More than half
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','most') %}
|
||||||
|
Most
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','everyone') %}
|
||||||
|
Everyone
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','dangerous') %}
|
||||||
|
Dangerous
|
||||||
|
{% endif %}
|
||||||
|
icon: tc:heat-index
|
||||||
|
icon_color: >
|
||||||
|
{% if is_state('sensor.thermal_comfort_thoms_discomfort_perception','no_discomfort') %}
|
||||||
|
blue
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','less_than_half') %}
|
||||||
|
yellow
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','more_than_half') %}
|
||||||
|
orange
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','most') %}
|
||||||
|
orange
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','everyone') %}
|
||||||
|
red
|
||||||
|
{% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','dangerous') %}
|
||||||
|
red
|
||||||
|
{% endif %}
|
||||||
|
tap_action:
|
||||||
|
action: more-info
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:mushroom-template-card
|
- type: custom:mushroom-template-card
|
||||||
|
|||||||
@@ -3,119 +3,23 @@ path: nws-alerts
|
|||||||
icon: mdi:cloud-alert
|
icon: mdi:cloud-alert
|
||||||
visible:
|
visible:
|
||||||
- user: 24a4bd075e7f41a497dd0390a1dd4a9f
|
- user: 24a4bd075e7f41a497dd0390a1dd4a9f
|
||||||
|
#########################################################################################
|
||||||
cards:
|
cards:
|
||||||
- type: entities
|
- type: vertical-stack
|
||||||
title: Severe Weather Alerts
|
cards:
|
||||||
show_header_toggle: false
|
|
||||||
entities:
|
|
||||||
- sensor.nws_alerts
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.nws_alerts
|
- entity: sensor.nws_alerts_alerts
|
||||||
state_not: '0'
|
state_not: "0"
|
||||||
card:
|
card:
|
||||||
type: markdown
|
type: markdown
|
||||||
content: |
|
content: |
|
||||||
|
{% set num_alerts = states('sensor.nws_alerts') | int %}
|
||||||
|
{% for alert_num in range(num_alerts) %}
|
||||||
---
|
---
|
||||||
# NWS First Active Alert
|
# {{ state_attr('sensor.nws_alerts', 'Alerts')[alert_num].Event }}
|
||||||
|
|
||||||
## {{ state_attr('sensor.nws_alerts', 'Alerts')[0].Headline }}
|
## {{ state_attr('sensor.nws_alerts', 'Alerts')[alert_num].Headline }}
|
||||||
|
|
||||||
{{ state_attr('sensor.nws_alerts', 'Alerts')[0].Description }}
|
{{ state_attr('sensor.nws_alerts', 'Alerts')[alert_num].Description }}
|
||||||
|
{% endfor %}
|
||||||
- type: conditional
|
|
||||||
conditions:
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '0'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '1'
|
|
||||||
card:
|
|
||||||
type: markdown
|
|
||||||
content: >
|
|
||||||
---
|
|
||||||
|
|
||||||
# NWS Second Active Alert {% if state_attr('sensor.nws_alerts',
|
|
||||||
'title').split(' - ')[1] is defined %}
|
|
||||||
|
|
||||||
## {{ states.sensor.nws_alerts.attributes.title.split(' - ')[1] }}
|
|
||||||
|
|
||||||
{{ state_attr('sensor.nws_alerts', 'display_desc').split('\n\n-\n\n')[1] }}
|
|
||||||
|
|
||||||
{% else %}
|
|
||||||
none
|
|
||||||
{% endif %}
|
|
||||||
- type: conditional
|
|
||||||
conditions:
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '0'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '1'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '2'
|
|
||||||
card:
|
|
||||||
type: markdown
|
|
||||||
content: >
|
|
||||||
---
|
|
||||||
|
|
||||||
# NWS Third Active Alert {% if state_attr('sensor.nws_alerts',
|
|
||||||
'title').split(' - ')[2] is defined %}
|
|
||||||
|
|
||||||
## {{ states.sensor.nws_alerts.attributes.title.split(' - ')[2] }}
|
|
||||||
|
|
||||||
{{ state_attr('sensor.nws_alerts', 'display_desc').split('\n\n-\n\n')[2] }}
|
|
||||||
|
|
||||||
{% else %}
|
|
||||||
none
|
|
||||||
{% endif %}
|
|
||||||
- type: conditional
|
|
||||||
conditions:
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '0'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '1'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '2'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '3'
|
|
||||||
card:
|
|
||||||
type: markdown
|
|
||||||
content: >
|
|
||||||
---
|
|
||||||
|
|
||||||
# NWS Fourth Active Alert {% if state_attr('sensor.nws_alerts',
|
|
||||||
'title').split(' - ')[3] is defined %}
|
|
||||||
|
|
||||||
## {{ states.sensor.nws_alerts.attributes.title.split(' - ')[3] }}
|
|
||||||
|
|
||||||
{{ state_attr('sensor.nws_alerts', 'display_desc').split('\n\n-\n\n')[3] }}
|
|
||||||
|
|
||||||
{% else %}
|
|
||||||
none
|
|
||||||
{% endif %}
|
|
||||||
- type: conditional
|
|
||||||
conditions:
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '0'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '1'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '2'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '3'
|
|
||||||
- entity: sensor.nws_alerts
|
|
||||||
state_not: '4'
|
|
||||||
card:
|
|
||||||
type: markdown
|
|
||||||
content: >
|
|
||||||
---
|
|
||||||
|
|
||||||
# NWS Fifth Active Alert {% if state_attr('sensor.nws_alerts',
|
|
||||||
'title').split(' - ')[4] is defined %}
|
|
||||||
|
|
||||||
## {{ states.sensor.nws_alerts.attributes.title.split(' - ')[4] }}
|
|
||||||
|
|
||||||
{{ state_attr('sensor.nws_alerts', 'display_desc').split('\n\n-\n\n')[4] }}
|
|
||||||
|
|
||||||
{% else %}
|
|
||||||
none
|
|
||||||
{% endif %}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
title: OpenMinds AI
|
|
||||||
path: openminds-ai
|
|
||||||
icon: mdi:brain
|
|
||||||
visible:
|
|
||||||
- user: 24a4bd075e7f41a497dd0390a1dd4a9f
|
|
||||||
cards:
|
|
||||||
- type: grid
|
|
||||||
square: false
|
|
||||||
columns: 1
|
|
||||||
cards:
|
|
||||||
- type: entities
|
|
||||||
entities:
|
|
||||||
- entity: input_text.gpt_prompt
|
|
||||||
- type: markdown
|
|
||||||
content: '{{ state_attr(''sensor.hassio_mindsdb_response'', ''response_text'') }}'
|
|
||||||
title: OpenAI Response
|
|
||||||
@@ -74,6 +74,14 @@ cards:
|
|||||||
secondary_info: none
|
secondary_info: none
|
||||||
tap_action:
|
tap_action:
|
||||||
action: toggle
|
action: toggle
|
||||||
|
- type: entities
|
||||||
|
entities:
|
||||||
|
- entity: sensor.ecowitt_wh40_21917_precipitation
|
||||||
|
secondary_info: last-updated
|
||||||
|
- entity: binary_sensor.is_raining
|
||||||
|
secondary_info: last-changed
|
||||||
|
- entity: binary_sensor.sprinkler_raining
|
||||||
|
secondary_info: last-changed
|
||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: input_boolean.lovelace_show_sprinklers
|
- entity: input_boolean.lovelace_show_sprinklers
|
||||||
|
|||||||
@@ -54,9 +54,6 @@
|
|||||||
- url: /hacsfiles/Home-Assistant-Mail-And-Packages-Custom-Card/Home-Assistant-Mail-And-Packages-Custom-Card.js
|
- url: /hacsfiles/Home-Assistant-Mail-And-Packages-Custom-Card/Home-Assistant-Mail-And-Packages-Custom-Card.js
|
||||||
type: module
|
type: module
|
||||||
|
|
||||||
- url: /hacsfiles/lovelace-grocy-chores-card/grocy-chores-card.js
|
|
||||||
type: module
|
|
||||||
|
|
||||||
- url: /hacsfiles/lovelace-mushroom/mushroom.js
|
- url: /hacsfiles/lovelace-mushroom/mushroom.js
|
||||||
type: module
|
type: module
|
||||||
|
|
||||||
|
|||||||
+64
-139
@@ -17,31 +17,23 @@ badges:
|
|||||||
navigation_path: /details-yml/weather
|
navigation_path: /details-yml/weather
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
|
conditions:
|
||||||
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.thermal_comfort_dew_point_perception
|
- entity: sensor.thermal_comfort_dew_point_perception
|
||||||
state_not: unavailable
|
state: somewhat_uncomfortable
|
||||||
|
- entity: sensor.thermal_comfort_dew_point_perception
|
||||||
|
state: quite_uncomfortable
|
||||||
|
- entity: sensor.thermal_comfort_dew_point_perception
|
||||||
|
state: quite_uncomfortable
|
||||||
|
- entity: sensor.thermal_comfort_dew_point_perception
|
||||||
|
state: extremely_uncomfortable
|
||||||
|
- entity: sensor.thermal_comfort_dew_point_perception
|
||||||
|
state: severely_high
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: sensor.thermal_comfort_dew_point_perception
|
entity: sensor.thermal_comfort_dew_point_perception
|
||||||
content: Dew Point
|
content: Dew Point
|
||||||
# content: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_dew_point_perception','dry') %}
|
|
||||||
# Dry
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','very_comfortable') %}
|
|
||||||
# Very Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','comfortable') %}
|
|
||||||
# Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','ok_but_humid') %}
|
|
||||||
# Humid
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','somewhat_uncomfortable') %}
|
|
||||||
# Somewhat Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','quite_uncomfortable') %}
|
|
||||||
# Quite Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','extremely_uncomfortable') %}
|
|
||||||
# Extremely Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_dew_point_perception','severely_high') %}
|
|
||||||
# Severely High
|
|
||||||
# {% endif %}
|
|
||||||
icon: tc:dew-point
|
icon: tc:dew-point
|
||||||
icon_color: >
|
icon_color: >
|
||||||
{% if is_state('sensor.thermal_comfort_dew_point_perception','dry') %}
|
{% if is_state('sensor.thermal_comfort_dew_point_perception','dry') %}
|
||||||
@@ -55,7 +47,7 @@ badges:
|
|||||||
{% elif is_state('sensor.thermal_comfort_dew_point_perception','somewhat_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_dew_point_perception','somewhat_uncomfortable') %}
|
||||||
yellow
|
yellow
|
||||||
{% elif is_state('sensor.thermal_comfort_dew_point_perception','quite_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_dew_point_perception','quite_uncomfortable') %}
|
||||||
orange
|
yellow
|
||||||
{% elif is_state('sensor.thermal_comfort_dew_point_perception','extremely_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_dew_point_perception','extremely_uncomfortable') %}
|
||||||
orange
|
orange
|
||||||
{% elif is_state('sensor.thermal_comfort_dew_point_perception','severely_high') %}
|
{% elif is_state('sensor.thermal_comfort_dew_point_perception','severely_high') %}
|
||||||
@@ -66,42 +58,24 @@ badges:
|
|||||||
navigation_path: /details-yml/hvac
|
navigation_path: /details-yml/hvac
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
|
conditions:
|
||||||
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.thermal_comfort_humidex_perception
|
- entity: sensor.thermal_comfort_humidex_perception
|
||||||
state_not: unavailable
|
state: noticable_discomfort
|
||||||
|
- entity: sensor.thermal_comfort_humidex_perception
|
||||||
|
state: evident_discomfort
|
||||||
|
- entity: sensor.thermal_comfort_humidex_perception
|
||||||
|
state: great_discomfort
|
||||||
|
- entity: sensor.thermal_comfort_humidex_perception
|
||||||
|
state: dangerous_discomfort
|
||||||
|
- entity: sensor.thermal_comfort_humidex_perception
|
||||||
|
state: heat_stroke
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: sensor.thermal_comfort_humidex_perception
|
entity: sensor.thermal_comfort_humidex_perception
|
||||||
content: Humidex
|
content: Humidex
|
||||||
# content: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_humidex_perception','comfortable') %}
|
|
||||||
# Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','noticable_discomfort') %}
|
|
||||||
# Noticable Discomfort
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','evident_discomfort') %}
|
|
||||||
# Evident Discomfort
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','great_discomfort') %}
|
|
||||||
# Great Discomfort
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','dangerous_discomfort') %}
|
|
||||||
# Dangerous
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','heat_stroke') %}
|
|
||||||
# Heat Stroke
|
|
||||||
# {% endif %}
|
|
||||||
icon: tc:thermal-perception
|
icon: tc:thermal-perception
|
||||||
# icon: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_humidex_perception','comfortable') %}
|
|
||||||
# mdi:thermometer-low
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','noticable_discomfort') %}
|
|
||||||
# mdi:thermometer
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','evident_discomfort') %}
|
|
||||||
# mdi:thermometer-high
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','great_discomfort') %}
|
|
||||||
# mdi:thermometer-high
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','dangerous_discomfort') %}
|
|
||||||
# mdi:thermometer-alert
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_humidex_perception','heat_stroke') %}
|
|
||||||
# mdi:thermometer-alert
|
|
||||||
# {% endif %}
|
|
||||||
icon_color: >
|
icon_color: >
|
||||||
{% if is_state('sensor.thermal_comfort_humidex_perception','comfortable') %}
|
{% if is_state('sensor.thermal_comfort_humidex_perception','comfortable') %}
|
||||||
green
|
green
|
||||||
@@ -121,31 +95,25 @@ badges:
|
|||||||
navigation_path: /details-yml/hvac
|
navigation_path: /details-yml/hvac
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
|
conditions:
|
||||||
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.thermal_comfort_summer_scharlau_perception
|
- entity: sensor.thermal_comfort_summer_scharlau_perception
|
||||||
state_not: unavailable
|
state: slightly_uncomfortable
|
||||||
- entity: sensor.thermal_comfort_summer_scharlau_perception
|
- entity: sensor.thermal_comfort_summer_scharlau_perception
|
||||||
state_not: outside_calculable_range
|
state: moderately_uncomfortable
|
||||||
|
- entity: sensor.thermal_comfort_summer_scharlau_perception
|
||||||
|
state: highly_uncomfortable
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: sensor.thermal_comfort_summer_scharlau_perception
|
entity: sensor.thermal_comfort_summer_scharlau_perception
|
||||||
content: Summer Scharlau
|
content: Summer Scharlau
|
||||||
# content: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_summer_scharlau_perception','comfortable') %}
|
|
||||||
# Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
|
||||||
# Slightly Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderatly_uncomfortable') %}
|
|
||||||
# Moderatly Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
|
||||||
# Highly Uncomfortable
|
|
||||||
# {% endif %}
|
|
||||||
icon: >
|
icon: >
|
||||||
{% if is_state('sensor.thermal_comfort_summer_scharlau_perception','comfortable') %}
|
{% if is_state('sensor.thermal_comfort_summer_scharlau_perception','comfortable') %}
|
||||||
mdi:thermometer-low
|
mdi:thermometer-low
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
||||||
mdi:thermometer
|
mdi:thermometer
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderatly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderately_uncomfortable') %}
|
||||||
mdi:thermometer-high
|
mdi:thermometer-high
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
||||||
mdi:thermometer-alert
|
mdi:thermometer-alert
|
||||||
@@ -155,7 +123,7 @@ badges:
|
|||||||
green
|
green
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','slightly_uncomfortable') %}
|
||||||
yellow
|
yellow
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderatly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','moderately_uncomfortable') %}
|
||||||
orange
|
orange
|
||||||
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
{% elif is_state('sensor.thermal_comfort_summer_scharlau_perception','highly_uncomfortable') %}
|
||||||
red
|
red
|
||||||
@@ -174,16 +142,6 @@ badges:
|
|||||||
type: template
|
type: template
|
||||||
entity: sensor.thermal_comfort_winter_scharlau_perception
|
entity: sensor.thermal_comfort_winter_scharlau_perception
|
||||||
content: Winter Scharlau
|
content: Winter Scharlau
|
||||||
# content: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_winter_scharlau_perception','comfortable') %}
|
|
||||||
# Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_winter_scharlau_perception','slightly_uncomfortable') %}
|
|
||||||
# Slightly Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_winter_scharlau_perception','moderatly_uncomfortable') %}
|
|
||||||
# Moderatly Uncomfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_winter_scharlau_perception','highly_uncomfortable') %}
|
|
||||||
# Highly Uncomfortable
|
|
||||||
# {% endif %}
|
|
||||||
icon: >
|
icon: >
|
||||||
{% if is_state('sensor.thermal_comfort_winter_scharlau_perception','comfortable') %}
|
{% if is_state('sensor.thermal_comfort_winter_scharlau_perception','comfortable') %}
|
||||||
mdi:snowflake-off
|
mdi:snowflake-off
|
||||||
@@ -252,54 +210,26 @@ badges:
|
|||||||
navigation_path: /details-yml/hvac
|
navigation_path: /details-yml/hvac
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
|
conditions:
|
||||||
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.thermal_comfort_summer_simmer_perception
|
- entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
state_not: unavailable
|
state: slightly_warm
|
||||||
|
- entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
|
state: increasing_discomfort
|
||||||
|
- entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
|
state: extremely_warm
|
||||||
|
- entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
|
state: danger_of_heatstroke
|
||||||
|
- entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
|
state: extreme_danger_of_heatstroke
|
||||||
|
- entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
|
state: circulatory_collapse_imminent
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: sensor.thermal_comfort_summer_simmer_perception
|
entity: sensor.thermal_comfort_summer_simmer_perception
|
||||||
content: Summer Simmer
|
content: Summer Simmer
|
||||||
# content: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_summer_simmer_perception','cool') %}
|
|
||||||
# Cool
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','slightly_cool') %}
|
|
||||||
# Cool
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','comfortable') %}
|
|
||||||
# Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','slightly_warm') %}
|
|
||||||
# Warm
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','increasing_discomfort') %}
|
|
||||||
# Warm
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','extremely_warm') %}
|
|
||||||
# Hot
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','danger_of_heatstroke') %}
|
|
||||||
# Hot
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','extreme_danger_of_heatstroke') %}
|
|
||||||
# Danger
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','circulatory_collapse_imminent') %}
|
|
||||||
# Danger
|
|
||||||
# {% endif %}
|
|
||||||
icon: tc:simmer-zone
|
icon: tc:simmer-zone
|
||||||
# icon: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_summer_simmer_perception','cool') %}
|
|
||||||
# mdi:thermometer-low
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','slightly_cool') %}
|
|
||||||
# mdi:thermometer-low
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','comfortable') %}
|
|
||||||
# mdi:thermometer
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','slightly_warm') %}
|
|
||||||
# mdi:thermometer-chevron-up
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','increasing_discomfort') %}
|
|
||||||
# mdi:thermometer-chevron-up
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','extremely_warm') %}
|
|
||||||
# mdi:thermometer-high
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','danger_of_heatstroke') %}
|
|
||||||
# mdi:thermometer-high
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','extreme_danger_of_heatstroke') %}
|
|
||||||
# mdi:thermometer-alert
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_summer_simmer_perception','circulatory_collapse_imminent') %}
|
|
||||||
# mdi:thermometer-alert
|
|
||||||
# {% endif %}
|
|
||||||
icon_color: >
|
icon_color: >
|
||||||
{% if is_state('sensor.thermal_comfort_summer_simmer_perception','cool') %}
|
{% if is_state('sensor.thermal_comfort_summer_simmer_perception','cool') %}
|
||||||
blue
|
blue
|
||||||
@@ -325,27 +255,21 @@ badges:
|
|||||||
navigation_path: /details-yml/hvac
|
navigation_path: /details-yml/hvac
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
|
conditions:
|
||||||
|
- condition: or
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.thermal_comfort_thoms_discomfort_perception
|
- entity: sensor.thermal_comfort_thoms_discomfort_perception
|
||||||
state_not: unavailable
|
state: more_than_half
|
||||||
|
- entity: sensor.thermal_comfort_thoms_discomfort_perception
|
||||||
|
state: most
|
||||||
|
- entity: sensor.thermal_comfort_thoms_discomfort_perception
|
||||||
|
state: everyone
|
||||||
|
- entity: sensor.thermal_comfort_thoms_discomfort_perception
|
||||||
|
state: dangerous
|
||||||
chip:
|
chip:
|
||||||
type: template
|
type: template
|
||||||
entity: sensor.thermal_comfort_thoms_discomfort_perception
|
entity: sensor.thermal_comfort_thoms_discomfort_perception
|
||||||
content: Thoms
|
content: Thoms
|
||||||
# content: >
|
|
||||||
# {% if is_state('sensor.thermal_comfort_thoms_discomfort_perception','no_discomfort') %}
|
|
||||||
# Comfy
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','less_than_half') %}
|
|
||||||
# < 1/2
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','more_than_half') %}
|
|
||||||
# > 1/2
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','most') %}
|
|
||||||
# Most
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','everyone') %}
|
|
||||||
# Everyone
|
|
||||||
# {% elif is_state('sensor.thermal_comfort_thoms_discomfort_perception','dangerous') %}
|
|
||||||
# Dangerous
|
|
||||||
# {% endif %}
|
|
||||||
icon: >
|
icon: >
|
||||||
{% if is_state('sensor.thermal_comfort_thoms_discomfort_perception','no_discomfort') %}
|
{% if is_state('sensor.thermal_comfort_thoms_discomfort_perception','no_discomfort') %}
|
||||||
mdi:thermometer-low
|
mdi:thermometer-low
|
||||||
@@ -441,6 +365,17 @@ badges:
|
|||||||
action: navigate
|
action: navigate
|
||||||
navigation_path: /phone-yaml/plants
|
navigation_path: /phone-yaml/plants
|
||||||
|
|
||||||
|
- type: conditional
|
||||||
|
conditions:
|
||||||
|
- entity: binary_sensor.is_raining
|
||||||
|
state: "on"
|
||||||
|
chip:
|
||||||
|
type: entity
|
||||||
|
entity: binary_sensor.is_raining
|
||||||
|
tap_action:
|
||||||
|
action: navigate
|
||||||
|
navigation_path: /phone-yaml/plants
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: binary_sensor.sprinkler_should_winterize
|
- entity: binary_sensor.sprinkler_should_winterize
|
||||||
@@ -465,16 +400,6 @@ badges:
|
|||||||
action: navigate
|
action: navigate
|
||||||
navigation_path: /phone-yaml/plants
|
navigation_path: /phone-yaml/plants
|
||||||
|
|
||||||
- type: conditional
|
|
||||||
conditions:
|
|
||||||
- entity: sensor.chickadee_unread
|
|
||||||
state_not: unavailable
|
|
||||||
- entity: sensor.chickadee_unread
|
|
||||||
state_not: "0"
|
|
||||||
chip:
|
|
||||||
type: entity
|
|
||||||
entity: sensor.chickadee_unread
|
|
||||||
|
|
||||||
- type: conditional
|
- type: conditional
|
||||||
conditions:
|
conditions:
|
||||||
- entity: sensor.watchman_missing_entities
|
- entity: sensor.watchman_missing_entities
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ cards:
|
|||||||
name: Microwave
|
name: Microwave
|
||||||
- entity: sensor.pm_stove_w
|
- entity: sensor.pm_stove_w
|
||||||
name: Stove/Oven
|
name: Stove/Oven
|
||||||
- entity: sensor.shelly_dishwasher_w
|
- entity: sensor.pm_dishwasher_w
|
||||||
name: Dishwasher
|
name: Dishwasher
|
||||||
- entity: sensor.shelly_keurig_w
|
- entity: sensor.shelly_keurig_w
|
||||||
name: Keurig
|
name: Keurig
|
||||||
|
|||||||
Reference in New Issue
Block a user