mirror of
https://github.com/GeorgeSG/sarah.git
synced 2026-05-09 10:14:41 +00:00
Rearrange UI a bit
This commit is contained in:
@@ -7,6 +7,7 @@ views:
|
|||||||
- !include lovelace/advanced_dashboard/01_new.yaml
|
- !include lovelace/advanced_dashboard/01_new.yaml
|
||||||
- !include lovelace/advanced_dashboard/02_lights.yaml
|
- !include lovelace/advanced_dashboard/02_lights.yaml
|
||||||
- !include lovelace/advanced_dashboard/03_climate.yaml
|
- !include lovelace/advanced_dashboard/03_climate.yaml
|
||||||
|
- !include lovelace/advanced_dashboard/04_sensors.yaml
|
||||||
- !include lovelace/advanced_dashboard/07_media.yaml
|
- !include lovelace/advanced_dashboard/07_media.yaml
|
||||||
- !include lovelace/advanced_dashboard/08_automations.yaml
|
- !include lovelace/advanced_dashboard/08_automations.yaml
|
||||||
- !include lovelace/advanced_dashboard/09_network.yaml
|
- !include lovelace/advanced_dashboard/09_network.yaml
|
||||||
|
|||||||
@@ -62,12 +62,3 @@ cards:
|
|||||||
- red: 100
|
- red: 100
|
||||||
- entity: sensor.quarantine_times_left
|
- entity: sensor.quarantine_times_left
|
||||||
name: Times left
|
name: Times left
|
||||||
- type: "custom:travel-time-card"
|
|
||||||
title: Travel time
|
|
||||||
columns:
|
|
||||||
- name
|
|
||||||
- duration
|
|
||||||
- distance
|
|
||||||
entities:
|
|
||||||
- sensor.home_to_work
|
|
||||||
- sensor.work_to_home
|
|
||||||
|
|||||||
@@ -0,0 +1,77 @@
|
|||||||
|
title: Sensors
|
||||||
|
path: sensors
|
||||||
|
icon: mdi:motion-sensor
|
||||||
|
panel: true
|
||||||
|
cards:
|
||||||
|
- type: custom:mod-card
|
||||||
|
style:
|
||||||
|
layout-card:
|
||||||
|
$:
|
||||||
|
horizontal-layout:
|
||||||
|
$:
|
||||||
|
.: |
|
||||||
|
#columns {
|
||||||
|
margin: 0 20px;
|
||||||
|
grid-gap: 20px;
|
||||||
|
}
|
||||||
|
card:
|
||||||
|
type: custom:layout-card
|
||||||
|
layout_type: custom:horizontal-layout
|
||||||
|
layout:
|
||||||
|
max_cols: 3
|
||||||
|
cards:
|
||||||
|
- type: vertical-stack
|
||||||
|
title: Sensors
|
||||||
|
cards:
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.multisensor_motion
|
||||||
|
name: Living room
|
||||||
|
- type: custom:button-card
|
||||||
|
template: [default, with_state_indicator]
|
||||||
|
entity: binary_sensor.kitchen_motion_occupancy
|
||||||
|
name: Kitchen
|
||||||
|
variables:
|
||||||
|
state_indicator_id: automation.lighting_kitchen_motion_on
|
||||||
|
- type: custom:button-card
|
||||||
|
template: [default, with_state_indicator]
|
||||||
|
entity: group.hallway_motion
|
||||||
|
name: Hallway
|
||||||
|
variables:
|
||||||
|
state_indicator_id: automation.lighting_hallway_motion_on
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.living_room_right_window
|
||||||
|
name: Living room
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.bedroom_left_window
|
||||||
|
name: Bedroom left
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.bedroom_right_window
|
||||||
|
name: Bedroom right
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.kitchen_window
|
||||||
|
name: Kitchen
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.georgi_home
|
||||||
|
tap_action:
|
||||||
|
action: call-service
|
||||||
|
service: input_boolean.toggle
|
||||||
|
service_data:
|
||||||
|
entity_id: input_boolean.georgi_home
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.front_door
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.bedroom_door
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
bedroom_climate_card:
|
||||||
|
card:
|
||||||
|
type: vertical-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:decluttering-card
|
||||||
|
template: climate_card
|
||||||
|
variables:
|
||||||
|
- title: "Bedroom Climate"
|
||||||
|
- main_entity: sensor.bedroom_weather_temperature
|
||||||
|
- left_entity: sensor.bedroom_weather_humidity
|
||||||
|
- right_entity: sensor.bedroom_weather_pressure
|
||||||
|
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: "custom:mini-graph-card"
|
||||||
|
name: Air Quality
|
||||||
|
entities:
|
||||||
|
- sensor.purifier_air_quality
|
||||||
|
font_size: 75
|
||||||
|
line_color: "var(--color-blue)"
|
||||||
|
line_width: 6
|
||||||
|
hours_to_show: 72
|
||||||
|
- type: "custom:mini-graph-card"
|
||||||
|
name: Allergens
|
||||||
|
entities:
|
||||||
|
- sensor.purifier_allergens
|
||||||
|
font_size: 75
|
||||||
|
line_color: "var(--color-blue)"
|
||||||
|
line_width: 6
|
||||||
|
hours_to_show: 72
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
bedroom_temperature_card:
|
|
||||||
card:
|
|
||||||
type: vertical-stack
|
|
||||||
cards:
|
|
||||||
- type: "custom:mini-graph-card"
|
|
||||||
entities:
|
|
||||||
- sensor.bedroom_weather_temperature
|
|
||||||
cache: false
|
|
||||||
group_by: hour
|
|
||||||
hours_to_show: 72
|
|
||||||
line_width: 2
|
|
||||||
show:
|
|
||||||
average: true
|
|
||||||
extrema: true
|
|
||||||
fill: true
|
|
||||||
color_thresholds:
|
|
||||||
- value: 19
|
|
||||||
color: "var(--color-blue)"
|
|
||||||
- value: 20.5
|
|
||||||
color: "var(--color-green)"
|
|
||||||
- value: 22
|
|
||||||
color: "var(--color-red)"
|
|
||||||
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: "custom:mini-graph-card"
|
|
||||||
name: Humidity
|
|
||||||
font_size: 75
|
|
||||||
icon: "mdi:water"
|
|
||||||
line_color: "var(--color-blue)"
|
|
||||||
line_width: 8
|
|
||||||
entities:
|
|
||||||
- sensor.bedroom_weather_humidity
|
|
||||||
|
|
||||||
- type: "custom:mini-graph-card"
|
|
||||||
entities:
|
|
||||||
- sensor.bedroom_weather_pressure
|
|
||||||
font_size: 75
|
|
||||||
line_color: "var(--color-blue)"
|
|
||||||
line_width: 8
|
|
||||||
|
|
||||||
- type: "custom:mini-graph-card"
|
|
||||||
name: Air Quality
|
|
||||||
font_size: 75
|
|
||||||
icon: "mdi:weather-windy"
|
|
||||||
line_color: "var(--color-blue)"
|
|
||||||
line_width: 8
|
|
||||||
entities:
|
|
||||||
- sensor.purifier_air_quality
|
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
living_room_climate_card:
|
||||||
|
card:
|
||||||
|
type: custom:decluttering-card
|
||||||
|
template: climate_card
|
||||||
|
variables:
|
||||||
|
- title: "Climate"
|
||||||
|
- main_entity: sensor.multisensor_6_temperature
|
||||||
|
- left_entity: sensor.multisensor_6_relative_humidity
|
||||||
|
- left_name: Humidity (6)
|
||||||
|
- right_entity: sensor.multisensor_6_luminance
|
||||||
|
- right_name: Luminance (6)
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
temperature_card:
|
||||||
|
default:
|
||||||
|
- main_name: "Temperature"
|
||||||
|
card:
|
||||||
|
type: vertical-stack
|
||||||
|
cards:
|
||||||
|
- type: "custom:mini-graph-card"
|
||||||
|
name: "[[main_name]]"
|
||||||
|
entities:
|
||||||
|
- "[[main_entity]]"
|
||||||
|
cache: false
|
||||||
|
group_by: hour
|
||||||
|
hours_to_show: 72
|
||||||
|
line_width: 2
|
||||||
|
show:
|
||||||
|
average: true
|
||||||
|
extrema: true
|
||||||
|
fill: true
|
||||||
@@ -13,7 +13,7 @@
|
|||||||
type: custom:layout-card
|
type: custom:layout-card
|
||||||
layout_type: custom:horizontal-layout
|
layout_type: custom:horizontal-layout
|
||||||
layout:
|
layout:
|
||||||
max_cols: 2
|
max_cols: 3
|
||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
title: Bedroom
|
title: Bedroom
|
||||||
@@ -84,38 +84,6 @@
|
|||||||
scene_color_1: rgb(255, 92, 38)
|
scene_color_1: rgb(255, 92, 38)
|
||||||
scene_color_2: rgb(255, 0, 190)
|
scene_color_2: rgb(255, 0, 190)
|
||||||
|
|
||||||
- type: vertical-stack
|
|
||||||
title: Controls
|
|
||||||
cards:
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [default, with_state_indicator]
|
|
||||||
entity: input_boolean.alarm_enabled
|
|
||||||
state_display: >-
|
|
||||||
[[[
|
|
||||||
const time = states['input_datetime.alarm_time'].state;
|
|
||||||
return time.split(':').slice(0, -1).join(':');
|
|
||||||
]]]
|
|
||||||
show_state: true
|
|
||||||
show_name: false
|
|
||||||
styles:
|
|
||||||
icon:
|
|
||||||
- transform: translateY(-8px) # adjusted for state indicator size
|
|
||||||
state:
|
|
||||||
- transform: translateY(-13px) # adjusted for state indicator size
|
|
||||||
variables:
|
|
||||||
state_indicator_id: automation.alarm_set_time
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: binary_sensor.house_mode
|
|
||||||
name: House
|
|
||||||
tap_action:
|
|
||||||
action: call-service
|
|
||||||
service: input_select.select_next
|
|
||||||
service_data:
|
|
||||||
entity_id: input_select.house_mode
|
|
||||||
|
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
title: Climate
|
title: Climate
|
||||||
cards:
|
cards:
|
||||||
@@ -148,23 +116,6 @@
|
|||||||
- type: custom:decluttering-card
|
- type: custom:decluttering-card
|
||||||
template: purifier_target_humidity
|
template: purifier_target_humidity
|
||||||
|
|
||||||
- type: custom:decluttering-card
|
|
||||||
template: media_with_controls
|
|
||||||
variables:
|
|
||||||
- player: media_player.master_bedroom
|
|
||||||
- player_name: Bedroom
|
|
||||||
|
|
||||||
- type: vertical-stack
|
|
||||||
title: Camera
|
|
||||||
cards:
|
|
||||||
- type: picture-glance
|
|
||||||
camera_image: camera.bedroom_hd
|
|
||||||
entities:
|
|
||||||
- switch.tapo_bedroom
|
|
||||||
|
|
||||||
- type: vertical-stack
|
|
||||||
title: Sensors
|
|
||||||
cards:
|
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
@@ -180,6 +131,8 @@
|
|||||||
entity: binary_sensor.bedroom_right_window
|
entity: binary_sensor.bedroom_right_window
|
||||||
name: Right window
|
name: Right window
|
||||||
|
|
||||||
|
- type: vertical-stack
|
||||||
|
cards:
|
||||||
- type: custom:decluttering-card
|
- type: custom:decluttering-card
|
||||||
template: climate_card
|
template: climate_card
|
||||||
variables:
|
variables:
|
||||||
@@ -188,21 +141,17 @@
|
|||||||
- left_entity: sensor.bedroom_weather_humidity
|
- left_entity: sensor.bedroom_weather_humidity
|
||||||
- right_entity: sensor.bedroom_weather_pressure
|
- right_entity: sensor.bedroom_weather_pressure
|
||||||
|
|
||||||
- type: horizontal-stack
|
- type: vertical-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:decluttering-card
|
||||||
|
template: media_with_controls
|
||||||
|
variables:
|
||||||
|
- player: media_player.master_bedroom
|
||||||
|
- player_name: Bedroom
|
||||||
|
- type: vertical-stack
|
||||||
|
title: Camera
|
||||||
cards:
|
cards:
|
||||||
- type: "custom:mini-graph-card"
|
- type: picture-glance
|
||||||
name: Air Quality
|
camera_image: camera.bedroom_hd
|
||||||
entities:
|
entities:
|
||||||
- sensor.purifier_air_quality
|
- switch.tapo_bedroom
|
||||||
font_size: 75
|
|
||||||
line_color: "var(--color-blue)"
|
|
||||||
line_width: 6
|
|
||||||
hours_to_show: 72
|
|
||||||
- type: "custom:mini-graph-card"
|
|
||||||
name: Allergens
|
|
||||||
entities:
|
|
||||||
- sensor.purifier_allergens
|
|
||||||
font_size: 75
|
|
||||||
line_color: "var(--color-blue)"
|
|
||||||
line_width: 6
|
|
||||||
hours_to_show: 72
|
|
||||||
|
|||||||
@@ -49,38 +49,20 @@
|
|||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
title: Devices
|
title: Devices
|
||||||
cards:
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: brita_water
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: radiator_button
|
template: radiator_button
|
||||||
entity: climate.kitchen_radiator_mode
|
entity: climate.kitchen_radiator_mode
|
||||||
- type: custom:button-card
|
|
||||||
template: brita_water
|
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: default
|
template: default
|
||||||
entity: vacuum.vacuum
|
entity: vacuum.vacuum
|
||||||
name: Vacuum
|
name: Vacuum
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: default
|
template: default
|
||||||
entity: media_player.living_room_tv
|
entity: binary_sensor.kitchen_window
|
||||||
name: TV
|
name: Window
|
||||||
icon: mdi:television
|
|
||||||
tap_action:
|
|
||||||
action: toggle
|
|
||||||
state:
|
|
||||||
- value: 'playing'
|
|
||||||
styles: &on_styles
|
|
||||||
card:
|
|
||||||
- background-color: var(--primary-color)
|
|
||||||
- color: black
|
|
||||||
icon:
|
|
||||||
- color: black
|
|
||||||
- value: 'standby'
|
|
||||||
styles: *on_styles
|
|
||||||
- value: 'on'
|
|
||||||
styles: *on_styles
|
|
||||||
- value: 'home'
|
|
||||||
styles: *on_styles
|
|
||||||
- value: 'idle'
|
|
||||||
styles: *on_styles
|
|
||||||
- type: custom:decluttering-card
|
- type: custom:decluttering-card
|
||||||
template: media_with_controls
|
template: media_with_controls
|
||||||
variables:
|
variables:
|
||||||
@@ -88,35 +70,7 @@
|
|||||||
- player_name: Kitchen
|
- player_name: Kitchen
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
title: Sensors
|
|
||||||
cards:
|
cards:
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: binary_sensor.kitchen_window
|
|
||||||
name: Window
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [default, with_state_indicator]
|
|
||||||
entity: binary_sensor.kitchen_motion_occupancy
|
|
||||||
name: Motion
|
|
||||||
variables:
|
|
||||||
state_indicator_id: automation.lighting_kitchen_motion_on
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [regular, progress]
|
|
||||||
entity: sensor.kitchen_motion_illuminance
|
|
||||||
name: Lux
|
|
||||||
variables:
|
|
||||||
min_value: 0
|
|
||||||
max_value: 1000
|
|
||||||
normal_value: 1000
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [default, with_state_indicator]
|
|
||||||
entity: group.hallway_motion
|
|
||||||
name: Hallway
|
|
||||||
variables:
|
|
||||||
state_indicator_id: automation.lighting_hallway_motion_on
|
|
||||||
|
|
||||||
- type: custom:decluttering-card
|
- type: custom:decluttering-card
|
||||||
template: climate_card
|
template: climate_card
|
||||||
variables:
|
variables:
|
||||||
|
|||||||
@@ -79,6 +79,10 @@
|
|||||||
entity: climate.living_room_radiator_mode
|
entity: climate.living_room_radiator_mode
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: ac_button
|
template: ac_button
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.living_room_right_window
|
||||||
|
name: Window
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
@@ -109,11 +113,7 @@
|
|||||||
entity: switch.titanium
|
entity: switch.titanium
|
||||||
variables:
|
variables:
|
||||||
state_indicator_id: automation.titanium_turn_off_when_idle
|
state_indicator_id: automation.titanium_turn_off_when_idle
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: binary_sensor.pi_hole_enabled
|
|
||||||
name: Pi-Hole
|
|
||||||
icon: mdi:pi-hole
|
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: [regular, progress]
|
template: [regular, progress]
|
||||||
entity: sensor.desk_outlet_power
|
entity: sensor.desk_outlet_power
|
||||||
@@ -124,41 +124,8 @@
|
|||||||
normal_value: 100
|
normal_value: 100
|
||||||
high_value: 300
|
high_value: 300
|
||||||
|
|
||||||
- type: vertical-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:decluttering-card
|
|
||||||
template: media_with_controls
|
|
||||||
variables:
|
|
||||||
- player: media_player.living_room
|
|
||||||
- player_name: Living room
|
|
||||||
- type: vertical-stack
|
|
||||||
title: Camera
|
|
||||||
cards:
|
|
||||||
- type: picture-glance
|
|
||||||
camera_image: camera.mercury_amcrest_1
|
|
||||||
entities: []
|
|
||||||
|
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
title: Sensors
|
|
||||||
cards:
|
cards:
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: binary_sensor.living_room_right_window
|
|
||||||
name: Window
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: binary_sensor.multisensor_motion
|
|
||||||
name: Door
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [default, with_state_indicator]
|
|
||||||
entity: group.hallway_motion
|
|
||||||
name: Hallway
|
|
||||||
variables:
|
|
||||||
state_indicator_id: automation.lighting_hallway_motion_on
|
|
||||||
|
|
||||||
- type: custom:decluttering-card
|
- type: custom:decluttering-card
|
||||||
template: climate_card
|
template: climate_card
|
||||||
variables:
|
variables:
|
||||||
@@ -169,7 +136,17 @@
|
|||||||
- right_entity: sensor.multisensor_6_luminance
|
- right_entity: sensor.multisensor_6_luminance
|
||||||
- right_name: Luminance (6)
|
- right_name: Luminance (6)
|
||||||
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [regular, progress]
|
- type: vertical-stack
|
||||||
entity: sensor.living_room_radiator_temperature
|
cards:
|
||||||
name: Radiator temperature
|
- type: custom:decluttering-card
|
||||||
|
template: media_with_controls
|
||||||
|
variables:
|
||||||
|
- player: media_player.living_room
|
||||||
|
- player_name: Living room
|
||||||
|
- type: vertical-stack
|
||||||
|
title: Camera
|
||||||
|
cards:
|
||||||
|
- type: picture-glance
|
||||||
|
camera_image: camera.mercury_amcrest_1
|
||||||
|
entities: []
|
||||||
|
|||||||
@@ -85,169 +85,126 @@
|
|||||||
template: default
|
template: default
|
||||||
entity: light.hallway_entrance
|
entity: light.hallway_entrance
|
||||||
name: Entrance
|
name: Entrance
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
title: Devices
|
title: Climate
|
||||||
cards:
|
cards:
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: [default, cover]
|
template: [regular, progress]
|
||||||
entity: cover.living_room
|
entity: sensor.average_temperature
|
||||||
name: LR Cover
|
icon: mdi:thermometer
|
||||||
tap_action:
|
state_display: "[[[ return Math.round(entity.state) + ' °C' ]]]"
|
||||||
action: call-service
|
|
||||||
service: script.toggle_living_room_cover
|
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: regular
|
template: [regular, progress]
|
||||||
entity: media_player.living_room_tv
|
entity: sensor.average_humidity
|
||||||
name: TV
|
icon: mdi:water-percent
|
||||||
icon: mdi:television
|
state_display: "[[[ return Math.round(entity.state) + ' %' ]]]"
|
||||||
tap_action:
|
|
||||||
action: toggle
|
|
||||||
state:
|
|
||||||
- value: 'playing'
|
|
||||||
styles: &on_styles
|
|
||||||
card:
|
|
||||||
- background-color: var(--primary-color)
|
|
||||||
- color: black
|
|
||||||
icon:
|
|
||||||
- color: black
|
|
||||||
- value: 'standby'
|
|
||||||
styles: *on_styles
|
|
||||||
- value: 'on'
|
|
||||||
styles: *on_styles
|
|
||||||
- value: 'home'
|
|
||||||
styles: *on_styles
|
|
||||||
- value: 'idle'
|
|
||||||
styles: *on_styles
|
|
||||||
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [default, with_state_indicator]
|
|
||||||
entity: switch.titanium
|
|
||||||
variables:
|
variables:
|
||||||
state_indicator_id: automation.titanium_turn_off_when_idle
|
min_value: 25
|
||||||
|
max_value: 90
|
||||||
- type: custom:button-card
|
normal_value: 40
|
||||||
template: default
|
high_value: 65
|
||||||
entity: binary_sensor.pi_hole_enabled
|
low_color: "var(--color-red)"
|
||||||
name: Pi-Hole
|
|
||||||
icon: mdi:pi-hole
|
|
||||||
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: ac_button
|
|
||||||
- type: custom:button-card
|
|
||||||
template: radiator_button
|
|
||||||
entity: climate.living_room_radiator_mode
|
|
||||||
name: "Living room"
|
|
||||||
- type: custom:button-card
|
|
||||||
template: radiator_button
|
|
||||||
entity: climate.bedroom_radiator_mode
|
|
||||||
name: "Bedroom"
|
|
||||||
- type: custom:button-card
|
|
||||||
template: radiator_button
|
|
||||||
entity: climate.kitchen_radiator_mode
|
|
||||||
name: "Kitchen"
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: camera.mercury_amcrest_1
|
|
||||||
name: Living Room
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: switch.tapo_bedroom
|
|
||||||
name: Bedroom
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [default, with_state_indicator]
|
|
||||||
entity: fan.philips_airpurifier
|
|
||||||
variables:
|
|
||||||
state_indicator_id: binary_sensor.purifier_filter_needs_change
|
|
||||||
state_indicator_size: 5px
|
|
||||||
state_indicator_off_size: 0px
|
|
||||||
state_indicator_on_color: var(--color-red)
|
|
||||||
state_on_indicator_on_color: var(--color-red)
|
|
||||||
- type: custom:button-card
|
|
||||||
template: default
|
|
||||||
entity: vacuum.vacuum
|
|
||||||
name: Vacuum
|
|
||||||
- type: custom:button-card
|
|
||||||
template: brita_water
|
|
||||||
|
|
||||||
# Column 2
|
# Column 2
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: horizontal-stack
|
|
||||||
title: Manual controls
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [small, with_state_indicator, with_state_background]
|
|
||||||
entity: input_boolean.alarm_enabled
|
|
||||||
state_display: >-
|
|
||||||
[[[
|
|
||||||
const time = states['input_datetime.alarm_time'].state;
|
|
||||||
return time.split(':').slice(0, -1).join(':');
|
|
||||||
]]]
|
|
||||||
show_state: true
|
|
||||||
show_name: false
|
|
||||||
styles:
|
|
||||||
icon:
|
|
||||||
- transform: translateY(0) # adjusted for state indicator size
|
|
||||||
state:
|
|
||||||
- transform: translateY(-4px) # adjusted for state indicator size
|
|
||||||
variables:
|
|
||||||
state_indicator_id: automation.alarm_set_time
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [small, with_state_background]
|
|
||||||
entity: input_boolean.speech_notifications
|
|
||||||
name: Speech
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [small, with_state_background]
|
|
||||||
entity: binary_sensor.house_mode
|
|
||||||
name: House
|
|
||||||
tap_action:
|
|
||||||
action: call-service
|
|
||||||
service: input_select.select_next
|
|
||||||
service_data:
|
|
||||||
entity_id: input_select.house_mode
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [small, with_state_background]
|
|
||||||
name: Guests
|
|
||||||
entity: input_boolean.guest_mode
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [small, with_state_background]
|
|
||||||
entity: input_boolean.simulation_mode
|
|
||||||
name: Simulation
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [small, with_state_background]
|
|
||||||
entity: switch.mercury_home_mode
|
|
||||||
name: Mercury
|
|
||||||
|
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
cards:
|
cards:
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
title: Sensors
|
title: Devices
|
||||||
cards:
|
cards:
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: [default, cover]
|
||||||
|
entity: cover.living_room
|
||||||
|
name: LR Cover
|
||||||
|
tap_action:
|
||||||
|
action: call-service
|
||||||
|
service: script.toggle_living_room_cover
|
||||||
|
- type: custom:button-card
|
||||||
|
template: regular
|
||||||
|
entity: media_player.living_room_tv
|
||||||
|
name: TV
|
||||||
|
icon: mdi:television
|
||||||
|
tap_action:
|
||||||
|
action: toggle
|
||||||
|
state:
|
||||||
|
- value: 'playing'
|
||||||
|
styles: &on_styles
|
||||||
|
card:
|
||||||
|
- background-color: var(--primary-color)
|
||||||
|
- color: black
|
||||||
|
icon:
|
||||||
|
- color: black
|
||||||
|
- value: 'standby'
|
||||||
|
styles: *on_styles
|
||||||
|
- value: 'on'
|
||||||
|
styles: *on_styles
|
||||||
|
- value: 'home'
|
||||||
|
styles: *on_styles
|
||||||
|
- value: 'idle'
|
||||||
|
styles: *on_styles
|
||||||
|
|
||||||
|
- type: custom:button-card
|
||||||
|
template: [default, with_state_indicator]
|
||||||
|
entity: switch.titanium
|
||||||
|
variables:
|
||||||
|
state_indicator_id: automation.titanium_turn_off_when_idle
|
||||||
|
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: default
|
template: default
|
||||||
entity: binary_sensor.multisensor_motion
|
entity: binary_sensor.pi_hole_enabled
|
||||||
name: Living room
|
name: Pi-Hole
|
||||||
|
icon: mdi:pi-hole
|
||||||
|
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: ac_button
|
||||||
|
- type: custom:button-card
|
||||||
|
template: radiator_button
|
||||||
|
entity: climate.living_room_radiator_mode
|
||||||
|
name: "Living room"
|
||||||
|
- type: custom:button-card
|
||||||
|
template: radiator_button
|
||||||
|
entity: climate.bedroom_radiator_mode
|
||||||
|
name: "Bedroom"
|
||||||
|
- type: custom:button-card
|
||||||
|
template: radiator_button
|
||||||
|
entity: climate.kitchen_radiator_mode
|
||||||
|
name: "Kitchen"
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: camera.mercury_amcrest_1
|
||||||
|
name: Living Room
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: switch.tapo_bedroom
|
||||||
|
name: Bedroom
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: [default, with_state_indicator]
|
template: [default, with_state_indicator]
|
||||||
entity: binary_sensor.kitchen_motion_occupancy
|
entity: fan.philips_airpurifier
|
||||||
name: Kitchen
|
|
||||||
variables:
|
variables:
|
||||||
state_indicator_id: automation.lighting_kitchen_motion_on
|
state_indicator_id: binary_sensor.purifier_filter_needs_change
|
||||||
|
state_indicator_size: 5px
|
||||||
|
state_indicator_off_size: 0px
|
||||||
|
state_indicator_on_color: var(--color-red)
|
||||||
|
state_on_indicator_on_color: var(--color-red)
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: [default, with_state_indicator]
|
template: default
|
||||||
entity: group.hallway_motion
|
entity: vacuum.vacuum
|
||||||
name: Hallway
|
name: Vacuum
|
||||||
variables:
|
- type: custom:button-card
|
||||||
state_indicator_id: automation.lighting_hallway_motion_on
|
template: brita_water
|
||||||
|
|
||||||
|
- type: vertical-stack
|
||||||
|
title: Sensors
|
||||||
|
cards:
|
||||||
- type: horizontal-stack
|
- type: horizontal-stack
|
||||||
cards:
|
cards:
|
||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
@@ -282,27 +239,7 @@
|
|||||||
- type: custom:button-card
|
- type: custom:button-card
|
||||||
template: default
|
template: default
|
||||||
entity: binary_sensor.bedroom_door
|
entity: binary_sensor.bedroom_door
|
||||||
- type: vertical-stack
|
|
||||||
title: Climate
|
|
||||||
cards:
|
|
||||||
- type: horizontal-stack
|
|
||||||
cards:
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [regular, progress]
|
|
||||||
entity: sensor.average_temperature
|
|
||||||
icon: mdi:thermometer
|
|
||||||
state_display: "[[[ return Math.round(entity.state) + ' °C' ]]]"
|
|
||||||
- type: custom:button-card
|
|
||||||
template: [regular, progress]
|
|
||||||
entity: sensor.average_humidity
|
|
||||||
icon: mdi:water-percent
|
|
||||||
state_display: "[[[ return Math.round(entity.state) + ' %' ]]]"
|
|
||||||
variables:
|
|
||||||
min_value: 25
|
|
||||||
max_value: 90
|
|
||||||
normal_value: 40
|
|
||||||
high_value: 65
|
|
||||||
low_color: "var(--color-red)"
|
|
||||||
|
|
||||||
# Column 3
|
# Column 3
|
||||||
- type: vertical-stack
|
- type: vertical-stack
|
||||||
|
|||||||
@@ -0,0 +1,87 @@
|
|||||||
|
- type: custom:mod-card
|
||||||
|
style:
|
||||||
|
layout-card:
|
||||||
|
$:
|
||||||
|
horizontal-layout:
|
||||||
|
$:
|
||||||
|
.: |
|
||||||
|
#columns {
|
||||||
|
margin: 0 20px;
|
||||||
|
grid-gap: 20px;
|
||||||
|
}
|
||||||
|
card:
|
||||||
|
type: custom:layout-card
|
||||||
|
layout_type: custom:horizontal-layout
|
||||||
|
layout:
|
||||||
|
max_cols: 2
|
||||||
|
cards:
|
||||||
|
- type: vertical-stack
|
||||||
|
title: Temperature
|
||||||
|
cards:
|
||||||
|
- type: entities
|
||||||
|
show_header_toggle: false
|
||||||
|
entities:
|
||||||
|
- input_boolean.heating_enabled
|
||||||
|
- input_number.radiators_temperature
|
||||||
|
- script.turn_on_all_radiators
|
||||||
|
- type: divider
|
||||||
|
- input_boolean.ac_heating
|
||||||
|
- input_number.toshiba_heat_temp
|
||||||
|
- input_number.toshiba_cool_temp
|
||||||
|
- input_number.toshiba_trigger_temp
|
||||||
|
|
||||||
|
- type: vertical-stack
|
||||||
|
title: Controls
|
||||||
|
cards:
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: [default, with_state_indicator, with_state_background]
|
||||||
|
entity: input_boolean.alarm_enabled
|
||||||
|
state_display: >-
|
||||||
|
[[[
|
||||||
|
const time = states['input_datetime.alarm_time'].state;
|
||||||
|
return time.split(':').slice(0, -1).join(':');
|
||||||
|
]]]
|
||||||
|
show_state: true
|
||||||
|
show_name: false
|
||||||
|
styles:
|
||||||
|
icon:
|
||||||
|
- transform: translateY(0) # adjusted for state indicator size
|
||||||
|
state:
|
||||||
|
- transform: translateY(-8px) # adjusted for state indicator size
|
||||||
|
variables:
|
||||||
|
state_indicator_id: automation.alarm_set_time
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: input_boolean.speech_notifications
|
||||||
|
name: Speech
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.house_mode
|
||||||
|
name: House
|
||||||
|
tap_action:
|
||||||
|
action: call-service
|
||||||
|
service: input_select.select_next
|
||||||
|
service_data:
|
||||||
|
entity_id: input_select.house_mode
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
name: Guests
|
||||||
|
entity: input_boolean.guest_mode
|
||||||
|
|
||||||
|
- type: horizontal-stack
|
||||||
|
cards:
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: input_boolean.simulation_mode
|
||||||
|
name: Simulation
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: switch.mercury_home_mode
|
||||||
|
name: Mercury
|
||||||
|
- type: custom:button-card
|
||||||
|
template: default
|
||||||
|
entity: binary_sensor.pi_hole_enabled
|
||||||
|
name: Pi-Hole
|
||||||
|
icon: mdi:pi-hole
|
||||||
@@ -191,11 +191,18 @@ light.living_room_main:
|
|||||||
name: Toggle
|
name: Toggle
|
||||||
|
|
||||||
sensor.bedroom_weather_temperature:
|
sensor.bedroom_weather_temperature:
|
||||||
title: Bedroom temperature
|
title: Bedroom climate
|
||||||
style: *broad_popup_style
|
style: *broad_popup_style
|
||||||
card:
|
card:
|
||||||
type: custom:decluttering-card
|
type: custom:decluttering-card
|
||||||
template: bedroom_temperature_card
|
template: bedroom_climate_card
|
||||||
|
|
||||||
|
sensor.multisensor_6_temperature:
|
||||||
|
title: Living room climate
|
||||||
|
style: *broad_popup_style
|
||||||
|
card:
|
||||||
|
type: custom:decluttering-card
|
||||||
|
template: living_room_climate_card
|
||||||
|
|
||||||
sensor.bedroom_weather_humidity:
|
sensor.bedroom_weather_humidity:
|
||||||
title: Bedroom humidity
|
title: Bedroom humidity
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ input_number:
|
|||||||
step: 1
|
step: 1
|
||||||
icon: mdi:air-conditioner
|
icon: mdi:air-conditioner
|
||||||
toshiba_trigger_temp:
|
toshiba_trigger_temp:
|
||||||
name: AC trigger temp
|
name: AC cooling trigger temp
|
||||||
unit_of_measurement: "ºC"
|
unit_of_measurement: "ºC"
|
||||||
min: 18
|
min: 18
|
||||||
max: 25
|
max: 25
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
sensor:
|
|
||||||
- platform: waze_travel_time
|
|
||||||
name: Home to work
|
|
||||||
origin: zone.home
|
|
||||||
destination: zone.work
|
|
||||||
region: "EU"
|
|
||||||
|
|
||||||
- platform: waze_travel_time
|
|
||||||
name: Work to home
|
|
||||||
origin: zone.work
|
|
||||||
destination: zone.home
|
|
||||||
region: "EU"
|
|
||||||
@@ -34,6 +34,11 @@ views:
|
|||||||
icon: "mdi:door-closed"
|
icon: "mdi:door-closed"
|
||||||
panel: true
|
panel: true
|
||||||
cards: !include lovelace/home_dashboard/hallway_dashboard.yaml
|
cards: !include lovelace/home_dashboard/hallway_dashboard.yaml
|
||||||
|
- title: Preferences
|
||||||
|
path: preferences
|
||||||
|
icon: "mdi:cogs"
|
||||||
|
panel: true
|
||||||
|
cards: !include lovelace/home_dashboard/preferences_dashboard.yaml
|
||||||
- title: Cameras
|
- title: Cameras
|
||||||
path: cameras
|
path: cameras
|
||||||
icon: "mdi:webcam"
|
icon: "mdi:webcam"
|
||||||
|
|||||||
Reference in New Issue
Block a user