Setting up Emmetts Room

This commit is contained in:
CeeWeasel
2025-10-05 12:00:44 -04:00
parent 0f815c268b
commit 10e297961b
31 changed files with 583 additions and 229 deletions
+1
View File
@@ -12,6 +12,7 @@ watchman_report.txt
.exports
.jwt_secret
.version
.ha_run.lock
backup_config.yaml
.storage/
@@ -5,7 +5,7 @@ mode: restart
trigger:
- trigger: state
entity_id: binary_sensor.white_bed_occupied
entity_id: binary_sensor.black_bed_occupied
to: "on"
for: "00:10:00"
- trigger: state
@@ -22,17 +22,12 @@ condition:
state: "on"
- condition: state
entity_id:
- binary_sensor.white_bed_occupied
- binary_sensor.black_bed_occupied
state: "on"
for: "00:10:00"
for: "00:05:00"
- condition: state
entity_id: input_boolean.bridget_in_bed
state: "off"
#- condition: state
# entity_id: binary_sensor.white_bed_occupied
# state: 'on'
# for:
# minutes: 5
action:
- action: homeassistant.turn_on
+2 -2
View File
@@ -4,7 +4,7 @@ mode: restart
trigger:
- platform: state
entity_id: binary_sensor.black_bed_occupied
entity_id: binary_sensor.white_bed_occupied
to: 'on'
for: '00:10:00'
- platform: state
@@ -21,7 +21,7 @@ condition:
state: 'on'
- condition: state
entity_id:
- binary_sensor.black_bed_occupied
- binary_sensor.white_bed_occupied
state: 'on'
for: '00:10:00'
- condition: state
+1 -1
View File
@@ -9,7 +9,7 @@ trigger:
- platform: state
entity_id:
- group.person_kristy
- device_tracker.kristy_s_phone
- device_tracker.nmap_tracker_d6_28_7a_58_b8_da
to: 'home'
- platform: event
+35 -11
View File
@@ -151,28 +151,52 @@ action:
- delay: "00:05:00"
- choose:
- conditions: "{{is_state('input_boolean.emmett_home','on') or is_state('input_boolean.bridget_home','on')}}"
- conditions: "{{is_state('input_boolean.bridget_home','on')}}"
sequence:
- service: input_button.press
data: {}
target:
entity_id: input_button.nursery_bedtime
- delay: "00:45:00"
- service: input_select.select_option
data:
option: Running Rainbow
target:
entity_id: input_select.nursery_wled
# - service: automation.trigger
# target:
# entity_id: automation.nursery_wled_changed
# - choose:
# - conditions: "{{is_state('input_boolean.bridget_home','on')}}"
# sequence:
# - service: input_boolean.turn_on
# data: {}
# target:
# entity_id: input_boolean.nursery_asleep
# - delay: "00:00:05"
# - choose:
# - conditions: "{{is_state('media_player.ytube_music_player','on')}}"
# sequence:
# - service: media_player.turn_off
# target:
# entity_id: media_player.ytube_music_player
- delay: "00:25:00"
- choose:
- conditions: "{{is_state('input_boolean.emmett_home','on') or is_state('input_boolean.bridget_home','on')}}"
- conditions: "{{is_state('input_boolean.emmett_home','on')}}"
sequence:
- service: input_boolean.turn_on
data: {}
target:
entity_id: input_boolean.nursery_asleep
entity_id: input_boolean.blue_room_asleep
- delay: "00:00:05"
- choose:
- conditions: "{{is_state('media_player.ytube_music_player','on')}}"
sequence:
- service: media_player.turn_off
- service: input_select.select_option
target:
entity_id: media_player.ytube_music_player
entity_id: input_select.blue_room_mode
data:
option: "Nightlight"
@@ -0,0 +1,44 @@
alias: Blue Room Into Bed
id: automation_blue_room_into_bed
trigger:
- platform: state
entity_id: binary_sensor.white_bed_occupied
to: "on"
for: "00:00:10"
condition:
- condition: or
conditions:
- condition: state
entity_id: input_boolean.home_occupied
state: "on"
- condition: state
entity_id: input_boolean.guest_mode
state: "on"
- condition: or
conditions:
- condition: state
entity_id: input_boolean.emmett_home
state: "on"
- condition: state
entity_id: input_boolean.bridget_home
state: "on"
- condition: state
entity_id: input_boolean.ebin_home
state: "on"
- condition: state
entity_id: input_boolean.nursery_light_cycle
state: "off"
- condition: state
entity_id: input_select.blue_room_mode
state: "Nightlight"
- condition: state
entity_id: light.blue_room_hue
state: "on"
action:
- service: light.turn_on
data:
entity_id:
- light.blue_room_closet
@@ -0,0 +1,157 @@
alias: Blue Room Out of Bed
id: automation_blue_room_out_of_bed
mode: single
# Hide warnings when triggered while in delay.
max_exceeded: silent
trigger:
- trigger: state
entity_id: binary_sensor.white_bed_occupied
from: "on"
to: "off"
for: "00:00:03"
- trigger: state
entity_id: binary_sensor.blue_room_door
from: "off"
to: "on"
condition:
- alias: "Do we want to be alerted?"
condition: state
entity_id: input_boolean.out_of_bed_alert
state: "on"
- alias: "Is the home occupied or in guest mode?"
condition: or
conditions:
- condition: state
entity_id: input_boolean.home_occupied
state: "on"
- condition: state
entity_id: input_boolean.guest_mode
state: "on"
- alias: "Are any of the kids considered home?"
condition: or
conditions:
- condition: state
entity_id: input_boolean.emmett_home
state: "on"
- condition: state
entity_id: input_boolean.bridget_home
state: "on"
- condition: state
entity_id: input_boolean.ebin_home
state: "on"
- alias: "Is at a time of day when the kids should be sleeping?"
condition: or
conditions:
- condition: state
entity_id: binary_sensor.evening
state: "on"
- condition: state
entity_id: binary_sensor.late_evening
state: "on"
- condition: state
entity_id: binary_sensor.night
state: "on"
- condition: state
entity_id: binary_sensor.early_morning
state: "on"
- alias: "Is Nursery Light Cycle turned off?"
condition: state
entity_id: input_boolean.nursery_light_cycle
state: "off"
- alias: "Are the kids asleep?"
condition: state
entity_id: input_boolean.kids_asleep
state: "on"
- alias: "Is an adult awake?"
condition: state
entity_id: binary_sensor.adults_asleep
state: "off"
variables:
computer_area: "{{ states('binary_sensor.computer_area_person_occupancy') }}"
front_room: "{{ states('binary_sensor.front_room_person_occupancy') }}"
entryway: "{{ states('input_boolean.entryway_occupied') }}"
action:
- choose:
- conditions:
- condition: state
entity_id: binary_sensor.garage_occupied
state: "on"
sequence:
- action: script.blink_garage_lights
- choose:
- conditions:
- condition: state
entity_id: binary_sensor.computer_area_occupied
state: "on"
sequence:
- action: webrtc.dash_cast
data:
entity_id: media_player.computer_area_hub
url: rtsp_cam01_sub
force: true
extra:
mode: webrtc
- choose:
- conditions:
- condition: state
entity_id: binary_sensor.front_room_occupied
state: "on"
sequence:
- action: webrtc.dash_cast
data:
entity_id: media_player.front_room_hub
url: rtsp_cam01_sub
force: true
extra:
mode: webrtc
- delay: "00:10:00"
- action: media_player.turn_off
entity_id: media_player.front_room_hub, media_player.computer_area_hub
# - alias: "Flash some lights"
# repeat:
# count: 6
# sequence:
# - delay: 1
# - service: light.toggle
# target:
# entity_id:
# - light.entryway_hue
# - light.computer_area_hue
# - light.front_room_hue
#- delay: '00:00:02'
# - alias: "Fix computer area lights"
# service: automation.trigger
# target:
# entity_id: "automation.computer_area_lights_to_{{ computer_area }}"
# data:
# skip_condition: true
# - alias: "Fix front room lights"
# service: automation.trigger
# target:
# entity_id: "automation.front_room_lights_to_{{ front_room }}"
# data:
# skip_condition: true
# - alias: "Fix entryway lights"
# service: automation.trigger
# target:
# entity_id: "automation.entryway_lights_to_{{ entryway }}"
# data:
# skip_condition: true
@@ -0,0 +1,12 @@
alias: Blue Room White Noise Off
id: automation_blue_room_white_noise_off
trigger:
- platform: state
entity_id: input_boolean.blue_room_asleep
to: "off"
action:
- service: media_player.turn_off
entity_id: media_player.ma_blue_room_clock
@@ -0,0 +1,49 @@
alias: Blue Room White Noise On
id: automation_blue_room_white_noise_on
trigger:
- platform: state
entity_id: input_boolean.blue_room_asleep
to: "on"
action:
- choose:
- conditions:
- condition: state
entity_id: media_player.ma_blue_room_clock
state: "playing"
sequence:
- service: media_player.media_stop
target:
entity_id: media_player.ma_blue_room_clock
- action: media_player.volume_set
data:
volume_level: 0.30
target:
entity_id: media_player.ma_blue_room_clock
#- service: script.goodnight_kids_youtube_music
- action: media_player.shuffle_set
metadata: {}
data:
shuffle: false
target:
entity_id: media_player.ma_blue_room_clock
- action: media_player.repeat_set
metadata: {}
data:
repeat: "all"
target:
entity_id: media_player.ma_blue_room_clock
- action: music_assistant.play_media
metadata: {}
data:
media_id: library://track/101
media_type: track
enqueue: replace
target:
entity_id: media_player.ma_blue_room_clock
@@ -14,15 +14,15 @@ action:
target:
entity_id: input_select.nursery_mode
- service: input_select.select_option
data:
option: Running Rainbow
target:
entity_id: input_select.nursery_wled
# - service: input_select.select_option
# data:
# option: Running Rainbow
# target:
# entity_id: input_select.nursery_wled
- service: automation.trigger
target:
entity_id: automation.nursery_wled_changed
# - service: automation.trigger
# target:
# entity_id: automation.nursery_wled_changed
#- condition:
- alias: "Do not restart the music if it is already playing"
@@ -38,20 +38,20 @@ action:
data:
volume_level: 0.4
target:
device_id: be28c87a729c28b9b27b540589895e20
entity_id: media_player.ma_nursery_hub
#- service: script.goodnight_kids_youtube_music
- action: media_player.shuffle_set
data:
shuffle: false
target:
device_id: be28c87a729c28b9b27b540589895e20
entity_id: media_player.ma_nursery_hub
- action: media_player.repeat_set
data:
repeat: all
target:
device_id: be28c87a729c28b9b27b540589895e20
entity_id: media_player.ma_nursery_hub
- action: music_assistant.play_media
data:
@@ -59,4 +59,4 @@ action:
media_type: playlist
enqueue: replace
target:
device_id: be28c87a729c28b9b27b540589895e20
entity_id: media_player.ma_nursery_hub
@@ -5,12 +5,7 @@ trigger:
- platform: state
entity_id: binary_sensor.black_bed_occupied
to: "on"
for: "00:00:30"
- platform: state
entity_id: binary_sensor.white_bed_occupied
to: "on"
for: "00:00:30"
for: "00:00:10"
condition:
- condition: or
conditions:
@@ -23,3 +23,9 @@ observations:
prob_given_true: .99
prob_given_false: 0.01
to_state: 'on'
- platform: state
entity_id: binary_sensor.white_bed_occupied
to_state: "on"
prob_given_true: .67
prob_given_false: 0.0
@@ -23,12 +23,6 @@ observations:
prob_given_true: .67
prob_given_false: 0.0
- platform: state
entity_id: binary_sensor.white_bed_occupied
to_state: "on"
prob_given_true: .67
prob_given_false: 0.0
- entity_id: input_boolean.home_occupied
platform: state
prob_given_true: .92
+4 -4
View File
@@ -695,14 +695,14 @@ sensors:
emmetts_bed:
unique_id: templatebinarysensor.emmetts_bed
friendly_name: Emmett's Bed
value_template: "{{ states('binary_sensor.black_bed_occupied') }}"
icon_template: "{{ iif(is_state('binary_sensor.black_bed_occupied','on'),'mdi:bed','mdi:bed-empty','mdi:bed-outline')}}"
value_template: "{{ states('binary_sensor.white_bed_occupied') }}"
icon_template: "{{ iif(is_state('binary_sensor.white_bed_occupied','on'),'mdi:bed','mdi:bed-empty','mdi:bed-outline')}}"
bridgets_bed:
unique_id: templatebinarysensor.bridgets_bed
friendly_name: Bridget's Bed
value_template: "{{ states('binary_sensor.bed_presence_2d14a4_bed_occupied_either') }}"
icon_template: "{{ iif(is_state('binary_sensor.bed_presence_2d14a4_bed_occupied_either','on'),'mdi:bed','mdi:bed-empty','mdi:bed-outline')}}"
value_template: "{{ states('binary_sensor.black_bed_occupied') }}"
icon_template: "{{ iif(is_state('binary_sensor.black_bed_occupied','on'),'mdi:bed','mdi:bed-empty','mdi:bed-outline')}}"
check_mail:
unique_id: templatebinarysensor.check_mail
+7
View File
@@ -0,0 +1,7 @@
device_tracker:
- platform: synology_srm
host: 192.168.1.1
username: !secret router_username
password: !secret router_password
new_device_defaults:
track_new_devices: true
+1 -1
View File
@@ -191,7 +191,7 @@ phone_clint:
person_kristy:
name: Kristy
entities:
# - device_tracker.kristy_s_phone
- device_tracker.nmap_tracker_d6_28_7a_58_b8_da
person_marshall:
name: Marshall
+24
View File
@@ -76,6 +76,13 @@ card:
style:
left: 8%
top: 95%
- type: state-icon
entity: binary_sensor.white_bed_occupied
style:
left: 32%
top: 95%
- type: state-icon
entity: sensor.furnace_room_person_count
style:
@@ -153,3 +160,20 @@ card:
left: 82%
tap_action:
action: toggle
- type: conditional
conditions:
- entity: binary_sensor.white_bed_occupied
state: "on"
elements:
- type: state-icon
entity: binary_sensor.white_bed_occupied
style:
top: 45%
left: 40%
- type: state-icon
entity: media_player.blue_room_clock
style:
left: 38%
top: 22%
+1 -22
View File
@@ -78,12 +78,6 @@ card:
style:
left: 40%
top: 95%
- type: state-icon
entity: binary_sensor.white_bed_occupied
style:
left: 60%
top: 95%
transform: scaleX(-1) translate(50%, -50%)
- type: state-icon
entity: input_boolean.nursery_occupied
tap_action:
@@ -108,16 +102,7 @@ card:
top: 30%
left: 18%
- type: conditional
conditions:
- entity: binary_sensor.white_bed_occupied
state: "on"
elements:
- type: state-icon
entity: binary_sensor.white_bed_occupied
style:
top: 65%
left: 80%
- type: conditional
conditions:
- entity: binary_sensor.nursery_person_occupancy
@@ -129,12 +114,6 @@ card:
top: 50%
left: 50%
- type: state-icon
entity: media_player.nursery_hub
style:
left: 45%
top: 16%
- type: state-icon
entity: light.nursery_hue
style:
+13 -1
View File
@@ -12,8 +12,20 @@ cameras:
motion: false
entities:
- group.nursery_motion
- binary_sensor.emmetts_bed
- binary_sensor.bridgets_bed
- camera_entity: camera.frigate_cam01
title: Blue Room
live_provider: go2rtc
go2rtc:
modes:
- webrtc
stream: rtsp_cam01_sub
triggers:
occupancy: false
motion: false
entities:
- group.blue_room_motion
- binary_sensor.emmetts_bed
- camera_entity: camera.frigate_cam13
title: Front Room
live_provider: go2rtc
-3
View File
@@ -17,9 +17,6 @@
- url: /hacsfiles/mini-graph-card/mini-graph-card-bundle.js
type: module
- url: /hacsfiles/DailyGrapher/dailygrapher-card.js
type: module
- url: /hacsfiles/roku-card/roku-card.js
type: module
+25 -6
View File
@@ -9,7 +9,7 @@ elements:
action: more-info
style:
font-style: italic
left: 25%
left: 14%
top: 88%
- type: custom:mushroom-template-card
primary: Closet
@@ -17,7 +17,7 @@ elements:
tap_action:
action: toggle
style:
left: 75%
left: 86%
top: 88%
- type: state-label
@@ -35,7 +35,7 @@ elements:
text-align: right
#Card title
- type: custom:mushroom-title-card
title: "Blue Room"
title: "Boy's Room"
style:
font-size: 130%
left: -2%
@@ -87,7 +87,7 @@ elements:
show_name: false
show_entity_picture: true
style:
left: 25%
left: 14%
top: 65%
styles:
card:
@@ -102,6 +102,25 @@ elements:
hold_action:
action: more-info
#button #2
- color: auto
entity: binary_sensor.emmetts_bed
show_name: false
style:
left: 38%
top: 65%
styles:
card:
- border-radius: 50px
- width: 50px
- height: 50px
icon:
- width: 30px
- height: 30px
tap_action:
action: more-info
type: "custom:button-card"
#button #3
- type: "custom:button-card"
color: auto
@@ -109,7 +128,7 @@ elements:
show_name: false
show_entity_picture: true
style:
left: 50%
left: 62%
top: 65%
styles:
card:
@@ -129,7 +148,7 @@ elements:
show_name: false
show_entity_picture: true
style:
left: 75%
left: 86%
top: 65%
styles:
card:
+20
View File
@@ -11,6 +11,7 @@ elements:
font-style: italic
left: 12%
top: 88%
border: none
- type: custom:mushroom-template-card
primary: "{{ states('sensor.steam1_game') }}"
@@ -22,6 +23,7 @@ elements:
left: 50%
top: 88%
text-transform: capitalize
border: none
- type: state-label
entity: sensor.computer_area_multisensor_air_temperature
@@ -36,6 +38,8 @@ elements:
top: 35%
font-size: 180%
text-align: right
border: none
#Card title
- type: custom:mushroom-title-card
title: "Computer Area"
@@ -44,12 +48,16 @@ elements:
left: -2%
top: -10%
transform: initial
border: none
#top left icon spot #1
- type: state-icon
entity: binary_sensor.computer_area_occupied
style:
left: 68%
top: 9%
border: none
#top left icon #2 spot
# - type: state-icon
# entity: group.computer_area_motion
@@ -62,6 +70,8 @@ elements:
style:
left: 76%
top: 9%
border: none
#top icon spot #3
- type: state-icon
entity: switch.computer_area_light_cycle
@@ -72,6 +82,8 @@ elements:
action: toggle
hold_action:
action: more-info
border: none
#top icon spot #4
- type: state-icon
entity: input_boolean.computer_area_occupied
@@ -82,6 +94,7 @@ elements:
action: toggle
hold_action:
action: more-info
border: none
#button #1
- type: "custom:button-card"
@@ -92,11 +105,13 @@ elements:
style:
left: 12%
top: 65%
border: none
styles:
card:
- border-radius: 50px
- width: 50px
- height: 50px
- border: none
icon:
- width: 30px
- height: 30px
@@ -113,11 +128,13 @@ elements:
style:
left: 31%
top: 65%
border: none
styles:
card:
#- border-radius: 50px
- width: 50px
- height: 50px
- border: none
icon:
- width: 45px
- height: 45px
@@ -155,6 +172,7 @@ elements:
#- border-radius: 50px
- width: 50px
- height: 50px
- border: none
icon:
- width: 45px
- height: 45px
@@ -173,6 +191,7 @@ elements:
#- border-radius: 50px
- width: 50px
- height: 50px
- border: none
icon:
- width: 45px
- height: 45px
@@ -193,6 +212,7 @@ elements:
#- border-radius: 50px
- width: 50px
- height: 50px
- border: none
icon:
- width: 45px
- height: 45px
+10 -27
View File
@@ -9,7 +9,7 @@ elements:
action: more-info
style:
font-style: italic
left: 12%
left: 14%
top: 88%
- type: custom:mushroom-template-card
@@ -19,7 +19,7 @@ elements:
action: more-info
style:
font-style: italic
left: 31%
left: 38%
top: 88%
- type: custom:mushroom-template-card
@@ -29,7 +29,7 @@ elements:
action: more-info
style:
font-style: italic
left: 69%
left: 62%
top: 88%
- type: state-label
@@ -47,7 +47,7 @@ elements:
text-align: right
#Card title
- type: custom:mushroom-title-card
title: "Nursery"
title: "Girl's Room"
style:
font-size: 130%
left: -2%
@@ -117,7 +117,7 @@ elements:
entity: light.nursery_hue
show_name: false
style:
left: 12%
left: 14%
top: 65%
styles:
card:
@@ -131,24 +131,7 @@ elements:
action: toggle
hold_action:
action: more-info
#button #2
- color: auto
entity: binary_sensor.emmetts_bed
show_name: false
style:
left: 31%
top: 65%
styles:
card:
- border-radius: 50px
- width: 50px
- height: 50px
icon:
- width: 30px
- height: 30px
tap_action:
action: more-info
type: "custom:button-card"
#button #3
- type: "custom:button-card"
color: auto
@@ -156,7 +139,7 @@ elements:
show_name: false
show_entity_picture: true
style:
left: 50%
left: 38%
top: 65%
styles:
card:
@@ -175,9 +158,9 @@ elements:
entity: binary_sensor.bridgets_bed
show_name: false
style:
left: 69%
left: 62%
top: 65%
transform: scaleX(-1) translate(50%, -50%)
#transform: scaleX(-1) translate(50%, -50%)
styles:
card:
- border-radius: 50px
@@ -195,7 +178,7 @@ elements:
show_name: false
show_entity_picture: true
style:
left: 88%
left: 86%
top: 65%
styles:
card:
+23 -10
View File
@@ -10,12 +10,21 @@ cards:
- type: custom:floorplan-card
config:
image: /local/floorplan/fullsized_floorplan.svg
# image:
# location: /local/floorplan/fullsized_floorplan.svg
# cache: false
stylesheet: /local/floorplan/floorplan.css
# log_level: debug
# console_log_level: debug
defaults:
hover_action: hover-info
#tap_action: more-info
hover_info_filter:
- min_mireds
- max_mireds
- icon
- order
- color_mode
tap_action: more-info
rules:
- entities:
- fan.master_bedroom
@@ -72,10 +81,10 @@ cards:
class: bin-today
- state: "tomorrow"
class: bin-tomorrow
# - state: 'future'
# class: bin-future
# - state: 'false'
# class: bin-false
- state: 'future'
class: bin-future
- state: 'false'
class: bin-false
- entities:
- binary_sensor.furnace_room_water_sensor_water_alarm_water_leak_detected
@@ -166,7 +175,7 @@ cards:
- state: "severely_high"
class: "green-to-red-grad-18"
- state: "unavailable"
class: "dew-point-unavailable"
class: "entity-unavailable"
- entities:
- sensor.thermal_comfort_humidex_perception
@@ -192,7 +201,7 @@ cards:
- state: "heat_stroke"
class: "green-to-red-grad-18"
- state: "unavailable"
class: "humidex-unavailable"
class: "entity-unavailable"
- entities:
- sensor.thermal_comfort_summer_simmer_perception
@@ -206,7 +215,7 @@ cards:
- sensor.utility_room_thermal_comfort_summer_simmer_perception
states:
- state: "unavailable"
class: "summer-simmer-unavailable"
class: "entity-unavailable"
- state: "cool"
class: "green-to-red-grad-2"
- state: "slightly_cool"
@@ -281,6 +290,7 @@ cards:
- media_player.master_bedroom_clock
- media_player.front_room_hub
- media_player.nursery_hub
- media_player.blue_room_clock
states:
- state: "playing"
class: "squeezebox-on"
@@ -617,7 +627,7 @@ cards:
- state: "off"
class: "light-off"
- state: "unavailable"
class: "light-unavailable"
class: "entity-unavailable"
action:
domain: homeassistant
service: homeassistant.toggle
@@ -641,7 +651,7 @@ cards:
- state: "off"
class: "light-off"
- state: "unavailable"
class: "light-unavailable"
class: "entity-unavailable"
- state: "unknown"
class: "light-unavailable"
@@ -700,6 +710,7 @@ cards:
- binary_sensor.utility_room_motion_switch_home_security_motion_detection
- binary_sensor.mancave_motion_switch_home_security_motion_detection
- binary_sensor.dining_room_motion_switch_home_security_motion_detection
- binary_sensor.blue_room_multisensor_motion_detection
- binary_sensor.blue_room_motion_switch_home_security_motion_detection
- binary_sensor.furnace_room_motion_switch_home_security_motion_detection
- binary_sensor.front_room_motion
@@ -796,6 +807,8 @@ cards:
class: "camera-unavailable"
- state: "streaming"
class: "camera-streaming"
- state: "recording"
class: "camera-recording"
- name: thermostat_temp
entities:
@@ -17,12 +17,6 @@ sequence:
data:
volume_level: "{{iif(volume>1,1,volume)}}"
- action: google_generative_ai_conversation.generate_content
metadata: {}
data:
prompt: Say something to help me wake up and get ready for work. Use up to three sentences.
response_variable: response
- action: media_player.play_media
data:
media_content_id: media-source://media_source/alarms/Alarm_Clock.mp3
@@ -41,7 +35,7 @@ sequence:
entity_id: tts.google_translate_en_com
data:
media_player_entity_id: media_player.master_bedroom_clock
message: "{{ response.text }}"
message: "It is time to wake up, so get your booty out of bed"
# - action: tts.speak
# target:
-11
View File
@@ -1,11 +0,0 @@
# DO NOT EDIT THIS FILE.
# This file will be reset with updates.
# If you want to customize it, copy the content in another folder and file and change the name.
# https://www.home-assistant.io/integrations/frontend/#defining-themes
Mushroom Shadow:
# Home Assistant override
ha-card-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.16)
ha-card-border-width: 0
modes:
light: {}
dark: {}
@@ -1,20 +0,0 @@
# DO NOT EDIT THIS FILE.
# This file will be reset with updates.
# If you want to customize it, copy the content in another folder and file and change the name.
# https://www.home-assistant.io/integrations/frontend/#defining-themes
Mushroom Square Shadow:
# Home Assistant override
ha-card-box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.16)
ha-card-border-width: 0
ha-card-border-radius: 6px
ha-badge-border-radius: 6px
# Layout
mush-spacing: 8px
# Elements
mush-icon-border-radius: 6px
mush-control-border-radius: 6px
# Chips
mush-chip-border-radius: 6px
modes:
light: {}
dark: {}
-18
View File
@@ -1,18 +0,0 @@
# DO NOT EDIT THIS FILE.
# This file will be reset with updates.
# If you want to customize it, copy the content in another folder and file and change the name.
# https://www.home-assistant.io/integrations/frontend/#defining-themes
Mushroom Square:
# Home Assistant override
ha-card-border-radius: 6px
ha-badge-border-radius: 6px
# Layout
mush-spacing: 8px
# Elements
mush-icon-border-radius: 6px
mush-control-border-radius: 6px
# Chips
mush-chip-border-radius: 6px
modes:
light: {}
dark: {}
-9
View File
@@ -1,9 +0,0 @@
# DO NOT EDIT THIS FILE.
# This file will be reset with updates.
# If you want to customize it, copy the content in another folder and file and change the name.
# https://www.home-assistant.io/integrations/frontend/#defining-themes
Mushroom:
# Nothing here as it's the default HA theme since 2022.11
modes:
light: {}
dark: {}
+73 -25
View File
@@ -1,18 +1,51 @@
/* SVG shapes */
svg,
svg * {
vector-effect: non-scaling-stroke !important;
pointer-events: all !important;
background-color: var(--primary-background-color);
background-color: var(--card-background-color);
max-height: calc( 100vh - 50px);
}
/* Hover over */
/* .svg-shape:hover,
g.svg-hover> :not(text):hover,
g.svg-click> :not(text):hover,
g.svg-long-click> :not(text):hover,
:not(text).svg-hover:hover,a
:not(text).svg-click:hover,
:not(text).svg-long-click:hover {
stroke: #03a9f4 !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
} */
/* Generic/default entity statuses */
.entity-unavailable {
fill: var(--disabled-color) !important;
stroke: var(--white-color) !important;
stroke-width: 1px !important;
}
/* Highlighting an element when hovering over it */
/* .ha-entity:hover {
fill: var(--yellow-color) !important;
stroke: var(--blue-color) !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
} */
/* Hover over */
.entity:hover {
stroke: var(--text-primary-color) !important;
.hover-info {
fill: var(--blue-color) !important;
stroke: var(--green-color) !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
}
@@ -62,7 +95,7 @@ svg * {
}
.room-occupied {
fill: var(--grey-color) !important;
fill: var(--light-grey-color) !important;
fill-opacity: 1 !important;
/* fill: #5d5d6f !important;*/
}
@@ -279,7 +312,6 @@ svg * {
.motion-unavailable {
/* fill: #B9CEF7 !important; */
fill: #6FAECE !important;
/* fill: #8270A2 !important; */
}
@@ -332,12 +364,15 @@ svg * {
fill: var(--light-blue-color) !important;
}
.camera-recording {
fill: var(--red-color) !important;
}
/* Light */
.light-unavailable {
fill: #8270A2 !important;
stroke: #FFFFFF !important;
fill: var(--disabled-color) !important;
stroke: var(--white-color) !important;
stroke-width: 1px !important;
}
@@ -349,38 +384,38 @@ svg * {
.light-on,
.light-on * {
fill: var(--yellow-color) !important;
stroke: var(--yellow-color) !important;
stroke: var(--amber-color) !important;
stroke-width: 7px !important;
stroke-opacity: 0.25 !important;
}
.sun-on {
fill: var(--yellow-color) !important;
stroke: var(--yellow-color) !important;
stroke-width: 2px !important;
stroke: var(--amber-color) !important;
stroke-width: 7px !important;
stroke-opacity: 0.25 !important;
}
.light-strip-on {
fill: var(--yellow-color) !important;
stroke: var(--yellow-color) !important;
stroke-width: 3px !important;
stroke: var(--amber-color) !important;
stroke-width: 7px !important;
stroke-opacity: 0.25 !important;
}
.indicator-on {
/* .indicator-on {
fill: var(--yellow-color) !important;
/* stroke: var(--yellow-color) !important;
stroke-width: 20px !important;
stroke-opacity: 0.25 !important; */
}
stroke: var(--amber-color) !important;
stroke-width: 0.25px !important;
stroke-opacity: .75 !important;
} */
/* Doorbell */
.doorbell-off {
/* fill: #92C0AD !important; */
fill: #4d4d3e !important;
fill: var(--ha-color-fill-neutral-loud-active) !important;
}
.doorbell-on {
@@ -450,7 +485,7 @@ svg * {
}
.suv-home {
fill: #4b4b4b !important;
fill: var(--ha-color-fill-neutral-loud-active) !important;
}
.tracker-away {
@@ -501,8 +536,9 @@ svg * {
.fridge-high {
fill: var(--error-color) !important;
/* stroke-width: 2px !important;
stroke-opacity: 1 !important; */
stroke: var(--primary-text-color) !important;
stroke-width: 0.25px !important;
stroke-opacity: .75 !important;
}
.temp-freeze {
@@ -575,11 +611,11 @@ svg * {
}
.light-low {
fill: var(--ha-color-neutral-95) !important;
fill: var(--ha-color-orange-05) !important;
}
.light-medium-low {
fill: var(--ha-color-orange-30) !important;
fill: var(--ha-color-orange-20) !important;
}
.light-medium {
@@ -601,18 +637,30 @@ svg * {
.bin-today {
fill: var(--error-color) !important;
stroke: var(--black-color) !important;
stroke-width: 0.25px !important;
stroke-opacity: .75 !important;
}
.bin-tomorrow {
fill: var(--warning-color) !important;
stroke: var(--black-color) !important;
stroke-width: 0.25px !important;
stroke-opacity: .75 !important;
}
.bin-future {
fill: var(--ha-color-green-50) !important;
fill: var(--disabled-color) !important;
stroke: var(--black-color) !important;
stroke-width: 0.25px !important;
stroke-opacity: .75 !important;
}
.bin-false {
fill: var(--black-color) !important;
fill: var(--dark-grey-color) !important;
stroke: var(--black-color) !important;
stroke-width: 0.25px !important;
stroke-opacity: .75 !important;
}
.bags-five {
+58 -19
View File
@@ -38,9 +38,9 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.01"
inkscape:cx="46550"
inkscape:cy="29250"
inkscape:zoom="0.028284271"
inkscape:cx="53121.397"
inkscape:cy="37388.271"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="true"
@@ -49,7 +49,7 @@
showborder="true"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="1912"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
showguides="true"
@@ -2608,12 +2608,12 @@
<path
style="display:inline;stroke:none;stroke-width:0.744326"
id="path2-7-3"
d="m 484.721,-17393.887 c -0.518,0 -0.77699,0.26 -0.77699,0.778 v 30.983 c 0,0.519 0.25899,0.778 0.77699,0.778 h 55.177 c 2.074,0 3.629,-1.556 3.629,-3.63 v -25.251 c 0,-2.074 -1.555,-3.629 -3.629,-3.629 z m 19.626,31.017 v -29.529 h 6.118 v 29.529 z m -18.9,-29.529 h 17.396 v 29.529 h -17.396 z m 56.571,2.074 v 25.251 c 0,1.297 -1.037,2.074 -2.074,2.074 H 512 v -29.528 h 27.944 c 1.297,0 2.074,1.037 2.074,2.074 z"
d="m 666.63865,-17381.22 c 0,-0.518 -0.26,-0.777 -0.778,-0.777 h -30.983 c -0.519,0 -0.77799,0.259 -0.77799,0.777 v 55.177 c 0,2.074 1.556,3.629 3.63,3.629 h 25.251 c 2.074,0 3.629,-1.555 3.629,-3.629 z m -31.017,19.626 h 29.529 v 6.118 h -29.529 z m 29.529,-18.9 v 17.396 h -29.529 v -17.396 z m -2.074,56.571 h -25.251 c -1.297,0 -2.074,-1.037 -2.074,-2.074 v -27.944 h 29.528 v 27.944 c 0,1.297 -1.037,2.074 -2.074,2.074 z"
inkscape:connector-curvature="0" />
<path
style="display:inline;stroke:none;stroke-width:0.744326"
id="path4-2-1"
d="m 502.166,-17372.955 v -10.551 c 0,-2.075 -1.556,-3.759 -3.759,-3.759 h -3.734 c -2.074,0 -3.75899,1.555 -3.75899,3.759 v 10.551 c 0,2.075 1.556,3.759 3.75899,3.759 h 3.734 c 2.074,0 3.759,-1.556 3.759,-3.759 z m -7.493,2.333 c -1.29599,0 -2.333,-1.037 -2.333,-2.333 v -10.551 c 0,-1.296 1.03701,-2.333 2.333,-2.333 h 3.734 c 1.296,0 2.333,1.037 2.333,2.333 v 10.551 c 0,1.296 -1.037,2.333 -2.333,2.333 z"
d="m 645.70666,-17363.775 h 10.551 c 2.075,0 3.75899,-1.556 3.75899,-3.759 v -3.734 c 0,-2.074 -1.555,-3.759 -3.75899,-3.759 h -10.551 c -2.075,0 -3.759,1.556 -3.759,3.759 v 3.734 c 0,2.074 1.556,3.759 3.759,3.759 z m -2.333,-7.493 c 0,-1.296 1.037,-2.333 2.333,-2.333 h 10.551 c 1.29599,0 2.33299,1.037 2.33299,2.333 v 3.734 c 0,1.296 -1.037,2.333 -2.33299,2.333 h -10.551 c -1.296,0 -2.333,-1.037 -2.333,-2.333 z"
inkscape:connector-curvature="0" />
<g
id="sensor.hvac_action"
@@ -3103,7 +3103,7 @@
inkscape:label="binary_sensor.black_bed_occupied" />
<path
inkscape:connector-curvature="0"
d="m 493.649,-17377.744 a 3.2614898,3.2614898 0 0 1 3.132,-3.256 3.2614898,3.2614898 0 0 1 3.129,3.256 3.2614898,3.2614898 0 0 1 -3.129,3.257 3.2614898,3.2614898 0 0 1 -3.132,-3.257 m 7.827,2.443 v -4.885 a 3.2614898,3.2614898 0 0 1 3.132,-3.256 H 514 v 2.442 h 12.52501 v 6.528 H 514 v 2.442 h -9.392 a 3.2614898,3.2614898 0 0 1 -3.132,-3.256 z"
d="m 650.49565,-17372.292 a 3.2614898,3.2614898 0 0 1 3.256,3.132 3.2614898,3.2614898 0 0 1 -3.256,3.129 3.2614898,3.2614898 0 0 1 -3.257,-3.129 3.2614898,3.2614898 0 0 1 3.257,-3.132 m -2.443,7.827 h 4.885 a 3.2614898,3.2614898 0 0 1 3.256,3.132 v 9.392 h -2.442 v 12.525 h -6.52799 v -12.525 h -2.442 v -9.392 a 3.2614898,3.2614898 0 0 1 3.256,-3.132 z"
id="binary_sensor.white_bed_occupied"
style="stroke-width:1.63075"
inkscape:label="binary_sensor.white_bed_occupied" />
@@ -3700,7 +3700,7 @@
sodipodi:arc-type="slice" />
<path
style="display:inline;opacity:0.96;fill:#81c9a7;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.203567;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="binary_sensor.blue_room_motion_switch_home_security_motion_detection"
id="binary_sensor.blue_room_motion_switch_home_security_motion_detec"
sodipodi:type="arc"
sodipodi:cx="-11772.622"
sodipodi:cy="-12851.767"
@@ -3712,6 +3712,20 @@
inkscape:label="binary_sensor.blue_room_motion_switch_home_security_motion_detection"
transform="rotate(45)"
sodipodi:arc-type="slice" />
<path
style="display:inline;opacity:0.96;fill:#81c9a7;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.203567;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="binary_sensor.blue_room_multisensor_motion_detection"
sodipodi:type="arc"
sodipodi:cx="17383.588"
sodipodi:cy="622.9165"
sodipodi:rx="9.9992313"
sodipodi:ry="10"
sodipodi:start="1.5707178"
sodipodi:end="3.1397678"
d="m 17383.589,632.9165 a 9.9992313,10 0 0 1 -10,-9.98175 l 9.999,-0.0182 z"
inkscape:label="binary_sensor.blue_room_multisensor_motion_detection"
transform="rotate(-90)"
sodipodi:arc-type="slice" />
<path
style="display:inline;opacity:0.96;fill:#81c9a7;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.203567;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="binary_sensor.furnace_room_motion_switch_home_security_motion_detection"
@@ -3843,7 +3857,7 @@
d="m 720.0222,-17679.003 a 4.5,4.5 0 0 1 4.99225,3.941 4.5,4.5 0 0 1 -3.93422,4.997 4.5,4.5 0 0 1 -5.00204,-3.928 4.5,4.5 0 0 1 3.92178,-5.007"
inkscape:label="light.storage_room"
sodipodi:arc-type="arc" />
&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10; inkscape:label=&quot;light.front_porch_overhead&quot; /&gt;&#10; <rect
&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10;&#10; inkscape:label=&quot;light.front_porch_overhead&quot; /&gt;&#10; <rect
id="rect12-8-8-9-3-20-4-5-3"
width="43.5"
height="4.5"
@@ -4197,6 +4211,31 @@
inkscape:connector-curvature="0"
style="fill-rule:evenodd" />
</g>
<g
id="media_player.blue_room_clock"
transform="matrix(0.03802678,0,0,0.03802678,614.9832,-17372.661)"
inkscape:label="media_player.blue_room_clock">
<path
d="m 235.81,50.402 c -23.977,0 -43.398,19.422 -43.398,43.227 v 372.57 c 0,23.875 19.414,43.398 43.398,43.398 h 228.38 c 23.988,0 43.398,-19.516 43.398,-43.398 V 93.629 c 0,-23.812 -19.422,-43.227 -43.398,-43.227 z m 114.1,34.648 c 22.637,0 41.125,18.359 41.125,40.949 0,22.594 -18.488,41.125 -41.125,41.125 -22.633,0 -40.949,-18.547 -40.949,-41.125 0,-22.578 18.316,-40.949 40.949,-40.949 z m 0,194.77 c 53.941,0 97.824,43.734 97.824,97.477 0,53.801 -43.883,97.477 -97.824,97.477 -53.879,0 -97.648,-43.672 -97.648,-97.477 0,-53.742 43.77,-97.477 97.648,-97.477 z"
id="path70-9-1-0"
inkscape:connector-curvature="0"
style="fill-rule:evenodd" />
<path
d="m 349.91,291.03 c -47.836,0 -86.449,38.617 -86.449,86.273 0,47.727 38.617,86.273 86.449,86.273 47.902,0 86.625,-38.551 86.625,-86.273 0,-47.656 -38.723,-86.273 -86.625,-86.273 z m 0,45.324 c 22.621,0 41.125,18.355 41.125,40.949 0,22.594 -18.488,40.949 -41.125,40.949 -22.633,0 -40.949,-18.371 -40.949,-40.949 0,-22.582 18.328,-40.949 40.949,-40.949 z"
id="path72-2-0-7"
inkscape:connector-curvature="0"
style="fill-rule:evenodd" />
<path
d="m 349.98,347.55 c 16.609,0 29.93,13.238 29.93,29.754 0,16.516 -13.332,29.816 -29.93,29.816 -16.598,0 -29.863,-13.289 -29.863,-29.816 0,-16.527 13.254,-29.754 29.863,-29.754 z"
id="path74-3-5-0"
inkscape:connector-curvature="0"
style="fill-rule:evenodd" />
<path
d="m 349.98,96.262 c 16.598,0 29.93,13.301 29.93,29.816 0,16.515 -13.332,29.816 -29.93,29.816 -16.598,0 -29.863,-13.289 -29.863,-29.816 0,-16.527 13.266,-29.816 29.863,-29.816 z"
id="path76-7-9-4"
inkscape:connector-curvature="0"
style="fill-rule:evenodd" />
</g>
<path
style="display:inline;opacity:0.96;fill:#81c9a7;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.203567;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="binary_sensor.entryway_motion"
@@ -4528,25 +4567,25 @@
transform="scale(0.93757302,1.0665836)"
inkscape:label="sensor.blue_room_thermostat_temperature"
id="sensor.blue_room_thermostat_temperature"
y="-16279.338"
x="667.88568"
y="-16353.23"
x="715.41528"
xml:space="preserve"><tspan
sodipodi:role="line"
id="tspan19985-56"
x="667.88568"
y="-16279.338">---------</tspan></text>
x="715.41528"
y="-16353.23">---------</tspan></text>
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
transform="scale(0.93757302,1.0665836)"
inkscape:label="sensor.blue_room_thermostat_humidity"
id="sensor.blue_room_thermostat_humidity"
y="-16269.083"
x="667.88568"
y="-16342.976"
x="715.41528"
xml:space="preserve"><tspan
sodipodi:role="line"
id="tspan19985-18"
x="667.88568"
y="-16269.083">---------</tspan></text>
x="715.41528"
y="-16342.976">---------</tspan></text>
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.36111px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;display:inline;fill:#d4d4d4;fill-opacity:1;stroke-width:2.63435"
transform="scale(0.93757302,1.0665836)"
@@ -4905,7 +4944,7 @@
inkscape:label="binary_sensor.utility_room_person_occupancy" />
<path
inkscape:connector-curvature="0"
d="m 681.78981,-17418.132 a 1.7840606,1.7840606 0 0 1 1.78106,1.713 1.7840606,1.7840606 0 0 1 -1.78106,1.711 1.7840606,1.7840606 0 0 1 -1.7816,-1.711 1.7840606,1.7840606 0 0 1 1.7816,-1.713 m -1.33634,4.281 h 2.67214 a 1.7840606,1.7840606 0 0 1 1.78105,1.713 v 5.138 h -1.33579 v 6.851 H 680 v -6.851 h -1.33579 v -5.138 a 1.7840606,1.7840606 0 0 1 1.78106,-1.713 z"
d="m 701.3089,-17363.626 a 1.7840606,1.7840606 0 0 1 1.78106,1.713 1.7840606,1.7840606 0 0 1 -1.78106,1.711 1.7840606,1.7840606 0 0 1 -1.7816,-1.711 1.7840606,1.7840606 0 0 1 1.7816,-1.713 m -1.33634,4.281 h 2.67214 a 1.7840606,1.7840606 0 0 1 1.78105,1.713 v 5.138 h -1.33579 v 6.851 h -3.57087 v -6.851 h -1.33579 v -5.138 a 1.7840606,1.7840606 0 0 1 1.78106,-1.713 z"
id="binary_sensor.blue_room_person_occupancy"
style="stroke-width:0.892033"
inkscape:label="binary_sensor.blue_room_person_occupancy" />
@@ -6007,7 +6046,7 @@
<g
id="thermal-comfort-group-template-5-3"
inkscape:label="thermal-comfort-group-blue-room"
transform="matrix(0.52345088,0,0,0.52345088,214.42444,-8087.134)">
transform="matrix(0.52345088,0,0,0.52345088,253.46263,-8127.2771)">
<path
d="m 808.66443,-17670.656 c -1.47187,0 -2.66,1.189 -2.66,2.66 v 7.092 c -1.95953,1.472 -2.35853,4.247 -0.88666,6.207 1.47186,1.959 4.24712,2.358 6.20665,0.886 1.95953,-1.472 2.35853,-4.247 0.88667,-6.206 -0.24827,-0.337 -0.54974,-0.639 -0.88667,-0.887 v -7.092 c 0,-1.471 -1.18813,-2.66 -2.65999,-2.66 z m 0,1.774 c 0.48766,0 0.88666,0.399 0.88666,0.886 v 2.66 h -1.77333 v -2.66 c 0,-0.487 0.399,-0.886 0.88667,-0.886 z m 7.53492,2.66 c 0,0 -2.78988,3.141 -3.07735,5.23 0.0544,0.06 0.10688,0.116 0.15412,0.18 0.60212,0.802 0.96042,1.715 1.08929,2.648 0.51425,0.379 1.14708,0.606 1.83394,0.606 v -1.036 h 1.03386 v -1.034 h -1.03386 v -1.034 h 1.03386 v -1.035 h -1.03386 v -1.034 h 1.03386 v -1.034 h -1.03386 v -1.036 h 1.03386 v -0.138 c -0.56894,-0.76 -1.03386,-1.283 -1.03386,-1.283 z m 1.03386,1.421 v 1.036 h 0.8174 c -0.23792,-0.367 -0.48074,-0.72 -0.71349,-1.036 z m 0,2.07 v 1.034 h 1.0356 v -1.034 z m 1.0356,0 h 0.38272 c -0.12413,-0.228 -0.24824,-0.46 -0.38272,-0.682 z m 0,1.034 v 1.035 h 1.03387 c 0,-0.315 -0.0767,-0.668 -0.20089,-1.035 z m 0,1.035 h -1.0356 v 1.034 h 1.0356 z m 0,1.034 v 1.034 h 0.23725 c 0.2793,-0.3 0.4803,-0.646 0.61478,-1.034 z m 0,1.034 h -1.0356 v 0.854 c 0.38792,-0.135 0.73561,-0.336 1.0356,-0.615 z"
id="sensor.blue_room_thermal_comfort_dew_point_perception"

Before

Width:  |  Height:  |  Size: 518 KiB

After

Width:  |  Height:  |  Size: 521 KiB