feat(dashboard-zuhause): add Klima tab
5 Sections: - Heizung NIBE: climate.climate_system_s1 + Vorlauf/Rücklauf/Außen/WW Chips + Raum-Sollwert (number) + WW-Bedarf/Boost (select) + Lüftung (select) - Whirlpool: climate.spa_thermostat (Tap → dashboard_spa) - Befeuchter: humidifier.evaporative_humidifier_05de + Wasserstand - Luftqualität: eCO₂ Chips pro Raum (color-coded: grün <1000, orange 1000-1500, rot >1500) + apexcharts 24h Multi-Line mit Annotations (1000/1500 Schwellen) - Temperatur-Verlauf: apexcharts 24h pro Raum Hinweis: Gästezimmer eCO₂=1520, AQI=102 — auffällig hoch. Lüftungsmodus aktuell 'Normal (36%)'.
This commit is contained in:
@@ -930,6 +930,397 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "Klima",
|
||||
"path": "klima",
|
||||
"icon": "mdi:thermometer",
|
||||
"type": "sections",
|
||||
"max_columns": 2,
|
||||
"sections": [
|
||||
{
|
||||
"type": "grid",
|
||||
"title": "Heizung NIBE",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:mushroom-climate-card",
|
||||
"entity": "climate.climate_system_s1",
|
||||
"show_temperature_control": true,
|
||||
"hvac_modes": [
|
||||
"auto",
|
||||
"heat",
|
||||
"cool",
|
||||
"off"
|
||||
],
|
||||
"fill_container": true
|
||||
},
|
||||
{
|
||||
"type": "custom:mushroom-chips-card",
|
||||
"alignment": "justify",
|
||||
"chips": [
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:home-thermometer",
|
||||
"icon_color": "blue",
|
||||
"content": "Vorlauf {{ states('sensor.nibe_s1255_6_e_em_3x400v_supply_line_bt2') | float(0) | round(1) }}°C"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:thermometer-water",
|
||||
"icon_color": "indigo",
|
||||
"content": "Rücklauf {{ states('sensor.nibe_s1255_6_e_em_3x400v_return_line_bt3') | float(0) | round(1) }}°C"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:weather-sunny",
|
||||
"icon_color": "amber",
|
||||
"content": "Außen {{ states('sensor.nibe_s1255_6_e_em_3x400v_current_outdoor_temperature_bt1') | float(0) | round(1) }}°C"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:water-thermometer",
|
||||
"icon_color": "red",
|
||||
"content": "WW {{ states('sensor.nibe_s1255_6_e_em_3x400v_hot_water_top_bt7') | float(0) | round(0) }}°C"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "horizontal-stack",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:mushroom-number-card",
|
||||
"entity": "number.nibe_s1255_6_e_em_3x400v_raumfuhler_sollwert_klimatisierungssyste",
|
||||
"name": "Raum-Sollwert",
|
||||
"icon": "mdi:thermostat",
|
||||
"fill_container": true
|
||||
},
|
||||
{
|
||||
"type": "custom:mushroom-select-card",
|
||||
"entity": "select.nibe_s1255_6_e_em_3x400v_hot_water_amount",
|
||||
"name": "WW-Bedarf",
|
||||
"icon": "mdi:water-boiler",
|
||||
"fill_container": true
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "horizontal-stack",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:mushroom-select-card",
|
||||
"entity": "select.nibe_s1255_6_e_em_3x400v_ventilation_mode",
|
||||
"name": "Lüftung",
|
||||
"icon": "mdi:fan",
|
||||
"fill_container": true
|
||||
},
|
||||
{
|
||||
"type": "custom:mushroom-select-card",
|
||||
"entity": "select.nibe_s1255_6_e_em_3x400v_hot_water_boost",
|
||||
"name": "WW-Boost",
|
||||
"icon": "mdi:fire",
|
||||
"fill_container": true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "grid",
|
||||
"title": "Whirlpool",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:mushroom-climate-card",
|
||||
"entity": "climate.spa_thermostat",
|
||||
"show_temperature_control": true,
|
||||
"fill_container": true,
|
||||
"tap_action": {
|
||||
"action": "navigate",
|
||||
"navigation_path": "/dashboard-spa"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "grid",
|
||||
"title": "Befeuchter",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:mushroom-humidifier-card",
|
||||
"entity": "humidifier.evaporative_humidifier_05de",
|
||||
"show_target_humidity_control": true,
|
||||
"fill_container": true
|
||||
},
|
||||
{
|
||||
"type": "custom:mushroom-chips-card",
|
||||
"alignment": "justify",
|
||||
"chips": [
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:water",
|
||||
"icon_color": "blue",
|
||||
"content": "Wasser: {{ states('sensor.evaporative_humidifier_05de_wasserstand') }}"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "grid",
|
||||
"title": "Luftqualität pro Raum",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:mushroom-chips-card",
|
||||
"alignment": "justify",
|
||||
"chips": [
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:molecule-co2",
|
||||
"icon_color": "{% set v = states('sensor.buro_rauchmelder_eco2') | float(0) %}{% if v > 1500 %}red{% elif v > 1000 %}orange{% else %}green{% endif %}",
|
||||
"content": "Büro {{ states('sensor.buro_rauchmelder_eco2') }}",
|
||||
"tap_action": {
|
||||
"action": "more-info",
|
||||
"entity": "sensor.buro_rauchmelder_eco2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:molecule-co2",
|
||||
"icon_color": "{% set v = states('sensor.kinderzimmer_rauchmelder_eco2') | float(0) %}{% if v > 1500 %}red{% elif v > 1000 %}orange{% else %}green{% endif %}",
|
||||
"content": "Kinderz. {{ states('sensor.kinderzimmer_rauchmelder_eco2') }}"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:molecule-co2",
|
||||
"icon_color": "{% set v = states('sensor.schlafzimmer_rauchmelder_eco2') | float(0) %}{% if v > 1500 %}red{% elif v > 1000 %}orange{% else %}green{% endif %}",
|
||||
"content": "Schlafz. {{ states('sensor.schlafzimmer_rauchmelder_eco2') }}"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:molecule-co2",
|
||||
"icon_color": "{% set v = states('sensor.gastezimmer_rauchmelder_eco2') | float(0) %}{% if v > 1500 %}red{% elif v > 1000 %}orange{% else %}green{% endif %}",
|
||||
"content": "Gäst. {{ states('sensor.gastezimmer_rauchmelder_eco2') }}"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:molecule-co2",
|
||||
"icon_color": "{% set v = states('sensor.technikraum_rauchmelder_eco2') | float(0) %}{% if v > 1500 %}red{% elif v > 1000 %}orange{% else %}green{% endif %}",
|
||||
"content": "Technik {{ states('sensor.technikraum_rauchmelder_eco2') }}"
|
||||
},
|
||||
{
|
||||
"type": "template",
|
||||
"icon": "mdi:molecule-co2",
|
||||
"icon_color": "{% set v = states('sensor.wohnbereich_rauchmelder_eco2') | float(0) %}{% if v > 1500 %}red{% elif v > 1000 %}orange{% else %}green{% endif %}",
|
||||
"content": "Wohnz. {{ states('sensor.wohnbereich_rauchmelder_eco2') }}"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "custom:apexcharts-card",
|
||||
"header": {
|
||||
"show": true,
|
||||
"title": "eCO₂ 24h pro Raum",
|
||||
"show_states": false
|
||||
},
|
||||
"graph_span": "24h",
|
||||
"yaxis": [
|
||||
{
|
||||
"min": 400,
|
||||
"max": 2000,
|
||||
"decimals": 0,
|
||||
"apex_config": {
|
||||
"tickAmount": 4
|
||||
}
|
||||
}
|
||||
],
|
||||
"apex_config": {
|
||||
"annotations": {
|
||||
"yaxis": [
|
||||
{
|
||||
"y": 1500,
|
||||
"borderColor": "#ff6b6b",
|
||||
"label": {
|
||||
"text": "Hoch (1500)",
|
||||
"style": {
|
||||
"color": "#fff",
|
||||
"background": "#ff6b6b"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"y": 1000,
|
||||
"borderColor": "#ffb84d",
|
||||
"label": {
|
||||
"text": "Mittel (1000)",
|
||||
"style": {
|
||||
"color": "#000",
|
||||
"background": "#ffb84d"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"series": [
|
||||
{
|
||||
"entity": "sensor.buro_rauchmelder_eco2",
|
||||
"name": "Büro",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "10m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.kinderzimmer_rauchmelder_eco2",
|
||||
"name": "Kinder",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "10m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.schlafzimmer_rauchmelder_eco2",
|
||||
"name": "Schlaf",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "10m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.gastezimmer_rauchmelder_eco2",
|
||||
"name": "Gäste",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "10m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.technikraum_rauchmelder_eco2",
|
||||
"name": "Technik",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "10m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.wohnbereich_rauchmelder_eco2",
|
||||
"name": "Wohnz.",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "10m"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "grid",
|
||||
"title": "Temperatur-Verlauf 24h",
|
||||
"cards": [
|
||||
{
|
||||
"type": "custom:apexcharts-card",
|
||||
"header": {
|
||||
"show": true,
|
||||
"title": "Temperatur pro Raum",
|
||||
"show_states": false
|
||||
},
|
||||
"graph_span": "24h",
|
||||
"yaxis": [
|
||||
{
|
||||
"decimals": 1,
|
||||
"apex_config": {
|
||||
"tickAmount": 5
|
||||
}
|
||||
}
|
||||
],
|
||||
"series": [
|
||||
{
|
||||
"entity": "sensor.wohnzimmer_rauchmelder_temperature",
|
||||
"name": "Wohnzimmer",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.schlafzimmer_rauchmelder_temperature",
|
||||
"name": "Schlafzimmer",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.kinderzimmer_rauchmelder_temperature",
|
||||
"name": "Kinderzimmer",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.buro_rauchmelder_temperature",
|
||||
"name": "Büro",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.gastezimmer_rauchmelder_temperature",
|
||||
"name": "Gästezimmer",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.badezimmer_feuchtemesser_temperature",
|
||||
"name": "Badezimmer",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
},
|
||||
{
|
||||
"entity": "sensor.technikraum_rauchmelder_temperature",
|
||||
"name": "Technikraum",
|
||||
"type": "line",
|
||||
"stroke_width": 2,
|
||||
"group_by": {
|
||||
"func": "avg",
|
||||
"duration": "15m"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "Home",
|
||||
"type": "sections",
|
||||
|
||||
Reference in New Issue
Block a user