2309 lines
97 KiB
Plaintext
2309 lines
97 KiB
Plaintext
{
|
||
"version": 1,
|
||
"minor_version": 1,
|
||
"key": "lovelace.dashboard_haustechnik",
|
||
"data": {
|
||
"config": {
|
||
"views": [
|
||
{
|
||
"title": "PV & Speicher",
|
||
"path": "pv-speicher",
|
||
"icon": "mdi:solar-power",
|
||
"type": "sections",
|
||
"max_columns": 2,
|
||
"cards": [],
|
||
"badges": [
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.powerocean_mpptpv_pwrtotal",
|
||
"icon": "mdi:solar-power",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.powerocean_bpsoc_2",
|
||
"icon": "mdi:battery",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.zuhause_strompreis",
|
||
"icon": "mdi:lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierte_kosten",
|
||
"icon": "mdi:currency-eur",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"sections": [
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "⚡ Energiefluss"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_solarertrag_mppt",
|
||
"icon": "mdi:solar-power",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_netzleistung_system",
|
||
"icon": "mdi:home-lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_leistung",
|
||
"icon": "mdi:transmission-tower",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_einspeiseleistung",
|
||
"icon": "mdi:transmission-tower-export",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Leistung – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_solar_gesamtleistung",
|
||
"name": "Solar",
|
||
"color": "#f9a825"
|
||
},
|
||
{
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_hausverbrauch_berechnet",
|
||
"name": "Eigenverbrauch",
|
||
"color": "#e53935"
|
||
},
|
||
{
|
||
"entity": "sensor.tibber_pulse_zuhause_leistung",
|
||
"name": "Netzbezug",
|
||
"color": "#1e88e5"
|
||
},
|
||
{
|
||
"entity": "sensor.tibber_pulse_zuhause_einspeiseleistung",
|
||
"name": "Einspeisung",
|
||
"color": "#43a047"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "☀️ Prognose & Kosten"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.energy_production_today_remaining",
|
||
"icon": "mdi:solar-power-variant",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.energy_production_tomorrow",
|
||
"icon": "mdi:weather-sunny",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.power_highest_peak_time_today",
|
||
"icon": "mdi:clock-fast",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierte_kosten",
|
||
"icon": "mdi:currency-eur",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierter_verbrauch",
|
||
"icon": "mdi:home-lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierte_einspeisung",
|
||
"icon": "mdi:transmission-tower-export",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"update_interval": "5m",
|
||
"graph_span": "48h",
|
||
"span": {
|
||
"start": "day"
|
||
},
|
||
"experimental": {
|
||
"hidden_by_default": true
|
||
},
|
||
"header": {
|
||
"show": true,
|
||
"title": "Preisniveau",
|
||
"show_states": false
|
||
},
|
||
"now": {
|
||
"show": true,
|
||
"color": "#ffffff"
|
||
},
|
||
"all_series_config": {
|
||
"float_precision": 2
|
||
},
|
||
"apex_config": {
|
||
"chart": {
|
||
"animations": {
|
||
"enabled": false
|
||
},
|
||
"toolbar": {
|
||
"show": false
|
||
},
|
||
"zoom": {
|
||
"enabled": false
|
||
}
|
||
},
|
||
"stroke": {
|
||
"curve": "stepline",
|
||
"dashArray": [
|
||
0,
|
||
0,
|
||
0,
|
||
0,
|
||
0,
|
||
0,
|
||
0,
|
||
4
|
||
]
|
||
},
|
||
"fill": {
|
||
"type": "gradient",
|
||
"opacity": 0.45,
|
||
"gradient": {
|
||
"shade": "light",
|
||
"type": "vertical",
|
||
"shadeIntensity": 0.2,
|
||
"opacityFrom": [
|
||
0.5,
|
||
0.7,
|
||
0.7,
|
||
0.7,
|
||
0.7,
|
||
0.7,
|
||
0.7,
|
||
0
|
||
],
|
||
"opacityTo": 0.25,
|
||
"stops": [
|
||
50,
|
||
100
|
||
]
|
||
}
|
||
},
|
||
"dataLabels": {
|
||
"enabled": false
|
||
},
|
||
"legend": {
|
||
"show": true,
|
||
"position": "bottom",
|
||
"horizontalAlign": "center",
|
||
"markers": {
|
||
"size": 0
|
||
},
|
||
"itemMargin": {
|
||
"horizontal": 15
|
||
}
|
||
},
|
||
"grid": {
|
||
"show": true,
|
||
"borderColor": "rgba(144, 164, 174, 0.35)",
|
||
"strokeDashArray": 0,
|
||
"xaxis": {
|
||
"lines": {
|
||
"show": false
|
||
}
|
||
},
|
||
"yaxis": {
|
||
"lines": {
|
||
"show": true
|
||
}
|
||
}
|
||
},
|
||
"markers": {
|
||
"size": 0,
|
||
"hover": {
|
||
"size": 3
|
||
},
|
||
"showNullDataPoints": false
|
||
},
|
||
"tooltip": {
|
||
"enabled": true,
|
||
"shared": true,
|
||
"enabledOnSeries": [
|
||
2,
|
||
3,
|
||
4,
|
||
5,
|
||
6
|
||
],
|
||
"marker": {
|
||
"show": false
|
||
},
|
||
"x": {
|
||
"show": false
|
||
}
|
||
}
|
||
},
|
||
"yaxis": [
|
||
{
|
||
"id": "price",
|
||
"min": 0,
|
||
"max": 40,
|
||
"apex_config": {
|
||
"title": {
|
||
"text": "ct/kWh"
|
||
},
|
||
"decimalsInFloat": 0,
|
||
"forceNiceScale": true,
|
||
"showAlways": true,
|
||
"tickAmount": 4
|
||
}
|
||
},
|
||
{
|
||
"id": "highlight",
|
||
"min": 0,
|
||
"max": 1,
|
||
"show": false,
|
||
"opposite": true,
|
||
"apex_config": {
|
||
"forceNiceScale": true,
|
||
"tickAmount": 4
|
||
}
|
||
}
|
||
],
|
||
"series": [
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "▼ Bestpreis-Zeitraum",
|
||
"type": "area",
|
||
"color": "rgba(46, 204, 113, 0.05)",
|
||
"yaxis_id": "highlight",
|
||
"stroke_width": 0,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": true
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tC=m-0.5*sd; return a.map(p=>[p.ts,p.ct<tC?1:null]);"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "▲ Spitzenpreis-Zeitraum",
|
||
"type": "area",
|
||
"color": "rgba(231, 76, 60, 0.06)",
|
||
"yaxis_id": "highlight",
|
||
"stroke_width": 0,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": true,
|
||
"hidden_by_default": true
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tE=m+0.5*sd; return a.map(p=>[p.ts,p.ct>=tE?1:null]);"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "Sehr günstig",
|
||
"type": "area",
|
||
"color": "#2ecc71",
|
||
"yaxis_id": "price",
|
||
"stroke_width": 1.5,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tVC=m-1.5*sd; return a.map((p,i)=>{\n const here=p.ct<tVC;\n const prev=i>0&&a[i-1].ct<tVC;\n const next=i<a.length-1&&a[i+1].ct<tVC;\n return [p.ts,(here||prev||next)?p.ct:null];\n});"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "Günstig",
|
||
"type": "area",
|
||
"color": "#27ae60",
|
||
"yaxis_id": "price",
|
||
"stroke_width": 1.5,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tVC=m-1.5*sd; const tC=m-0.5*sd; return a.map((p,i)=>{\n const here=p.ct>=tVC&&p.ct<tC;\n const prev=i>0&&a[i-1].ct>=tVC&&a[i-1].ct<tC;\n const next=i<a.length-1&&a[i+1].ct>=tVC&&a[i+1].ct<tC;\n return [p.ts,(here||prev||next)?p.ct:null];\n});"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "Normal",
|
||
"type": "area",
|
||
"color": "#f1c40f",
|
||
"yaxis_id": "price",
|
||
"stroke_width": 1.5,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tC=m-0.5*sd; const tE=m+0.5*sd; return a.map((p,i)=>{\n const here=p.ct>=tC&&p.ct<tE;\n const prev=i>0&&a[i-1].ct>=tC&&a[i-1].ct<tE;\n const next=i<a.length-1&&a[i+1].ct>=tC&&a[i+1].ct<tE;\n return [p.ts,(here||prev||next)?p.ct:null];\n});"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "Teuer",
|
||
"type": "area",
|
||
"color": "#e67e22",
|
||
"yaxis_id": "price",
|
||
"stroke_width": 1.5,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tE=m+0.5*sd; const tVE=m+1.5*sd; return a.map((p,i)=>{\n const here=p.ct>=tE&&p.ct<tVE;\n const prev=i>0&&a[i-1].ct>=tE&&a[i-1].ct<tVE;\n const next=i<a.length-1&&a[i+1].ct>=tE&&a[i+1].ct<tVE;\n return [p.ts,(here||prev||next)?p.ct:null];\n});"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "Sehr teuer",
|
||
"type": "area",
|
||
"color": "#e74c3c",
|
||
"yaxis_id": "price",
|
||
"stroke_width": 1.5,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const a=r.response.prices.Zuhause.map(p=>({ts:new Date(p.start_time).getTime(),ct:Math.round(p.price*10000)/100})); const cts=a.map(p=>p.ct); const m=cts.reduce((x,y)=>x+y,0)/cts.length; const sd=Math.sqrt(cts.map(c=>(c-m)**2).reduce((x,y)=>x+y,0)/cts.length); const tVE=m+1.5*sd; return a.map((p,i)=>{\n const here=p.ct>=tVE;\n const prev=i>0&&a[i-1].ct>=tVE;\n const next=i<a.length-1&&a[i+1].ct>=tVE;\n return [p.ts,(here||prev||next)?p.ct:null];\n});"
|
||
},
|
||
{
|
||
"entity": "sun.sun",
|
||
"name": "Keine Daten",
|
||
"type": "line",
|
||
"color": "#546e7a",
|
||
"yaxis_id": "price",
|
||
"stroke_width": 1,
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const ed=new Date(); ed.setDate(ed.getDate()+3); ed.setHours(0,0,0,0); const es=ed.getFullYear()+'-'+String(ed.getMonth()+1).padStart(2,'0')+'-'+String(ed.getDate()).padStart(2,'0')+' 00:00:00'; const r=await hass.callWS({type:'call_service',domain:'tibber',service:'get_prices',return_response:true,service_data:{end:es}}); const prices=r.response.prices.Zuhause; const known=new Set(prices.map(p=>new Date(p.start_time).getTime())); const cts=prices.map(p=>Math.round(p.price*10000)/100); const avg=Math.round(cts.reduce((x,y)=>x+y,0)/cts.length*10)/10; const start=new Date(); start.setHours(0,0,0,0); const result=[]; for(let i=0;i<192;i++){\n const ts=start.getTime()+i*15*60*1000;\n result.push([ts,known.has(ts)?null:avg]);\n} return result;"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.electricity_maps_co2_intensitat",
|
||
"icon": "mdi:molecule-co2",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.electricity_maps_anteil_fossiler_brennstoffe_im_netz",
|
||
"icon": "mdi:factory",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "⚡ Tibber"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.zuhause_strompreis",
|
||
"icon": "mdi:lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierte_kosten",
|
||
"icon": "mdi:currency-eur",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierter_verbrauch",
|
||
"icon": "mdi:home-lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_kumulierte_einspeisung",
|
||
"icon": "mdi:transmission-tower-export",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Netzbezug & Einspeisung – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.tibber_pulse_zuhause_leistung",
|
||
"name": "Bezug (W)",
|
||
"color": "#e53935"
|
||
},
|
||
{
|
||
"entity": "sensor.tibber_pulse_zuhause_einspeiseleistung",
|
||
"name": "Einspeisung (W)",
|
||
"color": "#43a047"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_spannung_l1",
|
||
"icon": "mdi:lightning-bolt-circle",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_spannung_l2",
|
||
"icon": "mdi:lightning-bolt-circle",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_spannung_l3",
|
||
"icon": "mdi:lightning-bolt-circle",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_stromstarke_l1",
|
||
"icon": "mdi:current-ac",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_stromstarke_l2",
|
||
"icon": "mdi:current-ac",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.tibber_pulse_zuhause_stromstarke_l3",
|
||
"icon": "mdi:current-ac",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🔋 Batteriespeicher"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_ladezustand_der_batterie",
|
||
"icon": "mdi:battery",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_emsbppower",
|
||
"icon": "mdi:flash",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Batterieladung – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"yaxis": [
|
||
{
|
||
"id": "soc",
|
||
"min": 0,
|
||
"max": 100,
|
||
"decimals": 0
|
||
},
|
||
{
|
||
"id": "power",
|
||
"opposite": true,
|
||
"decimals": 0
|
||
}
|
||
],
|
||
"series": [
|
||
{
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_ladezustand_der_batterie",
|
||
"name": "Ladestand (%)",
|
||
"yaxis_id": "soc",
|
||
"color": "#43a047"
|
||
},
|
||
{
|
||
"entity": "sensor.powerocean_hj37zdh5zg5w0109_emsbppower",
|
||
"name": "Leistung (W)",
|
||
"yaxis_id": "power",
|
||
"color": "#1e88e5"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"title": "Wärmepumpe",
|
||
"path": "waermepumpe",
|
||
"icon": "mdi:heat-pump",
|
||
"type": "sections",
|
||
"max_columns": 2,
|
||
"cards": [],
|
||
"badges": [
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"chips": [
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:wifi",
|
||
"icon_color": "{{ 'green' if is_state('binary_sensor.nibe_s1255_6_e_em_3x400v_konnektivitat','on') else 'red' }}\n",
|
||
"content": "{{ 'Online' if is_state('binary_sensor.nibe_s1255_6_e_em_3x400v_konnektivitat','on') else 'Offline' }}\n"
|
||
},
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:alert-circle-outline",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.nibe_s1255_6_e_em_3x400v_alarm','on') else 'green' }}\n",
|
||
"content": "{{ 'Alarm!' if is_state('binary_sensor.nibe_s1255_6_e_em_3x400v_alarm','on') else 'Kein Alarm' }}\n"
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_cop_total_last_hour",
|
||
"icon": "mdi:gauge-full",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_current_outdoor_temperature_bt1",
|
||
"icon": "mdi:thermometer",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"sections": [
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🌡️ Heizkreis"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_supply_line_bt2",
|
||
"icon": "mdi:thermometer-chevron-up",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_return_line_bt3",
|
||
"icon": "mdi:thermometer-chevron-down",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_calculated_supply_climate_system_1",
|
||
"icon": "mdi:calculator-variant",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_temperatur_klimatisierungssyste",
|
||
"name": "Raumtemperatur Ist",
|
||
"icon": "mdi:home-thermometer",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "number.nibe_s1255_6_e_em_3x400v_raumfuhler_sollwert_klimatisierungssyste",
|
||
"name": "Raumtemperatur Soll",
|
||
"icon": "mdi:home-thermometer-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "number.nibe_s1255_6_e_em_3x400v_degree_minutes",
|
||
"name": "Degree Minutes",
|
||
"icon": "mdi:timer-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Heizkreis – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_supply_line_bt2",
|
||
"name": "Vorlauf (BT2)"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_return_line_bt3",
|
||
"name": "Rücklauf (BT3)"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_current_outdoor_temperature_bt1",
|
||
"name": "Außen (BT1)"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🚿 Warmwasser"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_hot_water_top_bt7",
|
||
"icon": "mdi:water-thermometer",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_hot_water_charging_bt6",
|
||
"icon": "mdi:water-sync",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Warmwasser – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_hot_water_top_bt7",
|
||
"name": "Oben (BT7)"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_hot_water_charging_bt6",
|
||
"name": "Ladung (BT6)"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "💨 Lüftung (AZ30)"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "select.nibe_s1255_6_e_em_3x400v_ventilation_mode",
|
||
"name": "Lüftungsmodus",
|
||
"icon": "mdi:fan",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_abluft_az30_bt20",
|
||
"icon": "mdi:arrow-up-circle-outline",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_fortluft_az30_bt21",
|
||
"icon": "mdi:arrow-right-circle-outline",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_supp_air_az30_bt22",
|
||
"icon": "mdi:arrow-down-circle-outline",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Lüftung – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_abluft_az30_bt20",
|
||
"name": "Abluft BT20"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_fortluft_az30_bt21",
|
||
"name": "Fortluft BT21"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_supp_air_az30_bt22",
|
||
"name": "Zuluft BT22"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🧊 Sole / Erdkollektor"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_brine_in_bt10",
|
||
"icon": "mdi:arrow-right-circle",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_brine_out_bt11",
|
||
"icon": "mdi:arrow-left-circle",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_temperatur_bt50",
|
||
"icon": "mdi:thermometer",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Sole – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_brine_in_bt10",
|
||
"name": "Sole ein (BT10)"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_brine_out_bt11",
|
||
"name": "Sole aus (BT11)"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "📊 Effizienz & Energie"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_cop_total_last_hour",
|
||
"icon": "mdi:gauge-full",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_cop_heating_last_hour",
|
||
"icon": "mdi:radiator",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_cop_hot_water_last_hour",
|
||
"icon": "mdi:water-boiler",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_produced_total_kwh",
|
||
"icon": "mdi:lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_used_total_kwh",
|
||
"icon": "mdi:home-lightning-bolt",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_produced_heating_kwh",
|
||
"icon": "mdi:radiator",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.nibe_energy_produced_hot_water_kwh",
|
||
"icon": "mdi:water-boiler",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "COP – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.nibe_energy_cop_total_last_hour",
|
||
"name": "COP gesamt"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_energy_cop_heating_last_hour",
|
||
"name": "COP Heizung"
|
||
},
|
||
{
|
||
"entity": "sensor.nibe_energy_cop_hot_water_last_hour",
|
||
"name": "COP Warmwasser"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.nibe_s1255_6_e_em_3x400v_tarifblockierung",
|
||
"name": "Tarifblockierung",
|
||
"icon": "mdi:currency-eur-off",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🗺️ Systemdiagramm"
|
||
},
|
||
{
|
||
"type": "picture-elements",
|
||
"image": "/api/image/serve/7ec7636ccf48b97c110d04ca4c281c6a/512x512",
|
||
"elements": [
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.power_internal_additional_heat_31028",
|
||
"prefix": "Heater: ",
|
||
"style": {
|
||
"top": "50%",
|
||
"left": "35%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.flow_sensor_bf1_30041",
|
||
"prefix": "BF1: ",
|
||
"style": {
|
||
"top": "75%",
|
||
"left": "51%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.current_outdoor_temperature_bt1_30002",
|
||
"prefix": "BT1: ",
|
||
"style": {
|
||
"top": "88%",
|
||
"left": "10%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.supply_line_bt2_30006",
|
||
"prefix": "BT2: ",
|
||
"style": {
|
||
"top": "6%",
|
||
"left": "40%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.return_line_bt3_30008",
|
||
"prefix": "BT3: ",
|
||
"style": {
|
||
"top": "10%",
|
||
"left": "10%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.hot_water_charging_bt6_30010",
|
||
"prefix": "BT6: ",
|
||
"style": {
|
||
"top": "30%",
|
||
"left": "30%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.hot_water_top_bt7_30009",
|
||
"prefix": "BT7: ",
|
||
"style": {
|
||
"top": "23%",
|
||
"left": "30%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.condenser_bt12_30013",
|
||
"prefix": "BT12: ",
|
||
"style": {
|
||
"top": "44%",
|
||
"left": "10%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.discharge_bt14_30014",
|
||
"prefix": "BT14: ",
|
||
"style": {
|
||
"top": "44%",
|
||
"left": "60%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.eb100_ep14_bt16_31627",
|
||
"prefix": "BT16: ",
|
||
"style": {
|
||
"top": "60%",
|
||
"left": "10%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.suction_gas_bt17_30017",
|
||
"prefix": "BT17: ",
|
||
"style": {
|
||
"top": "60%",
|
||
"left": "60%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.exh_air_az30_bt20_30020",
|
||
"prefix": "BT20: ",
|
||
"style": {
|
||
"top": "91%",
|
||
"left": "36%"
|
||
}
|
||
},
|
||
{
|
||
"type": "state-label",
|
||
"entity": "sensor.extr_air_az30_bt21_30021",
|
||
"prefix": "BT21: ",
|
||
"style": {
|
||
"top": "68%",
|
||
"left": "12%"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:numberbox-card",
|
||
"entity": "number.nibe_s1255_6_e_em_3x400v_raumfuhler_sollwert_klimatisierungssyste",
|
||
"name": false,
|
||
"icon": false,
|
||
"min": 16,
|
||
"max": 25,
|
||
"step": 0.5,
|
||
"card_mod": {
|
||
"style": "ha-card { background: grey; }\n"
|
||
},
|
||
"style": {
|
||
"top": "91%",
|
||
"left": "75%"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"title": "IT & Server",
|
||
"path": "it-server",
|
||
"icon": "mdi:server",
|
||
"type": "sections",
|
||
"max_columns": 2,
|
||
"cards": [],
|
||
"badges": [
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"chips": [
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:server",
|
||
"icon_color": "{{ 'green' if is_state('binary_sensor.node_nuc_status','on') else 'red' }}\n",
|
||
"content": "{{ 'NUC Online' if is_state('binary_sensor.node_nuc_status','on') else 'NUC Offline' }}\n"
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.cloud_gateway_fiber_cloudflare_wan_latency",
|
||
"icon": "mdi:web",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.adguard_home_anteil_blockierter_dns_abfragen",
|
||
"icon": "mdi:shield-check",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "conditional",
|
||
"conditions": [
|
||
{
|
||
"condition": "state",
|
||
"entity": "binary_sensor.node_nuc_pakete_aktualisieren",
|
||
"state": "on"
|
||
}
|
||
],
|
||
"chip": {
|
||
"type": "template",
|
||
"icon": "mdi:update",
|
||
"icon_color": "orange",
|
||
"content": "{{ states('sensor.node_nuc_gesamte_updates') }} Updates\n"
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"show_name": false,
|
||
"show_state": true,
|
||
"show_icon": true,
|
||
"entity": "binary_sensor.appdaemon_aktiv"
|
||
}
|
||
],
|
||
"sections": [
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🖥️ Proxmox NUC"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:server",
|
||
"icon_color": "{{ 'green' if is_state('binary_sensor.node_nuc_status','on') else 'red' }}\n",
|
||
"content": "{{ 'Online' if is_state('binary_sensor.node_nuc_status','on') else 'Offline' }}\n"
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.node_nuc_cpu_auslastung",
|
||
"icon": "mdi:cpu-64-bit",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.node_nuc_prozentsatz_genutzter_arbeitsspeicher",
|
||
"icon": "mdi:memory",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.node_nuc_prozentsatz_belegter_speicherplatz",
|
||
"icon": "mdi:harddisk",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.node_nuc_virtual_machines_running",
|
||
"icon": "mdi:monitor",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.node_nuc_container_laufen",
|
||
"icon": "mdi:docker",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.node_nuc_letzter_start",
|
||
"icon": "mdi:clock-outline",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "conditional",
|
||
"conditions": [
|
||
{
|
||
"condition": "state",
|
||
"entity": "binary_sensor.node_nuc_pakete_aktualisieren",
|
||
"state": "on"
|
||
}
|
||
],
|
||
"card": {
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.node_nuc_gesamte_updates",
|
||
"name": "Updates verfügbar",
|
||
"icon": "mdi:update",
|
||
"icon_color": "orange",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.node_nuc_genutzter_arbeitsspeicher",
|
||
"name": "RAM genutzt",
|
||
"icon": "mdi:memory",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.node_nuc_freier_arbeitsspeicher",
|
||
"name": "RAM frei",
|
||
"icon": "mdi:memory",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "CPU & RAM – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"yaxis": [
|
||
{
|
||
"id": "pct",
|
||
"min": 0,
|
||
"max": 100,
|
||
"decimals": 0
|
||
}
|
||
],
|
||
"series": [
|
||
{
|
||
"entity": "sensor.node_nuc_cpu_auslastung",
|
||
"name": "CPU %",
|
||
"yaxis_id": "pct",
|
||
"color": "#1e88e5"
|
||
},
|
||
{
|
||
"entity": "sensor.node_nuc_prozentsatz_genutzter_arbeitsspeicher",
|
||
"name": "RAM %",
|
||
"yaxis_id": "pct",
|
||
"color": "#e53935"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🌐 UniFi Gateway"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.cloud_gateway_fiber_cloudflare_wan_latency",
|
||
"icon": "mdi:web",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.cloud_gateway_fiber_cpu_utilization",
|
||
"icon": "mdi:cpu-64-bit",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.cloud_gateway_fiber_memory_utilization",
|
||
"icon": "mdi:memory",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.cloud_gateway_fiber_cloud_gateway_fiber_cpu_temperature",
|
||
"icon": "mdi:thermometer",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.cloud_gateway_fiber_state",
|
||
"name": "Status",
|
||
"icon": "mdi:router-network",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.cloud_gateway_fiber_uptime",
|
||
"name": "Uptime",
|
||
"icon": "mdi:clock-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "WAN Latenz – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.cloud_gateway_fiber_cloudflare_wan_latency",
|
||
"name": "WAN Latenz (ms)",
|
||
"color": "#1e88e5"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🛡️ AdGuard Home"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.adguard_home_anteil_blockierter_dns_abfragen",
|
||
"icon": "mdi:shield-check",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.adguard_home_dns_abfragen",
|
||
"icon": "mdi:dns",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.adguard_home_blockierte_dns_abfragen",
|
||
"icon": "mdi:shield-off",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.adguard_home_durchschnittliche_verarbeitungsgeschwindigkeit",
|
||
"name": "Ø Antwortzeit",
|
||
"icon": "mdi:timer-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.adguard_home_durch_safe_browsing_blockiert",
|
||
"name": "Safe Browsing blockiert",
|
||
"icon": "mdi:web-off",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.adguard_home_durch_jugendschutz_blockiert",
|
||
"name": "Jugendschutz blockiert",
|
||
"icon": "mdi:account-child",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "📷 Immich Fotoverwaltung"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.immich_anzahl_fotos",
|
||
"icon": "mdi:image-multiple",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.immich_anzahl_videos",
|
||
"icon": "mdi:video-box",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.immich_gesamter_speicherplatz",
|
||
"name": "Gesamt Speicher",
|
||
"icon": "mdi:harddisk",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.immich_verfugbarer_speicherplatz",
|
||
"name": "Verfügbar",
|
||
"icon": "mdi:harddisk-plus",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🎵 Music Assistant"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:music-circle",
|
||
"icon_color": "{{ 'green' if is_state('binary_sensor.music_assistant_server_aktiv','on') else 'red' }}\n",
|
||
"content": "{{ 'Aktiv' if is_state('binary_sensor.music_assistant_server_aktiv','on') else 'Inaktiv' }}\n"
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.music_assistant_server_cpu_prozent",
|
||
"icon": "mdi:cpu-64-bit",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.music_assistant_server_arbeitsspeicher_in_prozent",
|
||
"icon": "mdi:memory",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.music_assistant_server_version",
|
||
"name": "Version",
|
||
"icon": "mdi:tag-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "💾 Backup"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.backup_backup_manager_zustand",
|
||
"name": "Backup-Status",
|
||
"icon": "mdi:backup-restore",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.backup_letztes_erfolgreiches_automatisches_backup",
|
||
"name": "Letztes erfolgreiches Backup",
|
||
"icon": "mdi:check-circle-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "sensor.backup_nachstes_geplantes_automatisches_backup",
|
||
"name": "Nächstes Backup",
|
||
"icon": "mdi:clock-outline",
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "📡 Zigbee2MQTT"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"alignment": "center",
|
||
"chips": [
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:zigbee",
|
||
"icon_color": "{{ 'green' if is_state('binary_sensor.zigbee2mqtt_bridge_connection_state','on') else 'red' }}\n",
|
||
"content": "{{ 'Verbunden' if is_state('binary_sensor.zigbee2mqtt_bridge_connection_state','on') else 'Getrennt' }}\n"
|
||
},
|
||
{
|
||
"type": "entity",
|
||
"entity": "sensor.zigbee2mqtt_bridge_version",
|
||
"icon": "mdi:tag-outline",
|
||
"show_state": true,
|
||
"show_icon": true
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "switch.zigbee2mqtt_bridge_permit_join",
|
||
"name": "Pairing erlauben",
|
||
"icon": "mdi:link-plus",
|
||
"tap_action": {
|
||
"action": "toggle"
|
||
},
|
||
"layout": "horizontal",
|
||
"fill_container": true
|
||
},
|
||
{
|
||
"type": "custom:mushroom-entity-card",
|
||
"entity": "button.zigbee2mqtt_bridge_restart",
|
||
"name": "Bridge neu starten",
|
||
"icon": "mdi:restart",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "call-service",
|
||
"service": "button.press",
|
||
"target": {
|
||
"entity_id": "button.zigbee2mqtt_bridge_restart"
|
||
}
|
||
}
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"title": "Sicherheit",
|
||
"path": "sicherheit",
|
||
"icon": "mdi:shield-home",
|
||
"type": "sections",
|
||
"max_columns": 2,
|
||
"cards": [],
|
||
"badges": [
|
||
{
|
||
"type": "custom:mushroom-chips-card",
|
||
"chips": [
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.buro_rauchmelder_smoke','on')\n or is_state('binary_sensor.kinderzimmer_rauchmelder_smoke','on')\n or is_state('binary_sensor.schlafzimmer_rauchmelder_smoke','on')\n or is_state('binary_sensor.gastezimmer_rauchmelder_smoke','on')\n or is_state('binary_sensor.technikraum_rauchmelder_smoke','on')\n or is_state('binary_sensor.wohnzimmer_rauchmelder_smoke','on')\n else 'green' }}\n",
|
||
"content": "{% set rooms = {\n 'Büro': 'binary_sensor.buro_rauchmelder_smoke',\n 'Kinderzimmer': 'binary_sensor.kinderzimmer_rauchmelder_smoke',\n 'Schlafzimmer': 'binary_sensor.schlafzimmer_rauchmelder_smoke',\n 'Gästezimmer': 'binary_sensor.gastezimmer_rauchmelder_smoke',\n 'Technikraum': 'binary_sensor.technikraum_rauchmelder_smoke',\n 'Wohnzimmer': 'binary_sensor.wohnzimmer_rauchmelder_smoke'\n} %} {% set alarm = namespace(room='') %} {% for name, entity in rooms.items() %}\n {% if is_state(entity,'on') and alarm.room == '' %}\n {% set alarm.room = name %}\n {% endif %}\n{% endfor %} {{ 'Rauch – ' ~ alarm.room ~ '!' if alarm.room != '' else 'Kein Rauch' }}\n"
|
||
},
|
||
{
|
||
"type": "template",
|
||
"icon": "mdi:water-alert",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.technikraum_wassermelder_water_leak','on')\n or is_state('binary_sensor.wc_wassermelder_water_leak','on')\n or is_state('binary_sensor.kuche_wassermelder_water_leak','on')\n else 'green' }}\n",
|
||
"content": "{% if is_state('binary_sensor.technikraum_wassermelder_water_leak','on') %}\n Wasser – Technikraum!\n{% elif is_state('binary_sensor.wc_wassermelder_water_leak','on') %}\n Wasser – WC!\n{% elif is_state('binary_sensor.kuche_wassermelder_water_leak','on') %}\n Wasser – Küche!\n{% else %}\n Trocken\n{% endif %}\n"
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"sections": [
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🔥 Rauchmelder"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Büro",
|
||
"secondary": "{{ states('sensor.buro_rauchmelder_temperature') }}°C · {{ states('sensor.buro_rauchmelder_humidity') }}% · AQI {{ states('sensor.buro_rauchmelder_aqi') }}\n",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.buro_rauchmelder_smoke','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.buro_rauchmelder_smoke"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Kinderzimmer",
|
||
"secondary": "{{ states('sensor.kinderzimmer_rauchmelder_temperature') }}°C · {{ states('sensor.kinderzimmer_rauchmelder_humidity') }}% · AQI {{ states('sensor.kinderzimmer_rauchmelder_aqi') }}\n",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.kinderzimmer_rauchmelder_smoke','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.kinderzimmer_rauchmelder_smoke"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Schlafzimmer",
|
||
"secondary": "{{ states('sensor.schlafzimmer_rauchmelder_temperature') }}°C · {{ states('sensor.schlafzimmer_rauchmelder_humidity') }}% · AQI {{ states('sensor.schlafzimmer_rauchmelder_aqi') }}\n",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.schlafzimmer_rauchmelder_smoke','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.schlafzimmer_rauchmelder_smoke"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Gästezimmer",
|
||
"secondary": "{{ states('sensor.gastezimmer_rauchmelder_temperature') }}°C · {{ states('sensor.gastezimmer_rauchmelder_humidity') }}% · AQI {{ states('sensor.gastezimmer_rauchmelder_aqi') }}\n",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.gastezimmer_rauchmelder_smoke','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.gastezimmer_rauchmelder_smoke"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Wohnzimmer",
|
||
"secondary": "{{ states('sensor.wohnzimmer_rauchmelder_temperature') | default('–') }}°C · {{ states('sensor.wohnzimmer_rauchmelder_humidity') | default('–') }}% · AQI {{ states('sensor.wohnzimmer_rauchmelder_aqi') }}\n",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.wohnzimmer_rauchmelder_smoke','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.wohnzimmer_rauchmelder_smoke"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Technikraum",
|
||
"secondary": "{{ states('sensor.technikraum_rauchmelder_temperature') }}°C · {{ states('sensor.technikraum_rauchmelder_humidity') }}% · AQI {{ states('sensor.technikraum_rauchmelder_aqi') }}\n",
|
||
"icon": "mdi:smoke-detector-variant",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.technikraum_rauchmelder_smoke','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.technikraum_rauchmelder_smoke"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "💧 Wassermelder"
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Küche",
|
||
"secondary": "{{ states('sensor.kuche_wassermelder_device_temperature') }}°C · Batterie {{ states('sensor.kuche_wassermelder_battery') }}%\n",
|
||
"icon": "mdi:water-alert",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.kuche_wassermelder_water_leak','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.kuche_wassermelder_water_leak"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "WC",
|
||
"secondary": "{{ states('sensor.wc_wassermelder_device_temperature') }}°C · Batterie {{ states('sensor.wc_wassermelder_battery') }}%\n",
|
||
"icon": "mdi:water-alert",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.wc_wassermelder_water_leak','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.wc_wassermelder_water_leak"
|
||
}
|
||
},
|
||
{
|
||
"type": "custom:mushroom-template-card",
|
||
"primary": "Technikraum",
|
||
"secondary": "{{ states('sensor.technikraum_wassermelder_device_temperature') }}°C · Batterie {{ states('sensor.technikraum_wassermelder_battery') }}%\n",
|
||
"icon": "mdi:water-alert",
|
||
"icon_color": "{{ 'red' if is_state('binary_sensor.technikraum_wassermelder_water_leak','on') else 'green' }}\n",
|
||
"layout": "horizontal",
|
||
"fill_container": true,
|
||
"tap_action": {
|
||
"action": "more-info",
|
||
"entity": "binary_sensor.technikraum_wassermelder_water_leak"
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "custom:mushroom-title-card",
|
||
"title": "🌡️ Raumklima (via Rauchmelder)"
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Luftqualität (AQI) – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.wohnzimmer_rauchmelder_aqi",
|
||
"name": "Wohnzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.buro_rauchmelder_aqi",
|
||
"name": "Büro"
|
||
},
|
||
{
|
||
"entity": "sensor.schlafzimmer_rauchmelder_aqi",
|
||
"name": "Schlafzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.kinderzimmer_rauchmelder_aqi",
|
||
"name": "Kinderzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.gastezimmer_rauchmelder_aqi",
|
||
"name": "Gästezimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.technikraum_rauchmelder_aqi",
|
||
"name": "Technikraum"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Temperaturen – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"series": [
|
||
{
|
||
"entity": "sensor.wohnzimmer_rauchmelder_temperature",
|
||
"name": "Wohnzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.buro_rauchmelder_temperature",
|
||
"name": "Büro"
|
||
},
|
||
{
|
||
"entity": "sensor.kinderzimmer_rauchmelder_temperature",
|
||
"name": "Kinderzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.schlafzimmer_rauchmelder_temperature",
|
||
"name": "Schlafzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.gastezimmer_rauchmelder_temperature",
|
||
"name": "Gästezimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.technikraum_rauchmelder_temperature",
|
||
"name": "Technikraum"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "custom:apexcharts-card",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Luftfeuchtigkeit – 24 h",
|
||
"show_states": true,
|
||
"standard_format": true
|
||
},
|
||
"graph_span": "24h",
|
||
"yaxis": [
|
||
{
|
||
"min": 0,
|
||
"max": 100,
|
||
"decimals": 0
|
||
}
|
||
],
|
||
"series": [
|
||
{
|
||
"entity": "sensor.wohnzimmer_rauchmelder_humidity",
|
||
"name": "Wohnzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.buro_rauchmelder_humidity",
|
||
"name": "Büro"
|
||
},
|
||
{
|
||
"entity": "sensor.kinderzimmer_rauchmelder_humidity",
|
||
"name": "Kinderzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.schlafzimmer_rauchmelder_humidity",
|
||
"name": "Schlafzimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.gastezimmer_rauchmelder_humidity",
|
||
"name": "Gästezimmer"
|
||
},
|
||
{
|
||
"entity": "sensor.technikraum_rauchmelder_humidity",
|
||
"name": "Technikraum"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "sections",
|
||
"max_columns": 1,
|
||
"title": "experiments",
|
||
"path": "experiments",
|
||
"icon": "fa6-solid:flask",
|
||
"sections": [
|
||
{
|
||
"type": "grid",
|
||
"cards": [
|
||
{
|
||
"type": "heading",
|
||
"heading": "Neuer Abschnitt"
|
||
},
|
||
{
|
||
"type": "history-graph",
|
||
"entities": [
|
||
{
|
||
"entity": "binary_sensor.technikraum_wasserticker_contact"
|
||
}
|
||
],
|
||
"hours_to_show": 0.02
|
||
},
|
||
{
|
||
"type": "custom:config-template-card",
|
||
"variables": {
|
||
"v_offset": "states['binary_sensor.zuhause_morgige_daten_verfugbar'].state === 'on' ? '+1d' : '+0d'",
|
||
"v_yaxis_min": "states['sensor.zuhause_diagramm_metadaten'].attributes.yaxis_min",
|
||
"v_yaxis_max": "states['sensor.zuhause_diagramm_metadaten'].attributes.yaxis_max"
|
||
},
|
||
"entities": [
|
||
"binary_sensor.zuhause_morgige_daten_verfugbar",
|
||
"sensor.zuhause_diagramm_metadaten"
|
||
],
|
||
"card": {
|
||
"type": "custom:apexcharts-card",
|
||
"update_interval": "5m",
|
||
"header": {
|
||
"show": true,
|
||
"title": "Preisniveau",
|
||
"show_states": false
|
||
},
|
||
"apex_config": {
|
||
"chart": {
|
||
"animations": {
|
||
"enabled": false
|
||
},
|
||
"toolbar": {
|
||
"show": true,
|
||
"tools": {
|
||
"zoom": true,
|
||
"pan": true
|
||
}
|
||
},
|
||
"zoom": {
|
||
"enabled": true
|
||
}
|
||
},
|
||
"stroke": {
|
||
"curve": "stepline"
|
||
},
|
||
"fill": {
|
||
"type": "gradient",
|
||
"opacity": 0.45,
|
||
"gradient": {
|
||
"shade": "light",
|
||
"type": "vertical",
|
||
"shadeIntensity": 0.2,
|
||
"opacityFrom": [
|
||
0.5,
|
||
0.7,
|
||
0.7,
|
||
0.7,
|
||
0.7,
|
||
0.7
|
||
],
|
||
"opacityTo": 0.25,
|
||
"stops": [
|
||
50,
|
||
100
|
||
]
|
||
}
|
||
},
|
||
"dataLabels": {
|
||
"enabled": false
|
||
},
|
||
"legend": {
|
||
"show": true,
|
||
"position": "bottom",
|
||
"horizontalAlign": "center",
|
||
"markers": {
|
||
"size": 0
|
||
},
|
||
"itemMargin": {
|
||
"horizontal": 15
|
||
}
|
||
},
|
||
"grid": {
|
||
"show": true,
|
||
"borderColor": "rgba(144, 164, 174, 0.35)",
|
||
"strokeDashArray": 0,
|
||
"xaxis": {
|
||
"lines": {
|
||
"show": false
|
||
}
|
||
},
|
||
"yaxis": {
|
||
"lines": {
|
||
"show": true
|
||
}
|
||
}
|
||
},
|
||
"markers": {
|
||
"size": 0,
|
||
"hover": {
|
||
"size": 3
|
||
},
|
||
"colors": "#ff0000",
|
||
"fillOpacity": 0.5,
|
||
"strokeWidth": 5,
|
||
"strokeColors": "#ff0000",
|
||
"strokeOpacity": 0.15,
|
||
"showNullDataPoints": false
|
||
},
|
||
"tooltip": {
|
||
"enabled": true,
|
||
"shared": true,
|
||
"enabledOnSeries": [
|
||
2,
|
||
3,
|
||
4,
|
||
5,
|
||
6
|
||
],
|
||
"marker": {
|
||
"show": false
|
||
},
|
||
"x": {
|
||
"show": false
|
||
}
|
||
}
|
||
},
|
||
"yaxis": [
|
||
{
|
||
"id": "price",
|
||
"min": "${v_yaxis_min}",
|
||
"max": "${v_yaxis_max}",
|
||
"apex_config": {
|
||
"title": {
|
||
"text": "ct/kWh"
|
||
},
|
||
"decimalsInFloat": 0,
|
||
"forceNiceScale": true,
|
||
"showAlways": true,
|
||
"tickAmount": 4
|
||
}
|
||
},
|
||
{
|
||
"id": "highlight",
|
||
"min": 0,
|
||
"max": 1,
|
||
"show": false,
|
||
"opposite": true,
|
||
"apex_config": {
|
||
"forceNiceScale": true,
|
||
"tickAmount": 4
|
||
}
|
||
}
|
||
],
|
||
"now": {
|
||
"show": true,
|
||
"color": "#8e24aa",
|
||
"label": "🕒 LIVE"
|
||
},
|
||
"all_series_config": {
|
||
"float_precision": 2
|
||
},
|
||
"series": [
|
||
{
|
||
"entity": "sensor.zuhause_mindestpreis_heute",
|
||
"name": "▼ Bestpreis-Zeitraum",
|
||
"type": "area",
|
||
"color": "rgba(46, 204, 113, 0.05)",
|
||
"yaxis_id": "highlight",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": true
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', period_filter: 'best_price', resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true } }); const originalData = response.response.data; return originalData.map((point, i) => { const result = [point[0], point[1] === null ? null : 1]; result.originalPrice = point[1]; return result; });",
|
||
"stroke_width": 0
|
||
},
|
||
{
|
||
"entity": "sensor.zuhause_mindestpreis_heute",
|
||
"name": "▲ Spitzenpreis-Zeitraum",
|
||
"type": "area",
|
||
"color": "rgba(231, 76, 60, 0.06)",
|
||
"yaxis_id": "highlight",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": true,
|
||
"hidden_by_default": true
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', period_filter: 'peak_price', resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true } }); const originalData = response.response.data; return originalData.map((point, i) => { const result = [point[0], point[1] === null ? null : 1]; result.originalPrice = point[1]; return result; });",
|
||
"stroke_width": 0
|
||
},
|
||
{
|
||
"entity": "sensor.zuhause_mindestpreis_heute",
|
||
"name": "Sehr günstig",
|
||
"type": "area",
|
||
"color": "#2ecc71",
|
||
"yaxis_id": "price",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', level_filter: ['VERY_CHEAP'], resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true, connect_segments: true } }); return response.response.data;",
|
||
"stroke_width": 1.5
|
||
},
|
||
{
|
||
"entity": "sensor.zuhause_mindestpreis_heute",
|
||
"name": "Günstig",
|
||
"type": "area",
|
||
"color": "#27ae60",
|
||
"yaxis_id": "price",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', level_filter: ['CHEAP'], resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true, connect_segments: true } }); return response.response.data;",
|
||
"stroke_width": 1.5
|
||
},
|
||
{
|
||
"entity": "sensor.zuhause_preis_heute",
|
||
"name": "Normal",
|
||
"type": "area",
|
||
"color": "#f1c40f",
|
||
"yaxis_id": "price",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', level_filter: ['NORMAL'], resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true, connect_segments: true } }); return response.response.data;",
|
||
"stroke_width": 1.5
|
||
},
|
||
{
|
||
"entity": "sensor.zuhause_hochstpreis_heute",
|
||
"name": "Teuer",
|
||
"type": "area",
|
||
"color": "#e67e22",
|
||
"yaxis_id": "price",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', level_filter: ['EXPENSIVE'], resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true, connect_segments: true } }); return response.response.data;",
|
||
"stroke_width": 1.5
|
||
},
|
||
{
|
||
"entity": "sensor.zuhause_hochstpreis_heute",
|
||
"name": "Sehr teuer",
|
||
"type": "area",
|
||
"color": "#e74c3c",
|
||
"yaxis_id": "price",
|
||
"show": {
|
||
"legend_value": false,
|
||
"in_header": false,
|
||
"in_legend": false
|
||
},
|
||
"data_generator": "const response = await hass.callWS({ type: 'call_service', domain: 'tibber_prices', service: 'get_chartdata', return_response: true, service_data: { entry_id: '01KRH5M2Q1R4A4JVTBYN9KZZ70', level_filter: ['VERY_EXPENSIVE'], resolution: 'interval', output_format: 'array_of_arrays', insert_nulls: 'segments', subunit_currency: true, connect_segments: true } }); return response.response.data;",
|
||
"stroke_width": 1.5
|
||
}
|
||
],
|
||
"experimental": {
|
||
"hidden_by_default": true
|
||
},
|
||
"graph_span": "48h",
|
||
"span": {
|
||
"end": "day",
|
||
"offset": "${v_offset}"
|
||
}
|
||
}
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"cards": []
|
||
}
|
||
]
|
||
}
|
||
}
|
||
} |