NIBE & Home Assistant: Stromverbrauch der Wärmepumpe überwachen
Erfahre, wie du den Stromverbrauch deiner NIBE-Wärmepumpe in Home Assistant erfasst, als Sensor anlegst und übersichtlich in Lovelace visualisierst. Mit Modbus-Sensor, Template-Sensor und praktisch...
Überblick: NIBE Wärmepumpe und Stromverbrauch in Home Assistant visualisieren
Mit den folgenden Konfigurationsbeispielen kannst du den Stromverbrauch deiner NIBE-Wärmepumpe in Home Assistant erfassen, als Sensor anlegen und übersichtlich in der Oberfläche (Lovelace) darstellen. Die Lösung kombiniert Modbus-Sensoren, einen Template-Sensor für eine saubere Anzeige und eine Lovelace-Karte mit Messgerät und Verlaufsgraf. So hast du den aktuellen Verbrauch und den zeitlichen Verlauf immer im Blick.
Lovelace UI: Vertical-Stack für NIBE Stromverbrauch
Die Lovelace-Konfiguration zeigt dir den aktuellen Stromverbrauch als Messgerät (Gauge) und den Verlauf der letzten 24 Stunden in einem Diagramm. Das ist besonders praktisch, um Lastspitzen oder ungewöhnliche Verbrauchsmuster direkt zu erkennen.
1type: vertical-stack
2cards:
3 - type: gauge
4 entity: sensor.nibe_aktueller_stromverbrauch
5 name: Aktueller Stromverbrauch
6 min: 0
7 max: 10
8 severity:
9 - color: "#0da035" # Green
10 value: 3
11 - color: "#e0b400" # Yellow
12 value: 6
13 - color: "#a30707" # Red
14 value: 10
15
16 - type: history-graph
17 title: Verlauf Stromverbrauch (24h)
18 hours_to_show: 24
19 refresh_interval: 300
20 entities:
21 - entity: sensor.nibe_aktueller_stromverbrauchDu kannst diese Karten direkt in dein Lovelace-Dashboard einfügen. Passe sensor.nibe_aktueller_stromverbrauch ggf. an den Namen deines Sensors an.
Modbus-Konfiguration für NIBE S40
Mit Modbus liest du die Verbrauchswerte direkt aus deiner NIBE-Wärmepumpe aus. Die folgende Konfiguration legt mehrere Sensoren für verschiedene Energie- und Leistungswerte an. So bekommst du nicht nur den aktuellen Verbrauch, sondern auch Daten zur Heiz- und Warmwasserenergie.
1modbus:
2 - name: "nibeS40"
3 type: tcp
4 host: 192.168.0.1
5 port: 502
6 sensors:
7 - name: "Nibe heating energy last hour"
8 unique_id: "nibe_in_energy_heating"
9 data_type: int16
10 address: 2291
11 input_type: input
12 scale: 0.01
13 precision: 2
14 state_class: measurement
15 unit_of_measurement: "kWh"
16 slave: 1
17 scan_interval: 900
18
19 - name: "Nibe hot water energy last hour"
20 unique_id: "nibe_in_energy_hot_water"
21 data_type: int16
22 address: 2293
23 input_type: input
24 scale: 0.01
25 precision: 2
26 state_class: measurement
27 unit_of_measurement: "kWh"
28 slave: 1
29 scan_interval: 900
30
31 - name: "Nibe hot water add energy last hour"
32 unique_id: "nibe_in_add_energy_hot_water"
33 data_type: int16
34 address: 2301
35 input_type: input
36 scale: 0.01
37 precision: 2
38 state_class: measurement
39 unit_of_measurement: "kWh"
40 slave: 1
41 scan_interval: 900
42
43 - name: "Nibe heating add energy last hour"
44 unique_id: "nibe_in_add_energy_heating"
45 data_type: int16
46 address: 2299
47 input_type: input
48 scale: 0.01
49 precision: 2
50 state_class: measurement
51 unit_of_measurement: "kWh"
52 slave: 1
53 scan_interval: 900
54
55 - name: "nibe_current_power"
56 unique_id: "nibe_current_power"
57 data_type: int16
58 address: 2305
59 input_type: input
60 precision: 2
61 state_class: measurement
62 unit_of_measurement: "kW"
63 scale: 0.01
64 slave: 1
65 scan_interval: 60Diese Sensoren werden über die Modbus-Integration in Home Assistant eingebunden. Passe host und ggf. die Adressen an deine Anlage an.
Modbus-Konfiguration für WS300 (optional)
Falls du zusätzlich ein WS300-Gerät hast, kannst du weitere Sensoren für Temperaturen, Lüfterstufen und Luftqualität einbinden. Das folgende Beispiel zeigt typische Register für ein WS300-Modul.
Wichtig zum Kopieren: Der WS300-Hub gehört als weiterer
- name:-Eintrag unter denselbenmodbus:-Block wie „nibeS40" weiter oben. Leg kein zweitesmodbus:in derselben Datei an, sonst überschreibt der eine Block den anderen.
1 - name: ws300
2 type: tcp
3 host: 10.10.146.32
4 port: 502
5 sensors:
6 - name: "kwl_t_aul"
7 unit_of_measurement: "°C"
8 slave: 1
9 address: 703
10 input_type: holding
11 data_type: int16
12 precision: 1
13 scale: 0.1
14
15 - name: "kwl_t_zu"
16 unit_of_measurement: "°C"
17 slave: 1
18 address: 704
19 input_type: holding
20 data_type: int16
21 precision: 1
22 scale: 0.1
23
24 - name: "kwl_t_ab"
25 unit_of_measurement: "°C"
26 slave: 1
27 address: 705
28 input_type: holding
29 data_type: int16
30 precision: 1
31 scale: 0.1
32
33 - name: "kwl_t_fol"
34 unit_of_measurement: "°C"
35 slave: 1
36 address: 706
37 input_type: holding
38 data_type: int16
39 precision: 1
40 scale: 0.1
41
42 - name: "kwl_betriebsart"
43 unit_of_measurement: ""
44 slave: 1
45 address: 550
46 input_type: holding
47 data_type: uint16
48 precision: 0
49 scale: 1.0
50
51 - name: "kwl_lueftungsstufe"
52 unit_of_measurement: ""
53 slave: 1
54 address: 650
55 input_type: holding
56 data_type: uint16
57 precision: 0
58 scale: 1.0
59
60 - name: "kwl_drehzahl_zu"
61 unit_of_measurement: "U/min"
62 slave: 1
63 address: 651
64 input_type: holding
65 data_type: uint16
66 precision: 0
67 scale: 1.0
68
69 - name: "kwl_drehzahl_ab"
70 unit_of_measurement: "U/min"
71 slave: 1
72 address: 652
73 input_type: holding
74 data_type: uint16
75 precision: 0
76 scale: 1.0
77
78 - name: "kwl_volumenstrom_zu"
79 unit_of_measurement: "m³/h"
80 slave: 1
81 address: 653
82 input_type: holding
83 data_type: uint16
84 precision: 0
85 scale: 1.0
86
87 - name: "kwl_volumenstrom_ab"
88 unit_of_measurement: "m³/h"
89 slave: 1
90 address: 654
91 input_type: holding
92 data_type: uint16
93 precision: 0
94 scale: 1.0
95
96 - name: "kwl_restlaufzeit_filter_zu"
97 unit_of_measurement: "d"
98 slave: 1
99 address: 655
100 input_type: holding
101 data_type: uint16
102 precision: 0
103 scale: 1.0
104
105 - name: "kwl_restlaufzeit_filter_aul"
106 unit_of_measurement: "d"
107 slave: 1
108 address: 656
109 input_type: holding
110 data_type: uint16
111 precision: 0
112 scale: 1.0
113
114 - name: "kwl_restlaufzeit_filter_ab"
115 unit_of_measurement: "d"
116 slave: 1
117 address: 657
118 input_type: holding
119 data_type: uint16
120 precision: 0
121 scale: 1.0
122
123 - name: "kwl_rF_ab"
124 unit_of_measurement: "%"
125 slave: 1
126 address: 750
127 input_type: holding
128 data_type: uint16
129 precision: 0
130 scale: 1.0
131
132 - name: "kwl_CO2"
133 unit_of_measurement: "ppm"
134 slave: 1
135 address: 755
136 input_type: holding
137 data_type: uint16
138 precision: 0
139 scale: 1.0
140
141 - name: "kwl_schalt_zu"
142 unit_of_measurement: ""
143 slave: 1
144 address: 800
145 input_type: holding
146 data_type: uint16
147 precision: 0
148 scale: 1.0
149
150 - name: "kwl_schalt_ab"
151 unit_of_measurement: ""
152 slave: 1
153 address: 801
154 input_type: holding
155 data_type: uint16
156 precision: 0
157 scale: 1.0
158
159 - name: "kwl_schalt_bypass"
160 unit_of_measurement: ""
161 slave: 1
162 address: 802
163 input_type: holding
164 data_type: uint16
165 precision: 0
166 scale: 1.0Mit dieser Konfiguration hast du alle relevanten Werte deines WS300-Moduls ebenfalls in Home Assistant verfügbar.
Template-Sensor: NIBE aktueller Stromverbrauch
Um den Rohwert des Modbus-Sensors für die Anzeige aufzubereiten, empfiehlt sich ein Template-Sensor. Damit kannst du den Wert auf zwei Nachkommastellen runden und für die Visualisierung nutzen. Der Sensor ist die Basis für das Messgerät und die Verlaufsgrafik in Lovelace.
1template:
2 - sensor:
3 - name: "Nibe Aktueller Stromverbrauch"
4 unique_id: "nibe_current_power_consumption"
5 unit_of_measurement: "kW"
6 device_class: power
7 state_class: measurement
8 icon: "mdi:flash"
9 state: >-
10 {{ (states('sensor.nibe_current_power') | float(0)) | round(2) }}Der Sensor braucht den template:-Block. Unter sensor: funktioniert er nicht mehr, die alte Platform-Syntax für Template-Entitäten ist seit 2026.6 entfernt. Hast du schon ein template: in derselben Datei, häng den Sensor dort als weiteren - name:-Eintrag an, statt ein zweites template: anzulegen.
Fazit und Hinweise zur Integration
Mit dieser Kombination aus Modbus-Integration, Template-Sensor und Lovelace-Karten kannst du den Stromverbrauch deiner NIBE-Wärmepumpe in Home Assistant komfortabel überwachen. Die Lösung ist flexibel: Passe die Entitäten und Adressen an deine Installation an. Wenn du die Home Assistant UI-Konfiguration nutzt, kannst du die Karten auch direkt über die Oberfläche hinzufügen.
Weitere Informationen findest du in der offiziellen Dokumentation:
- Home Assistant: Modbus-Integration
- Home Assistant: Template Sensor
- Home Assistant: Messgeräte-Karte
- Home Assistant: Verlaufsgrafik-Karte
Hier siehst du im Video, wie „NIBE & Home Assistant: Stromverbrauch der Wärmepumpe im Griff haben“ in der Praxis umgesetzt wird.
