feat(lovelace): refactor home dashboard layout and improve data grouping

- removed "antal hjemme" and standalone sunset card
- added weather forecast card with date, sunrise and sunset (template sensors)
- removed outdoor temperature gauge
- reorganized climate data into structured groups:
  - temperature (3 rooms)
  - CO2 (3 rooms)
  - humidity (3 rooms)
- compacted energy and dishwasher into horizontal stack
- simplified vacuum card (reduced noise)
- improved overall layout readability and consistency

focus: better UX, clearer grouping, reduced clutter, production-stable structure
This commit is contained in:
2026-03-25 07:29:32 +01:00
parent 9a4efbcd6a
commit cc42f93c51
+127 -185
View File
@@ -1,17 +1,32 @@
title: Nørgårdsvej 22 title: Nørgårdsvej 22
path: home path: home
icon: mdi:home icon: mdi:home
type: sections
sections:
# 👨‍👩‍👧‍👦 Personer (overblik)
- type: grid
cards: cards:
- type: heading
heading: Familien
# 🌤️ Vejr + dato + sol
- type: vertical-stack
cards:
- type: weather-forecast
entity: weather.home
show_forecast: true
- type: entities
show_header_toggle: false
entities:
- entity: sensor.n22_dato
name: Dato
icon: mdi:calendar
- entity: sensor.n22_solopgang
name: Solopgang
icon: mdi:weather-sunset-up
- entity: sensor.n22_solnedgang
name: Solnedgang
icon: mdi:weather-sunset-down
# 👨‍👩‍👧‍👦 Familien
- type: glance - type: glance
title: Familien
entities: entities:
- entity: person.daniel_schusler_dethlefsen - entity: person.daniel_schusler_dethlefsen
name: Daniel name: Daniel
@@ -23,12 +38,8 @@ sections:
name: Andreas name: Andreas
# 🗑️ Affald # 🗑️ Affald
- type: grid
cards:
- type: heading
heading: Affald
- type: entities - type: entities
title: Affald
entities: entities:
- entity: sensor.affalddk_norgardsvej_22_restaffald - entity: sensor.affalddk_norgardsvej_22_restaffald
name: Rest name: Rest
@@ -37,225 +48,156 @@ sections:
- entity: sensor.affalddk_norgardsvej_22_haveaffald - entity: sensor.affalddk_norgardsvej_22_haveaffald
name: Have name: Have
- type: grid
columns: 2
cards:
- type: entity
entity: zone.home
name: Antal hjemme
- type: entity
entity: sensor.sun_next_setting
name: Solnedgang
# 🏠 Hus kontrol # 🏠 Hus kontrol
- type: grid - type: entities
cards: title: Modes
- type: heading entities:
heading: Hus kontrol - entity: input_boolean.guests_mode
- type: tile
entity: input_boolean.guests_mode
name: Vi har gæster name: Vi har gæster
icon: mdi:account-group icon: mdi:account-group
- type: entities
title: Vacation
entities:
- entity: input_boolean.vacation_mode - entity: input_boolean.vacation_mode
name: 🌴 Vacation Mode name: 🌴 Vacation Mode
- entity: input_datetime.vacation_end - entity: input_datetime.vacation_end
name: Slutter name: Slutter
- type: button # 🌡️ Temperatur + CO2 + Fugt (grupperet pr type)
name: Godnat - type: vertical-stack
icon: mdi:weather-night
tap_action:
action: call-service
service: scene.turn_on
target:
entity_id: scene.godnat
- type: button
name: Morgen
icon: mdi:weather-sunset-up
tap_action:
action: call-service
service: scene.turn_on
target:
entity_id: scene.morgen
- type: button
name: Hjemme
icon: mdi:home
tap_action:
action: call-service
service: scene.turn_on
target:
entity_id: scene.hjemme
# 🧭 Navigation
- type: grid
cards: cards:
- type: heading
heading: Navigation
- type: button # Temperatur
name: Stue - type: horizontal-stack
icon: mdi:sofa
tap_action:
action: navigate
navigation_path: /lovelace/my-dashboard/stue
- type: button
name: Daniel
icon: mdi:bed
tap_action:
action: navigate
navigation_path: /lovelace/my-dashboard/daniel
- type: button
name: Andreas
icon: mdi:bed
tap_action:
action: navigate
navigation_path: /lovelace/my-dashboard/andreas
- type: button
name: Støvsuger
icon: mdi:robot-vacuum
tap_action:
action: navigate
navigation_path: /lovelace/my-dashboard/vacuum
- type: button
name: Energi
icon: mdi:flash
tap_action:
action: navigate
navigation_path: /lovelace/my-dashboard/energy
# 🌡️ Temperatur
- type: grid
cards: cards:
- type: heading - type: gauge
heading: Temperatur
- type: tile
entity: sensor.n22_temperatur
name: Ude
- type: tile
entity: sensor.sovevaerelse_temperatur entity: sensor.sovevaerelse_temperatur
name: Soveværelse name: Soveværelse
min: 15
- type: tile max: 30
unit: '°C'
- type: gauge
entity: sensor.sovevaerelse_stue_temperatur entity: sensor.sovevaerelse_stue_temperatur
name: Andreas name: Andreas
min: 15
- type: tile max: 30
unit: '°C'
- type: gauge
entity: sensor.sovevaerelse_daniel_temperatur entity: sensor.sovevaerelse_daniel_temperatur
name: Daniel name: Daniel
min: 15
max: 30
unit: '°C'
# CO2
# ⚡ Energi - type: horizontal-stack
- type: grid
cards: cards:
- type: heading - type: gauge
heading: Energi entity: sensor.sovevaerelse_carbon_dioxide
name: Soveværelse
min: 400
max: 2000
unit: 'ppm'
- type: gauge
entity: sensor.sovevaerelse_stue_carbon_dioxide
name: Andreas
min: 400
max: 2000
unit: 'ppm'
- type: gauge
entity: sensor.sovevaerelse_daniel_carbon_dioxide
name: Daniel
min: 400
max: 2000
unit: 'ppm'
- type: tile # Luftfugtighed
- type: horizontal-stack
cards:
- type: gauge
entity: sensor.sovevaerelse_luftfugtighed
name: Soveværelse
min: 20
max: 80
unit: '%'
- type: gauge
entity: sensor.sovevaerelse_stue_luftfugtighed
name: Andreas
min: 20
max: 80
unit: '%'
- type: gauge
entity: sensor.sovevaerelse_daniel_luftfugtighed
name: Daniel
min: 20
max: 80
unit: '%'
# ⚡ Energi + 🍽️ Opvaskemaskine (kompakt)
- type: horizontal-stack
cards:
- type: gauge
entity: sensor.energi_data_service entity: sensor.energi_data_service
name: Elpris name: Elpris
min: 0
max: 5
unit: 'kr/kWh'
severity:
green: 2
yellow: 3
red: 4.5
- type: gauge
entity: sensor.dishwasher_remaining_minutes
name: Opvask
min: 0
max: 180
unit: 'min'
# 🧹 Støvsuger # 🧹 Støvsuger (forenklet mindre støj)
- type: grid - type: entities
cards: title: Støvsuger
- type: heading entities:
heading: Støvsuger - vacuum.roborock_s8_pro_ultra
- sensor.roborock_s8_pro_ultra_status
- type: tile
entity: vacuum.roborock_s8_pro_ultra
- type: tile
entity: sensor.roborock_s8_pro_ultra_status
name: Status
- type: tile
entity: sensor.roborock_s8_pro_ultra_vacuum_error
name: Fejl
# 🍽️ Opvaskemaskine
- type: grid
cards:
- type: heading
heading: Opvaskemaskine
- type: tile
entity: sensor.dishwasher_remaining_time_2
name: Tid tilbage
- type: tile
entity: binary_sensor.dishwasher_svigt
name: Fejl
# 🎵 Sonos # 🎵 Sonos
- type: grid
cards:
- type: heading
heading: Sonos
- type: glance - type: glance
title: Sonos
entities: entities:
- media_player.stue - media_player.stue
- media_player.andreas - media_player.andreas
- media_player.daniel - media_player.daniel
- media_player.kokken - media_player.kokken
- media_player.alrum
- media_player.badevaerelse
- media_player.sovevaerelse
- media_player.lille_badevaerelse
# 📡 Kamera indikator # 📡 Kamera indikator
- type: grid
cards:
- type: heading
heading: Kamera
- type: glance - type: glance
title: Kamera
entities: entities:
- binary_sensor.indkoersel_person - binary_sensor.indkoersel_person
- binary_sensor.indkoersel_vehicle - binary_sensor.indkoersel_vehicle
- binary_sensor.terrasse_person - binary_sensor.terrasse_person
# 🌐 System (let trimmet)
# 🌐 System - type: horizontal-stack
- type: grid
cards: cards:
- type: heading - type: sensor
heading: System
- type: tile
entity: sensor.home_assistant_website entity: sensor.home_assistant_website
name: HA Version name: HA Version
- type: sensor
- type: tile
entity: binary_sensor.home_assistant_website_update_available entity: binary_sensor.home_assistant_website_update_available
name: Opdatering name: Opdatering
- type: gauge
- type: tile
entity: sensor.speedtest_download entity: sensor.speedtest_download
name: Download name: Download
min: 0
- type: tile max: 1000
unit: 'Mbit/s'
- type: gauge
entity: sensor.speedtest_upload entity: sensor.speedtest_upload
name: Upload name: Upload
min: 0
- type: tile max: 500
entity: sensor.speedtest_ping unit: 'Mbit/s'
name: Ping