
The Stiebel Eltron HPA-O is an air source heat pump from the Premium series. It does not have a direct Modbus interface — communication requires the ISG web or ISG plus gateway (Internet Service Gateway), which exposes the heat pump’s registers over Modbus TCP on the local network.
The TapHome template provides operating mode control, comfort and ECO temperature setpoints for two heating circuits and domestic hot water (DHW), outdoor and DHW temperature monitoring, water flow rate, runtime counters, and total heat production.
Hardware connection
The ISG gateway connects to the heat pump’s WPM controller via the CAN bus (internal wiring). For Modbus TCP communication with TapHome, connect the ISG gateway to the local network using a standard Ethernet cable (RJ45).
- Protocol: Modbus TCP
- Port: 502
- Slave ID: 1 (fixed)
- Default ISG IP: 192.168.0.126
The ISG gateway cannot run Modbus TCP simultaneously with other ISG software interfaces (e.g., ServiceWelt remote monitoring). Read-only Modbus access is possible alongside the EMI energy management extension, but requires ISG firmware v12.1.2 or higher.
Configuration
Enabling Modbus communication
The ISG gateway has Modbus TCP enabled by default on port 502. No special activation is required. The IP address can be configured through the SERVICEWELT “Profile” tab.
When importing the template in TapHome, provide:
- IP Address — the ISG gateway’s IP on the local network (default: 192.168.0.126)
- Slave ID — Modbus slave address (fixed at 1)
If the ISG gateway is connected via a router (DHCP), assign a static IP or DHCP reservation to prevent the address from changing after a power cycle. When connected directly (point-to-point), the ISG retains its default address 192.168.0.126.
Register addressing
The ISG documentation uses 1-based register addresses. The TapHome template uses 0-based addresses (offset of 1). For example, ISG register 507 (OUTSIDE TEMPERATURE) corresponds to template address A:506.
Device capabilities
Operating mode control
The Operating Mode multi-value switch writes to holding register H:1500 and allows selecting one of six modes:
| Value | Mode | Description |
|---|---|---|
| 0 | Emergency Operation | Minimal operation, backup heating only |
| 1 | Standby Mode | Frost protection only |
| 2 | Programmed Operation | Alternates between ECO and Comfort per the WPM weekly program |
| 3 | Comfort Mode | Constant comfort temperature setpoints |
| 4 | ECO Mode | Energy-saving reduced temperature setpoints |
| 5 | DHW Mode | Domestic hot water heating only, no space heating |
When changing the operating mode via Modbus, change only the mode OR a temperature setpoint in a single step — not both simultaneously. The heat pump needs to stabilize after each change.
Heating circuit temperature setpoints
The template provides four thermostat devices for two heating circuits, each with Comfort and ECO setpoints:
- HC1 Comfort Temperature — reads current HC1 temperature from A:507, writes comfort setpoint to H:1501 (range 5–30 °C)
- HC1 ECO Temperature — reads current HC1 temperature from A:507, writes ECO setpoint to H:1502 (range 5–30 °C)
- HC2 Comfort Temperature — reads current HC2 temperature from A:510, writes comfort setpoint to H:1504 (range 5–30 °C)
- HC2 ECO Temperature — reads current HC2 temperature from A:510, writes ECO setpoint to H:1505 (range 5–30 °C)
The actual operating setpoint depends on the selected operating mode — Comfort Mode uses the comfort value, ECO Mode uses the ECO value, and Programmed Operation alternates between both per the WPM schedule.
DHW temperature setpoints
Two thermostat devices control domestic hot water temperature:
- DHW Comfort Temperature — reads current DHW temperature from A:521, writes comfort setpoint to H:1509 (range 10–60 °C)
- DHW ECO Temperature — reads current DHW temperature from A:521, writes ECO setpoint to H:1510 (range 10–60 °C)
Sensor monitoring
The template includes several read-only sensors:
- Outdoor Temperature — ambient temperature from A:506 (°C, /10)
- DHW Actual Temperature — current domestic hot water cylinder temperature from A:521 (°C, /10)
- Water Flow Rate — heat pump water flow from A:547 (l/min, /10). May show 0 if the flow sensor is not installed.
- Heat Quantity — total produced heat energy, combined from registers A:3502 (MWh) and A:3501 (kWh), displayed in MWh
- Runtime Heating — cumulative heat pump runtime for space heating from A:3643 (hours)
- Runtime DHW — cumulative heat pump runtime for DHW from A:3644 (hours)
Service attributes
The template exposes 27 diagnostic service attributes accessible in the TapHome device detail view. These include:
- Controller Identification — identifies the connected WPM controller type (WPMsystem, LWZ, WPM 3, WPM 3i)
- Operating Status bits — real-time flags for HC1/HC2 pump, heat-up program, NHZ stages, HP in heating/DHW mode, compressor running, summer mode, cooling mode, defrost, and silent mode 1/2
- System sensors — buffer temperature (actual and setpoint), return temperature, hot gas temperature, low/mean/high pressure
- Fault monitoring — fault status, active error number, defrost state, message number
Additional capabilities
The ISG gateway exposes additional registers not currently included in the TapHome template. These include flow and return temperature sensors, source temperature, fixed value operation control, system reset commands, and SG Ready smart grid inputs for PV optimization. Comprehensive energy data registers provide daily and total counters for heat produced and power consumed, separated by heating and DHW. These can be added in a future template update.
Troubleshooting
No Modbus communication
- Verify the Ethernet cable is connected to the ISG gateway (not directly to the heat pump)
- Confirm the ISG IP address — check the router’s DHCP lease table or use the default 192.168.0.126
- Ensure TapHome Core and the ISG gateway are on the same network/subnet
- Check that port 502 is not blocked by a firewall
- Verify that no other ISG software interface (e.g., ServiceWelt remote access) is actively using the connection — Modbus cannot run simultaneously with other interfaces except read-only EMI
Value 32768 returned for sensors
The ISG returns the substitute value 32768 (0x8000) for registers that are not available on the connected controller. This typically means the sensor is not installed or the register is not supported by the specific WPM controller type.
Faults not clearing via Modbus
System faults can only be acknowledged through the SERVICEWELT user interface on the ISG — they cannot be cleared via Modbus. The template’s fault status and active error number attributes allow monitoring faults, but manual acknowledgment is required.
