apiVersion: v1 kind: ConfigMap metadata: name: grafana-dashboard-shelly-ws90 namespace: monitoring labels: grafana_dashboard: "1" annotations: grafana_dashboard_folder: "🏡 Home" data: shelly-ws90.json: | { "uid": "shelly-ws90", "title": "🌦️ Shelly WS90 Weather Console", "tags": ["home", "weather", "outdoor", "prometheus"], "timezone": "browser", "schemaVersion": 39, "version": 1, "refresh": "30s", "editable": false, "graphTooltip": 2, "time": { "from": "now-24h", "to": "now" }, "panels": [ { "id": 1, "type": "stat", "title": "📶 Signal Strength", "gridPos": { "x": 0, "y": 0, "w": 4, "h": 3 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_unit_lqi{entity=\"sensor.shelly_ws90_linkquality\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "none", "min": 0, "max": 255, "thresholds": { "mode": "absolute", "steps": [ { "color": "red", "value": null }, { "color": "orange", "value": 50 }, { "color": "yellow", "value": 100 }, { "color": "green", "value": 150 } ] }, "color": { "mode": "thresholds" } } }, "options": { "graphMode": "none", "colorMode": "value", "textMode": "auto", "reduceOptions": { "values": false, "calcs": ["lastNotNull"] } } }, { "id": 2, "type": "stat", "title": "🔋 Battery Level", "gridPos": { "x": 4, "y": 0, "w": 4, "h": 3 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_battery_percent{entity=\"sensor.shelly_ws90_batterie\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "percent", "min": 0, "max": 100, "thresholds": { "mode": "absolute", "steps": [ { "color": "red", "value": null }, { "color": "orange", "value": 20 }, { "color": "green", "value": 50 } ] }, "color": { "mode": "thresholds" } } }, "options": { "graphMode": "none", "colorMode": "value", "textMode": "auto", "reduceOptions": { "values": false, "calcs": ["lastNotNull"] } } }, { "id": 3, "type": "stat", "title": "🧭 Barometric Pressure", "gridPos": { "x": 8, "y": 0, "w": 8, "h": 3 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_atmospheric_pressure_hpa{entity=\"sensor.shelly_ws90_atmospharischer_druck\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "pressurehpa", "decimals": 1, "thresholds": { "mode": "absolute", "steps": [ { "color": "blue", "value": null }, { "color": "green", "value": 1000 }, { "color": "orange", "value": 1020 } ] }, "color": { "mode": "value" } } }, "options": { "graphMode": "none", "colorMode": "value", "textMode": "auto", "reduceOptions": { "values": false, "calcs": ["lastNotNull"] } } }, { "id": 4, "type": "stat", "title": "☀️ Light Level", "gridPos": { "x": 16, "y": 0, "w": 8, "h": 3 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_illuminance_lx{entity=\"sensor.shelly_ws90_illuminance\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "lux", "decimals": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "purple", "value": null }, { "color": "orange", "value": 1000 }, { "color": "yellow", "value": 5000 } ] }, "color": { "mode": "value" } } }, "options": { "graphMode": "none", "colorMode": "value", "textMode": "auto", "reduceOptions": { "values": false, "calcs": ["lastNotNull"] } } }, { "id": 5, "type": "stat", "title": "🌡️ Outdoor Temperature", "gridPos": { "x": 0, "y": 3, "w": 12, "h": 8 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_temperature_celsius{entity=\"sensor.shelly_ws90_temperatur\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "celsius", "decimals": 1, "thresholds": { "mode": "absolute", "steps": [ { "color": "#5794F2", "value": null }, { "color": "#73BF69", "value": 15 }, { "color": "#FFD700", "value": 22 }, { "color": "#FF7383", "value": 26 }, { "color": "#C4162A", "value": 30 } ] }, "color": { "mode": "thresholds" } } }, "options": { "graphMode": "area", "colorMode": "background", "textMode": "auto", "reduceOptions": { "values": false, "calcs": ["lastNotNull"] } } }, { "id": 6, "type": "stat", "title": "💧 Outdoor Humidity", "gridPos": { "x": 12, "y": 3, "w": 12, "h": 8 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_humidity_percent{entity=\"sensor.shelly_ws90_luftfeuchtigkeit\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "percent", "decimals": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "#FF7383", "value": null }, { "color": "#FFD700", "value": 30 }, { "color": "#73BF69", "value": 40 }, { "color": "#5794F2", "value": 70 } ] }, "color": { "mode": "thresholds" } } }, "options": { "graphMode": "area", "colorMode": "background", "textMode": "auto", "reduceOptions": { "values": false, "calcs": ["lastNotNull"] } } }, { "id": 7, "type": "gauge", "title": "💨 Wind Speed", "gridPos": { "x": 0, "y": 11, "w": 6, "h": 6 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_wind_speed_km_per_h{entity=\"sensor.shelly_ws90_wind_speed\"} or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "velocitykmh", "min": 0, "max": 100, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 15 }, { "color": "orange", "value": 30 }, { "color": "red", "value": 50 } ] }, "color": { "mode": "thresholds" } } }, "options": { "reduceOptions": { "values": false, "calcs": ["lastNotNull"] }, "orientation": "auto", "showThresholdLabels": true, "showThresholdMarkers": true } }, { "id": 8, "type": "gauge", "title": "🧭 Wind Direction", "gridPos": { "x": 6, "y": 11, "w": 6, "h": 6 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_wind_direction_u0xb0{entity=\"sensor.shelly_ws90_wind_direction\"} or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "deg", "min": 0, "max": 360, "thresholds": { "mode": "absolute", "steps": [ { "color": "blue", "value": null } ] }, "color": { "mode": "fixed" } } }, "options": { "reduceOptions": { "values": false, "calcs": ["lastNotNull"] }, "orientation": "auto", "showThresholdLabels": true, "showThresholdMarkers": true } }, { "id": 9, "type": "gauge", "title": "🌧️ Precipitation Rate", "gridPos": { "x": 12, "y": 11, "w": 6, "h": 6 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_precipitation_intensity_mm_per_h{entity=\"sensor.shelly_ws90_rain_rate\"} or on() vector(0)", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "lengthmm", "min": 0, "max": 50, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "blue", "value": 0.1 }, { "color": "dark-blue", "value": 5 } ] }, "color": { "mode": "thresholds" } } }, "options": { "reduceOptions": { "values": false, "calcs": ["lastNotNull"] }, "orientation": "auto", "showThresholdLabels": true, "showThresholdMarkers": true } }, { "id": 10, "type": "gauge", "title": "🔆 Solar Illuminance", "gridPos": { "x": 18, "y": 11, "w": 6, "h": 6 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_illuminance_lx{entity=\"sensor.shelly_ws90_illuminance\"}", "refId": "A" } ], "fieldConfig": { "defaults": { "unit": "lux", "min": 0, "max": 100000, "thresholds": { "mode": "absolute", "steps": [ { "color": "blue", "value": null }, { "color": "orange", "value": 1000 }, { "color": "yellow", "value": 10000 } ] }, "color": { "mode": "thresholds" } } }, "options": { "reduceOptions": { "values": false, "calcs": ["lastNotNull"] }, "orientation": "auto", "showThresholdLabels": true, "showThresholdMarkers": true } }, { "id": 11, "type": "timeseries", "title": "📈 Temperature & Humidity History (24h)", "gridPos": { "x": 0, "y": 17, "w": 12, "h": 8 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_temperature_celsius{entity=\"sensor.shelly_ws90_temperatur\"}", "legendFormat": "Temperature", "refId": "A" }, { "expr": "homeassistant_sensor_humidity_percent{entity=\"sensor.shelly_ws90_luftfeuchtigkeit\"}", "legendFormat": "Humidity", "refId": "B" } ], "fieldConfig": { "defaults": { "custom": { "lineWidth": 2, "fillOpacity": 10, "spanNulls": true, "showPoints": "never" } }, "overrides": [ { "matcher": { "id": "byName", "options": "Temperature" }, "properties": [ { "id": "unit", "value": "celsius" }, { "id": "color", "value": { "fixedColor": "orange", "mode": "fixed" } } ] }, { "matcher": { "id": "byName", "options": "Humidity" }, "properties": [ { "id": "unit", "value": "percent" }, { "id": "color", "value": { "fixedColor": "blue", "mode": "fixed" } }, { "id": "custom.axisPlacement", "value": "right" } ] } ] }, "options": { "legend": { "displayMode": "table", "placement": "bottom", "calcs": ["lastNotNull", "min", "max", "mean"] }, "tooltip": { "mode": "multi", "sort": "desc" } } }, { "id": 12, "type": "timeseries", "title": "📉 Pressure & Precipitation History (24h)", "gridPos": { "x": 12, "y": 17, "w": 12, "h": 8 }, "datasource": { "type": "prometheus", "uid": "prometheus" }, "targets": [ { "expr": "homeassistant_sensor_atmospheric_pressure_hpa{entity=\"sensor.shelly_ws90_atmospharischer_druck\"}", "legendFormat": "Pressure", "refId": "A" }, { "expr": "homeassistant_sensor_precipitation_intensity_mm_per_h{entity=\"sensor.shelly_ws90_rain_rate\"} or on() vector(0)", "legendFormat": "Rain Intensity", "refId": "B" } ], "fieldConfig": { "defaults": { "custom": { "lineWidth": 2, "fillOpacity": 10, "spanNulls": true, "showPoints": "never" } }, "overrides": [ { "matcher": { "id": "byName", "options": "Pressure" }, "properties": [ { "id": "unit", "value": "pressurehpa" }, { "id": "color", "value": { "fixedColor": "purple", "mode": "fixed" } } ] }, { "matcher": { "id": "byName", "options": "Rain Intensity" }, "properties": [ { "id": "unit", "value": "lengthmm" }, { "id": "color", "value": { "fixedColor": "dark-blue", "mode": "fixed" } }, { "id": "custom.axisPlacement", "value": "right" } ] } ] }, "options": { "legend": { "displayMode": "table", "placement": "bottom", "calcs": ["lastNotNull", "min", "max", "mean"] }, "tooltip": { "mode": "multi", "sort": "desc" } } } ] }