TapHome

Stiebel Eltron HPA-O Wärmepumpe

Modbus TCP
Submitted by
Last updated: 03. 2026

Erfordert externes Gateway

Stiebel Eltron ISG web / ISG plus

Stiebel Eltron HPA-O Wärmepumpe

Die Stiebel Eltron HPA-O ist eine Luft-Wärmepumpe aus der Premium-Serie. Sie hat keine direkte Modbus-Schnittstelle — die Kommunikation erfordert das Gateway ISG web oder ISG plus (Internet Service Gateway), das die Register der Wärmepumpe über Modbus TCP im lokalen Netzwerk bereitstellt.

Die TapHome-Vorlage bietet Betriebsmodussteuerung, Comfort- und ECO-Temperaturvorgaben für zwei Heizkreise und Warmwasser (WW), Außentemperatur- und Warmwassertemperaturüberwachung, Wasserdurchfluss, Laufzeitzähler und Gesamtwärmeerzeugung.

Hardwareanschluss

Das ISG-Gateway verbindet sich mit dem WPM-Regler der Wärmepumpe über den CAN-Bus (interne Verkabelung). Für die Modbus-TCP-Kommunikation mit TapHome verbinden Sie das ISG-Gateway über ein Standard-Ethernet-Kabel (RJ45) mit dem lokalen Netzwerk.

  • Protokoll: Modbus TCP
  • Port: 502
  • Slave-ID: 1 (fest)
  • Standard-IP ISG: 192.168.0.126

Das ISG-Gateway kann Modbus TCP nicht gleichzeitig mit anderen ISG-Softwareschnittstellen betreiben (z. B. ServiceWelt Fernüberwachung). Modbus-Lesezugriff ist neben der EMI-Energiemanagement-Erweiterung möglich, erfordert jedoch ISG-Firmware Version 12.1.2 oder höher.

Konfiguration

Modbus-Kommunikation aktivieren

Das ISG-Gateway hat Modbus TCP standardmäßig auf Port 502 aktiviert. Eine spezielle Aktivierung ist nicht erforderlich. Die IP-Adresse kann über den Reiter „Profile" in der SERVICEWELT konfiguriert werden.

Beim Import der Vorlage in TapHome geben Sie an:

  • IP-Adresse — die IP-Adresse des ISG-Gateways im lokalen Netzwerk (Standard: 192.168.0.126)
  • Slave-ID — Modbus-Slave-Adresse (fest auf 1)

Wenn das ISG-Gateway über einen Router (DHCP) verbunden ist, weisen Sie eine statische IP oder DHCP-Reservierung zu, damit sich die Adresse nach einem Stromausfall nicht ändert. Bei Direktverbindung (Punkt-zu-Punkt) behält das ISG seine Standardadresse 192.168.0.126.

Registeradressierung

Die ISG-Dokumentation verwendet 1-basierte Registeradressen. Die TapHome-Vorlage verwendet 0-basierte Adressen (Versatz von 1). Zum Beispiel entspricht ISG-Register 507 (OUTSIDE TEMPERATURE) der Vorlagenadresse A:506.

Gerätefunktionen

Betriebsmodussteuerung

Der Umschalter Betriebsmodus schreibt in das Holding-Register H:1500 und ermöglicht die Auswahl eines von sechs Modi:

WertModusBeschreibung
0NotbetriebMinimaler Betrieb, nur Zusatzheizung
1BereitschaftsmodusNur Frostschutz
2ProgrammbetriebWechsel zwischen ECO und Comfort nach WPM-Wochenprogramm
3Comfort-ModusKonstante Comfort-Temperaturvorgaben
4ECO-ModusEnergiesparende reduzierte Temperaturvorgaben
5WW-ModusNur Warmwasserbereitung, keine Raumheizung

Beim Ändern des Betriebsmodus über Modbus ändern Sie in einem Schritt nur den Modus ODER eine Temperaturvorgabe — nicht beides gleichzeitig. Die Wärmepumpe muss sich nach jeder Änderung stabilisieren.

Heizkreis-Temperaturvorgaben

Die Vorlage stellt vier Thermostatgeräte für zwei Heizkreise bereit, jeweils mit Comfort- und ECO-Sollwerten:

  • HC1 Comfort-Temperatur — liest aktuelle HC1-Temperatur von A:507, schreibt Comfort-Sollwert auf H:1501 (Bereich 5–30 °C)
  • HC1 ECO-Temperatur — liest aktuelle HC1-Temperatur von A:507, schreibt ECO-Sollwert auf H:1502 (Bereich 5–30 °C)
  • HC2 Comfort-Temperatur — liest aktuelle HC2-Temperatur von A:510, schreibt Comfort-Sollwert auf H:1504 (Bereich 5–30 °C)
  • HC2 ECO-Temperatur — liest aktuelle HC2-Temperatur von A:510, schreibt ECO-Sollwert auf H:1505 (Bereich 5–30 °C)

Der tatsächliche Betriebssollwert hängt vom gewählten Betriebsmodus ab — Comfort-Modus verwendet den Comfort-Wert, ECO-Modus den ECO-Wert und Programmbetrieb wechselt zwischen beiden nach dem WPM-Zeitplan.

Warmwasser-Temperaturvorgaben

Zwei Thermostatgeräte steuern die Warmwassertemperatur:

  • WW Comfort-Temperatur — liest aktuelle WW-Temperatur von A:521, schreibt Comfort-Sollwert auf H:1509 (Bereich 10–60 °C)
  • WW ECO-Temperatur — liest aktuelle WW-Temperatur von A:521, schreibt ECO-Sollwert auf H:1510 (Bereich 10–60 °C)
Sensorüberwachung

Die Vorlage enthält mehrere schreibgeschützte Sensoren:

  • Außentemperatur — Umgebungstemperatur von A:506 (°C, /10)
  • Aktuelle WW-Temperatur — aktuelle Warmwasserspeichertemperatur von A:521 (°C, /10)
  • Wasserdurchfluss — Wasserdurchfluss der Wärmepumpe von A:547 (l/min, /10). Kann 0 anzeigen, wenn der Durchflusssensor nicht installiert ist.
  • Wärmemenge — gesamte erzeugte Wärmeenergie, kombiniert aus Registern A:3502 (MWh) und A:3501 (kWh), angezeigt in MWh
  • Laufzeit Heizung — kumulative Laufzeit der Wärmepumpe für Raumheizung von A:3643 (Stunden)
  • Laufzeit WW — kumulative Laufzeit der Wärmepumpe für Warmwasser von A:3644 (Stunden)
Serviceattribute

Die Vorlage stellt 27 diagnostische Serviceattribute bereit, die in der TapHome-Gerätedetailansicht zugänglich sind. Dazu gehören:

  • Regleridentifikation — identifiziert den angeschlossenen WPM-Reglertyp (WPMsystem, LWZ, WPM 3, WPM 3i)
  • Betriebsstatusbits — Echtzeitflags für HC1/HC2-Pumpe, Aufheizprogramm, NHZ-Stufen, WP im Heiz-/WW-Modus, Kompressor läuft, Sommerbetrieb, Kühlbetrieb, Abtauung und Flüstermodus 1/2
  • Systemsensoren — Puffertemperatur (Ist und Soll), Rücklauftemperatur, Heißgastemperatur, Niedrig-/Mittel-/Hochdruck
  • Störungsüberwachung — Störungsstatus, aktive Fehlernummer, Abtauzustand, Nachrichtennummer
Weitere Funktionen

Das ISG-Gateway stellt zusätzliche Register bereit, die derzeit nicht in der TapHome-Vorlage enthalten sind. Dazu gehören Vorlauf- und Rücklauftemperatursensoren, Quellentemperatur, Festwertbetriebssteuerung, Systemreset-Befehle und SG-Ready-Eingänge für PV-Optimierung. Umfassende Energiedatenregister liefern tägliche und Gesamtzähler für erzeugte Wärme und verbrauchten Strom, getrennt nach Heizung und Warmwasser. Diese können in einer zukünftigen Vorlagenaktualisierung hinzugefügt werden.

Fehlerbehebung

Keine Modbus-Kommunikation
  1. Überprüfen Sie, ob das Ethernet-Kabel mit dem ISG-Gateway verbunden ist (nicht direkt mit der Wärmepumpe)
  2. Bestätigen Sie die ISG-IP-Adresse — prüfen Sie die DHCP-Lease-Tabelle des Routers oder verwenden Sie die Standardadresse 192.168.0.126
  3. Stellen Sie sicher, dass TapHome Core und das ISG-Gateway im selben Netzwerk/Subnetz sind
  4. Prüfen Sie, ob Port 502 nicht durch eine Firewall blockiert wird
  5. Überprüfen Sie, dass keine andere ISG-Softwareschnittstelle (z. B. ServiceWelt Fernzugriff) die Verbindung aktiv nutzt — Modbus kann nicht gleichzeitig mit anderen Schnittstellen außer schreibgeschütztem EMI betrieben werden
Wert 32768 für Sensoren zurückgegeben

Das ISG gibt den Ersatzwert 32768 (0x8000) für Register zurück, die auf dem angeschlossenen Regler nicht verfügbar sind. Dies bedeutet typischerweise, dass der Sensor nicht installiert ist oder das Register vom spezifischen WPM-Reglertyp nicht unterstützt wird.

Störungen lassen sich nicht über Modbus löschen

Systemstörungen können nur über die SERVICEWELT-Benutzeroberfläche am ISG quittiert werden — sie können nicht über Modbus gelöscht werden. Die Vorlagenattribute für Störungsstatus und aktive Fehlernummer ermöglichen die Störungsüberwachung, aber eine manuelle Quittierung ist erforderlich.

Verfügbare Geräte

Stiebel Eltron HPA-0 Modul
Serviceattribute
Regler-Identifikationidentifies connected WPM controller type from A:5001 (ISG 5002); values: WPMsystem (449), LWZ Others (103), LWZ 304/404/504 (104), WPM 3 (390), WPM 3i (391)
Betriebsstatus (Überschrift)section header for operating status bit flags — no register, grouping label only
HK1-Pumpebit 0 of A:2500 (ISG 2501) — heating circuit 1 pump status (On/Off)
HK2-Pumpebit 1 of A:2500 (ISG 2501) — heating circuit 2 pump status (On/Off)
Aufheizprogrammbit 2 of A:2500 (ISG 2501) — heat-up program active (On/Off)
NHZ-Stufen aktivbit 3 of A:2500 (ISG 2501) — reheating stages running (On/Off)
WP im Heizbetriebbit 4 of A:2500 (ISG 2501) — heat pump in space heating mode (On/Off)
WP im WW-Betriebbit 5 of A:2500 (ISG 2501) — heat pump in DHW heating mode (On/Off)
Kompressor läuftbit 6 of A:2500 (ISG 2501) — compressor running (On/Off)
Sommerbetriebbit 7 of A:2500 (ISG 2501) — summer mode active (On/Off)
Kühlbetriebbit 8 of A:2500 (ISG 2501) — cooling mode active (On/Off)
Min. 1 IWS im Abtaubetriebbit 9 of A:2500 (ISG 2501) — at least one heat pump in defrost mode (On/Off)
Leisebetrieb 1bit 10 of A:2500 (ISG 2501) — silent mode 1 active (On/Off)
Leisebetrieb 2bit 11 of A:2500 (ISG 2501) — silent mode 2 active, HP off (On/Off)
Weitere Attribute (Überschrift)section header for additional sensor values — no register, grouping label only
Außentemperatur [°C]reads A:506 (ISG 507) / 10 — outside temperature; duplicate of device #12
Aktuelle Puffertemperatur [°C]reads A:517 (ISG 518, UInt16) / 10 — actual buffer tank temperature
Rücklauftemperatur [°C]reads A:541 (ISG 542, UInt16) / 10 — return temperature from HP 1
Soll-Puffertemperatur [°C]reads A:518 (ISG 519) / 10 — setpoint buffer temperature
Heißgastemperatur [°C]reads A:543 (ISG 544) / 10 — hot gas temperature HP 1
Niederdruck [Bar]reads A:544 (ISG 545) / 100 — low pressure HP 1
Mitteldruck [Bar]reads A:545 (ISG 546) / 100 — mean pressure HP 1
Hochdruck [Bar]reads A:546 (ISG 547) / 100 — high pressure HP 1
Abtauzustandreads A:2505 (ISG 2506) — defrost status: 0=Off, 1=Initiated
Fehlerstatusreads A:2504 (ISG 2505) — system fault: 0=No Fault, 1=Fault
Meldungsnummerreads A:2507 (ISG 2508) — message number (WPMsystem only)
Aktive Fehlernummerreads A:2506 (ISG 2507) — active fault number (0–65535)

Stiebel Eltron HPA-0 13 C Premium

Lesen (Modul)
Reg2500:=MODBUSR(A, 2500, Int16);
Reg5001:=MODBUSR(A, 5001, Int16);
Reg2505:=MODBUSR(A, 2505, Int16);
If Reg5001=449
ContIdent:="WPMsystem";
ELSEif Reg5001=103
ContIdent:="LWZ Others";
ELSEIF Reg5001=104
ContIdent:="LWZ 304/404/504 SOL, 5/8 CS Premium";
ELSEIF Reg5001=390
ContIdent:="WPM 3";
ELSEIF Reg5001=391
ContIdent:="WPM 3i";
ELSE
ContIdent:="Unknown";
END
IF Reg2505=1
Defrost:="Initiated";
ELSE
Defrost:="Off";
END
Serviceattribute
Controller Ident.
ContIdent
Operating Status
HC1 Pump
If(getbit(reg2500,0), "On", "Off")
HC2 Pump
If(getbit(reg2500,1), "On", "Off")
Heat-Up Program
If(getbit(reg2500,2), "On", "Off")
NHZ Settigs Run.
If(getbit(reg2500,3), "On", "Off")
HP In Heating Mode
If(getbit(reg2500,4), "On", "Off")
HP In DHW Mode
If(getbit(reg2500,5), "On", "Off")
Compressor Running
If(getbit(reg2500,6), "On", "Off")
Summer Mode
If(getbit(reg2500,7), "On", "Off")
Cooling Mode
If(getbit(reg2500,8), "On", "Off")
Min.1 IWS In Defrost
If(getbit(reg2500,9), "On", "Off")
Silent Mode 1
If(getbit(reg2500,10), "On", "Off")
Silent Mode 2
If(getbit(reg2500,11), "On", "Off")
Other Attributes
Outdoor Temp. [°C]
MODBUSR(A, 506, Int16)/10
Actual Buffer Temp [°C]
MODBUSR(A, 517, uint16)/10
Return Temp [°C]
MODBUSR(A, 541, uint16)/10
Set Buffer Temp [°C]
MODBUSR(A, 518, Int16)/10
Hot Gas Temp. [°C]
MODBUSR(A, 543, Int16)/10
Low Pressure [Bar]
MODBUSR(A, 544, Int16)/100
Mean Pressure [Bar]
MODBUSR(A, 545, Int16)/100
HiPressure [Bar]
MODBUSR(A, 546, Int16)/100
Defrost State
Defrost
Fault Status
MODBUSR(A, 2504, Int16)
Message No.
MODBUSR(A, 2507, Int16)
Active Error No.
MODBUSR(A, 2506, Int16)
Aktuelle WW-Temperatur Variable Nur lesen

Aktuelle Warmwasserspeichertemperatur

Register: A:521 Int16 Einheit: °C numeric (/10)

Aktuelle WW-Temperatur

Lesen
MODBUSR(A, 521, Int16)/10
Laufzeit WW (h) Variable Nur lesen

Kumulative Laufzeit der Wärmepumpe für Warmwasserbereitung in Stunden

Register: A:3644 Int16 Einheit: h numeric

Laufzeit WW (h)

Lesen
MODBUSR(A, 3644, Int16)
Laufzeit Heizung (h) Variable Nur lesen

Kumulative Laufzeit der Wärmepumpe für Raumheizung in Stunden

Register: A:3643 Int16 Einheit: h numeric

Laufzeit Heizung (h)

Lesen
MODBUSR(A, 3643, Int16)
Wärmemenge Variable Nur lesen

Gesamte erzeugte Wärmeenergie in MWh — kombiniert MWh- und kWh-Register

Register: A:3502 + A:3501 Int16 + Int16 Einheit: MWh composite (MSB + LSB/1000)

Wärmemenge

Lesen
(MODBUSR(A, 3502, Int16) + (MODBUSR(A, 3501, Int16)/1000))
Betriebsmodus Mehrwertschalter

Betriebsmodus der Wärmepumpe — Notbetrieb, Bereitschaft, Programm, Comfort, ECO, WW

Register: H:1500 Int16 numeric
Werte / Zustände: Notbetrieb · Bereitschaftsmodus · Programmbetrieb · Comfort-Modus · ECO-Modus · WW-Modus

Betriebsmodus

Schaltzustand lesen
MODBUSR(H, 1500, Int16)
Schaltzustand schreiben
MODBUSW(H, 1500, Int16, Mu)
HC1 ECO-Temperatur Thermostat

Heizkreis-1-Thermostat — aktuelle Temperatur und ECO-Sollwert (5–30 °C)

Register: A:507 (current) / H:1502 (setpoint) Int16 Einheit: °C numeric (/10)

HC1 ECO-Temperatur

Temperatur lesen
MODBUSR(A, 507, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 1502, Int16) / 10
Solltemperatur schreiben
MODBUSW(H, 1502, Int16, Se * 10)
HC1 Comfort-Temperatur Thermostat

Heizkreis-1-Thermostat — aktuelle Temperatur und Comfort-Sollwert (5–30 °C)

Register: A:507 (current) / H:1501 (setpoint) Int16 Einheit: °C numeric (/10)

HC1 Comfort-Temperatur

Temperatur lesen
MODBUSR(A, 507, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 1501, Int16) / 10
Solltemperatur schreiben
MODBUSW(H, 1501, Int16, Se * 10)
HC2 ECO-Temperatur Thermostat

Heizkreis-2-Thermostat — aktuelle Temperatur und ECO-Sollwert (5–30 °C)

Register: A:510 (current) / H:1505 (setpoint) Int16 Einheit: °C numeric (/10)

HC2 ECO-Temperatur

Temperatur lesen
MODBUSR(A, 510, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 1505, Int16) / 10
Solltemperatur schreiben
MODBUSW(H, 1505, Int16, Se * 10)
HC2 Comfort-Temperatur Thermostat

Heizkreis-2-Thermostat — aktuelle Temperatur und Comfort-Sollwert (5–30 °C)

Register: A:510 (current) / H:1504 (setpoint) Int16 Einheit: °C numeric (/10)

HC2 Comfort-Temperatur

Temperatur lesen
MODBUSR(A, 510, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 1504, Int16) / 10
Solltemperatur schreiben
MODBUSW(H, 1504, Int16, Se * 10)
Wasserdurchfluss Variable Nur lesen
Register: A:547 Int16 Einheit: l/min numeric (/10)

Wasserdurchfluss

Lesen
MODBUSR(A, 547, Int16)/10
WW ECO-Temperatur Thermostat

WW-Thermostat — aktuelle Speichertemperatur und ECO-Sollwert (10–60 °C)

Register: A:521 (current) / H:1510 (setpoint) Int16 Einheit: °C numeric (/10)

WW ECO-Temperatur

Temperatur lesen
MODBUSR(A, 521, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 1510, Int16) / 10
Solltemperatur schreiben
MODBUSW(H, 1510, Int16, Se * 10)
WW Comfort-Temperatur Thermostat

WW-Thermostat — aktuelle Speichertemperatur und Comfort-Sollwert (10–60 °C)

Register: A:521 (current) / H:1509 (setpoint) Int16 Einheit: °C numeric (/10)

WW Comfort-Temperatur

Temperatur lesen
MODBUSR(A, 521, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 1509, Int16) / 10
Solltemperatur schreiben
MODBUSW(H, 1509, Int16, Se * 10)
Außentemperatur Variable Nur lesen
Register: A:506 Int16 Einheit: °C numeric (/10)

Außentemperatur

Lesen
MODBUSR(A,506, Int16)/10
Verbindung: Modbus TCP • Slave ID: $[SlaveId]
Mögliche Verbesserungen (10)
  • A:507 Outside Temperature (direct) — ISG 507 = OUTSIDE TEMPERATURE. Template uses A:506 which maps to ISG 507 (dew point per docs). If offset is correct, outdoor temp is already covered.
  • A:515 Actual Flow Temperature — Int16, /10, °C — overall flow temperature
  • A:516 Actual Return Temperature — Int16, /10, °C — overall return temperature (0–90 °C)
  • A:519 Set Buffer Temperature — Int16, /10, °C — buffer setpoint (available as service attribute only)
  • A:522 Actual Temperature DHW — Int16, /10, °C — DHW actual temperature (ISG 522 in 0-based = 523 in 1-based)
  • A:536 Source Temperature — Int16, /10, °C — heat source (ground/air) temperature
  • H:1508 Fixed Value Operation — Int16, /10, °C, R/W — fixed value heating, OFF or 20–70 °C
  • H:1520 Reset — 1=System Reset, 2=Fault List Reset, 3=Heat Pump Reset — ISG 1521
  • H:4001–4003 SG Ready Control — SG Ready ON/OFF switch + Input 1 + Input 2 for PV optimization / smart grid integration
  • A:3504–3516 Energy Data (DHW + consumption) — DHW heat produced (day/total kWh/MWh), heating/DHW power consumed (day/total kWh/MWh), NHZ totals

Quellen