{ "__inputs": [ { "name": "DS_PROMETHEUS", "label": "Prometheus", "description": "", "type": "datasource", "pluginId": "prometheus", "pluginName": "Prometheus" } ], "__elements": {}, "__requires": [ { "type": "panel", "id": "bargauge", "name": "Bar gauge", "version": "" }, { "type": "grafana", "id": "grafana", "name": "Grafana", "version": "9.4.3" }, { "type": "datasource", "id": "prometheus", "name": "Prometheus", "version": "1.0.0" }, { "type": "panel", "id": "stat", "name": "Stat", "version": "" }, { "type": "panel", "id": "timeseries", "name": "Time series", "version": "" } ], "annotations": { "list": [ { "builtIn": 1, "datasource": { "type": "datasource", "uid": "grafana" }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "limit": 100, "name": "Annotations & Alerts", "showIn": 0, "target": { "limit": 100, "matchAny": false, "tags": [], "type": "dashboard" }, "type": "dashboard" } ] }, "description": "A dashboard that shows your home energy usage. Using Prometheus and Tasmota.", "editable": true, "fiscalYearStartMonth": 0, "gnetId": 13950, "graphTooltip": 0, "id": null, "links": [], "liveNow": false, "panels": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "min": 80, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 150 } ] }, "unit": "watt" }, "overrides": [ { "matcher": { "id": "byName", "options": "current_A" }, "properties": [ { "id": "unit", "value": "amp" } ] } ] }, "gridPos": { "h": 4, "w": 12, "x": 0, "y": 0 }, "id": 42, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "tasmota_active_power_W{job=~\"$job\"}", "interval": "", "legendFormat": "power_W", "range": true, "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "tasmota_current_A{job=~\"$job\"}", "hide": false, "interval": "", "legendFormat": "current_A", "range": true, "refId": "B" } ], "timeFrom": "now/M", "title": " Current Power Draw", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 150 } ] }, "unit": "watt" }, "overrides": [ { "matcher": { "id": "byName", "options": "current_A" }, "properties": [ { "id": "unit", "value": "amp" } ] } ] }, "gridPos": { "h": 4, "w": 12, "x": 12, "y": 0 }, "id": 50, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "mean" ], "fields": "", "values": false }, "textMode": "value" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "avg_over_time(tasmota_active_power_W{job=~\"$job\"}[$__range])", "interval": "", "legendFormat": "power_W", "range": true, "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "avg_over_time(tasmota_current_A{job=~\"$job\"}[$__range])", "hide": false, "interval": "", "legendFormat": "current_A", "range": true, "refId": "B" } ], "timeFrom": "now/M", "title": " Average Power Draw", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "semi-dark-orange", "value": null } ] }, "unit": "kwatth" }, "overrides": [] }, "gridPos": { "h": 6, "w": 6, "x": 0, "y": 4 }, "id": 18, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "center", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "auto" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range])", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now/d", "title": "Today's Power Total", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "decimals": 2, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "currencyUSD" }, "overrides": [] }, "gridPos": { "h": 6, "w": 6, "x": 6, "y": 4 }, "id": 39, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "auto" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range]) * .276", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now/d", "title": "Today's Power Cost", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "light-orange", "value": null } ] }, "unit": "kwatth" }, "overrides": [] }, "gridPos": { "h": 3, "w": 6, "x": 12, "y": 4 }, "id": 9, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "auto" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range])", "format": "time_series", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now/M", "title": "This Month Total Power Usage", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [ { "matcher": { "id": "byType", "options": "number" }, "properties": [ { "id": "decimals", "value": 2 }, { "id": "unit", "value": "currencyUSD" } ] } ] }, "gridPos": { "h": 3, "w": 6, "x": 18, "y": 4 }, "id": 11, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "value" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range])*.276", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now/M", "title": "Cost This Month", "transformations": [], "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "light-orange", "value": null } ] }, "unit": "kwatth" }, "overrides": [] }, "gridPos": { "h": 3, "w": 6, "x": 12, "y": 7 }, "id": 53, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "auto" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range])", "format": "time_series", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now-1M/M", "title": "Last Month Total Power Usage", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [ { "matcher": { "id": "byType", "options": "number" }, "properties": [ { "id": "decimals", "value": 2 }, { "id": "unit", "value": "currencyUSD" } ] } ] }, "gridPos": { "h": 3, "w": 6, "x": 18, "y": 7 }, "id": 52, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "text": {}, "textMode": "value" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range])*.276", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now-1M/M", "title": "Cost Last Month", "transformations": [], "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 150 } ] }, "unit": "watt" }, "overrides": [ { "matcher": { "id": "byName", "options": "current_A" }, "properties": [ { "id": "unit", "value": "amp" } ] } ] }, "gridPos": { "h": 4, "w": 12, "x": 0, "y": 10 }, "id": 51, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "textMode": "value" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "max_over_time(tasmota_active_power_W{job=~\"$job\"}[$__range])", "interval": "", "legendFormat": "power_W", "range": true, "refId": "A" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "max_over_time(tasmota_current_A{job=~\"$job\"}[$__range])", "hide": false, "interval": "", "legendFormat": "current_A", "range": true, "refId": "B" } ], "timeFrom": "now/M", "title": " Peak Power Draw", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "min": -1, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 125 } ] }, "unit": "volt" }, "overrides": [] }, "gridPos": { "h": 4, "w": 6, "x": 12, "y": 10 }, "id": 44, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "max" ], "fields": "", "values": false }, "textMode": "auto" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "max_over_time(tasmota_voltage_V{job=~\"$job\"}[$__range])", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now/M", "title": "Peak Voltage", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 3 } ] }, "unit": "kwatth" }, "overrides": [] }, "gridPos": { "h": 4, "w": 6, "x": 18, "y": 10 }, "id": 43, "options": { "colorMode": "value", "graphMode": "none", "justifyMode": "auto", "orientation": "auto", "reduceOptions": { "calcs": [ "max" ], "fields": "", "values": false }, "textMode": "auto" }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "max_over_time(tasmota_energy_today_kWh_total{job=~\"$job\"}[$__range])", "interval": "", "legendFormat": "", "range": true, "refId": "A" } ], "timeFrom": "now/M", "title": "Peak Day Usage", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 14, "gradientMode": "opacity", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "smooth", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "normal" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "min": 70, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "watt" }, "overrides": [ { "matcher": { "id": "byName", "options": "Time" }, "properties": [ { "id": "displayName" } ] } ] }, "gridPos": { "h": 9, "w": 12, "x": 0, "y": 14 }, "hideTimeOverride": false, "id": 23, "interval": "1h", "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "single", "sort": "none" } }, "pluginVersion": "8.1.2", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "tasmota_active_power_W{job=~\"$job\"}", "format": "time_series", "interval": "", "legendFormat": "{{ device }}", "range": true, "refId": "A" } ], "timeFrom": "now/M", "title": "Power Usage", "transformations": [], "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "#EAB839", "value": 60 }, { "color": "red", "value": 100 } ] }, "unit": "kwatth" }, "overrides": [] }, "gridPos": { "h": 9, "w": 12, "x": 12, "y": 14 }, "id": 6, "options": { "displayMode": "lcd", "minVizHeight": 10, "minVizWidth": 0, "orientation": "horizontal", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showUnfilled": true, "text": {} }, "pluginVersion": "9.4.3", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "delta(tasmota_energy_kWh_total{job=~\"$job\"}[$__range])", "format": "table", "instant": false, "interval": "", "legendFormat": "{{friendly_name}} ", "refId": "A" } ], "timeFrom": "now/M", "title": "Month Power Total", "transformations": [], "type": "bargauge" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "description": "", "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "bars", "fillOpacity": 100, "gradientMode": "none", "hideFrom": { "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "linear", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "normal" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "max": 5, "min": 0, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "kwatth" }, "overrides": [ { "matcher": { "id": "byName", "options": "Time" }, "properties": [ { "id": "displayName" } ] } ] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 23 }, "hideTimeOverride": false, "id": 37, "maxDataPoints": 6, "options": { "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "single", "sort": "none" } }, "pluginVersion": "8.3.4", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "exemplar": true, "expr": "tasmota_energy_today_kWh_total{}", "format": "time_series", "interval": "", "legendFormat": "{{ device }}", "refId": "A" } ], "timeFrom": "7d", "title": "Daily Power Usage ", "transformations": [], "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "fieldConfig": { "defaults": { "color": { "mode": "palette-classic" }, "custom": { "axisCenteredZero": false, "axisColorMode": "text", "axisLabel": "", "axisPlacement": "auto", "barAlignment": 0, "drawStyle": "line", "fillOpacity": 61, "gradientMode": "none", "hideFrom": { "graph": false, "legend": false, "tooltip": false, "viz": false }, "lineInterpolation": "smooth", "lineWidth": 1, "pointSize": 5, "scaleDistribution": { "type": "linear" }, "showPoints": "never", "spanNulls": true, "stacking": { "group": "A", "mode": "none" }, "thresholdsStyle": { "mode": "off" } }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 23 }, "id": 25, "options": { "graph": {}, "legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "single", "sort": "none" } }, "pluginVersion": "7.4.0", "targets": [ { "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "editorMode": "code", "exemplar": true, "expr": "rate(tasmota_active_power_W{job=~\"$job\"}[1h])", "interval": "", "legendFormat": " Rate of Power", "range": true, "refId": "A" } ], "timeFrom": "7d", "title": "Power Spikes Past Week", "type": "timeseries" } ], "refresh": "5s", "revision": 1, "schemaVersion": 38, "style": "dark", "tags": [], "templating": { "list": [ { "current": {}, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "definition": "label_values(job)", "description": "variable to filter plugs by job", "hide": 0, "includeAll": true, "label": "Job", "multi": false, "name": "job", "options": [], "query": { "query": "label_values(job)", "refId": "StandardVariableQuery" }, "refresh": 1, "regex": "/^tasmota-/", "skipUrlSync": false, "sort": 0, "type": "query" } ] }, "time": { "from": "now-30d", "to": "now" }, "timepicker": { "hidden": false, "nowDelay": "", "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ] }, "timezone": "", "title": "Tasmota Plug Usage", "uid": "_nyxoAfMk3", "version": 10, "weekStart": "" }