TapHome

Nibe VVM S320

Modbus TCP
Submitted by
Last updated: 03. 2026
Nibe VVM S320

The Nibe VVM S320 is an indoor heat pump module that combines heating, hot water production, and ventilation (ERS 1 energy recovery) in a single unit. TapHome connects directly via built-in Modbus TCP/IP over Ethernet or WiFi — no external gateway or accessory is required. The VVM S325 uses the same register set and is fully interchangeable.

The template provides 82 service attributes covering temperature monitoring, heating curve management, hot water demand control, ERS 1 fan speed configuration, degree-minute indicators, energy metering, compressor statistics, and alarm handling.

Network connection

The VVM S320 has built-in Modbus TCP/IP support, activated through the unit’s touchscreen display. Connect the unit to the same local network as TapHome Core using either Ethernet (menu 5.2.2) or WiFi (menu 5.2.1).

  • Protocol: Modbus TCP
  • Port: 502
  • Default Slave ID: 1 (some installations may use 0)
  • Registers: Input (FC04) for read-only sensors, Holding (FC03) for read/write settings

Assign a static IP address to the VVM S320 via your router’s DHCP reservation settings. The current network configuration can be verified in menu 3.1.13 (“Connections”) on the unit’s display.

Enabling Modbus communication

Modbus TCP must be explicitly enabled on the heat pump before TapHome can connect:

  1. On the VVM S320 touchscreen, tap the menu icon (three horizontal lines) to open the main menu
  2. Navigate to My system (menu 4) > Advanced settings > Modbus TCP/IP (menu 7.5.9)
  3. Toggle Connected to ON
  4. Leave Modbus ext. calc. supply (7.5.9.1) set to OFF
  5. Leave Modbus ext. sensor input (7.5.9.2) set to ALL OFF

When importing the template in TapHome, provide:

  • IP Address — the unit’s IP on the local network (check menu 3.1.13 or the router’s DHCP table)
  • Slave ID — Modbus slave address (default: 1)

If Modbus TCP is not enabled in menu 7.5.9, TapHome will receive “Error on read request” responses. This is a pump configuration issue, not a network problem.

Firmware version 2.2.1 or later is recommended. Updates can be downloaded from myuplink.com and applied via the USB port on the display unit.

Device capabilities

The template exposes the following devices, grouped by function:

Temperature monitoring

Seven temperature sensors read from input registers with automatic divide-by-10 conversion:

SensorRegisterDescription
Outdoor Temperature (BT1)A:1Current outdoor air temperature
Supply Temperature (BT2)A:5Supply line temperature
Return Temperature (BT3)A:7Return line temperature
Hot Water Top (BT7)A:8Hot water tank top temperature
Hot Water Charging (BT6)A:9Hot water charging temperature
Room Temperature (BT50)A:26Room sensor temperature (optional sensor)
Supply Temperature (BT63)A:72Additional heat supply temperature

Additional air-side temperature sensors are available through the ventilation module:

  • Exhaust Air (BT20) — reads H:19, exhaust air from the ERS 1 heat exchanger
  • Extract Air (BT21) — reads H:20 (see Known limitations)
  • Calculated Supply Temperature — reads A:1017, the system-calculated target supply line temperature
Operating mode control
  • Operating Mode — reads/writes H:237. Selects between Auto (0), Manual (1), and Add. heat only (2). In Auto mode the heat pump manages heating demand automatically; Manual allows direct control; Add. heat only disables the compressor.
  • Operating Priority — reads A:1028. Shows the current system priority: 10=off, 20=hot water, 30=heat, 40=pool, 60=cooling.
Heating curve management

The template provides full control over the weather-compensated heating curve for climate system 1:

  • Heating Curve — reads/writes H:26 (range 0–15, default 9). The curve slope determines how aggressively supply temperature rises as outdoor temperature drops.
  • Curve Offset — reads/writes H:30 (range -10 to +10, default 0). Parallel shift of the entire curve up or down.
  • Supply Temp Min / Max — reads/writes H:34 and H:38 (divide by 10 for °C). Clamps the calculated supply temperature to a safe range.
  • Own Curve P1–P7 — reads/writes H:39–H:45. Seven custom heating curve points at outdoor temperatures from +20 °C (P7) down to -40 °C (P1), allowing a fully user-defined curve.
External climate adjustment

Four read-only sensors show the current external adjustment values for climate systems 1–4:

  • External Adjustment Climate S1–S4 — reads A:1054–A:1057

Two writable registers allow external override:

  • External Adjustment Climate — reads/writes H:51 (range -10 to +10)
  • External Adjust Room Sensor Cooling 1 — reads/writes H:4153 (divide by 10 for °C)
Degree minutes

Degree minutes are the primary heat demand indicator in Nibe systems — a negative value means the house needs heating, and the more negative it gets, the harder the system works:

  • Degree Minutes — reads/writes H:18 (divide by 10, range -3000 to +3000 DM). The main heat demand indicator. Writing a large negative value forces immediate compressor start.
  • Degree Minutes Cooling — reads/writes H:20. Cooling demand indicator.
  • DM Start Additional Heat — reads A:97. Threshold for engaging the additional electric heater.
  • DM Start Compressor — reads A:159. Threshold for starting the compressor.
Hot water management
  • Hot Water Demand Mode — reads/writes H:56. Selects between Small (0), Medium (1), Large (2), and Smart Control (3). The mode determines how aggressively the system maintains hot water temperature.
  • Hot Water Top Temperature (BT7) — reads A:8 (divide by 10 for °C)
  • Hot Water Charging Temperature (BT6) — reads A:9 (divide by 10 for °C)
  • Hot Water Circulation Outgoing Temperature — reads A:87, outgoing hot water from BT70 sensor
  • Current Hot Water Control — reads A:137, identifies which subsystem currently controls HW production
Ventilation (ERS 1) fan speed control

The VVM S320 includes an integrated ERS 1 (Energy Recovery System) with configurable fan speeds for both supply and exhaust air. Each fan has four speed levels plus a normal operating speed:

SettingSupply RegisterExhaust RegisterDefault
Speed 1 (minimum)H:1041H:10240%
Speed 2 (low)H:1040H:102330%
Speed 3 (medium)H:1039H:102280%
Speed 4 (maximum)H:1038H:1021100%
NormalH:1042H:102560% / 75%

Additional ventilation controls:

  • Ventilation Mode — reads/writes H:104, selects the ventilation operating mode
  • Return Time Fan 1–4 — reads/writes H:115–H:118, sets the hours before a fan returns from a speed override back to normal (1–24 h, default 4 h)
  • Bypass Temperature — reads/writes H:1044 (range 2–10 °C, default 4 °C), the temperature threshold for bypassing the heat exchanger
Energy monitoring

The template includes energy production and consumption meters:

  • Energy Produced (Heat) — reads A:2283 (divide by 100 for kWh)
  • Energy Produced (Hot Water) — reads A:2285
  • Energy Used (Heat) — reads A:2291
  • Energy Used (Hot Water) — reads A:2293 (divide by 100 for kWh)
  • Energy Used (Add. Heater) — reads A:2299
  • Current Power — reads A:2305 (divide by 100 for kW)
  • Energy Flow (Compressor + Add. Heat) — reads A:1577 (uInt32, divide by 10 for kWh)
  • Energy Flow (Hot Water, Comp. + Add. Heat) — reads A:1575 (Int32, divide by 10 for kWh)
Compressor statistics
  • Compressor Total Time EP14 / EP15 — reads A:2335 and A:2337, total operating hours
  • Compressor Heat Time EP14 / EP15 — reads A:2339 and A:2341, heating-specific operating hours
  • Total Run Time (Add. Heat) — reads A:1025, additional heater runtime (available as both 16-bit and 32-bit variants)
System health and alarms
  • Alarm Number — reads A:1975, the currently active alarm code
  • Alarm Reset — writes to H:22, clears the active alarm
  • Alarm Lower Room Temperature — reads H:196, alarm action threshold for room temperature
  • Alarm Lower HW Temperature — reads H:197, alarm action threshold for hot water temperature
  • Additional Heat Steps — reads A:1029, number of active internal electric heater steps
Additional devices
  • Flow Sensor — reads A:40 (divide by 10 for l/min), heating medium flow rate from BF1
  • Heating Medium Pump Speed — reads A:1636, GP1 pump speed percentage
  • Pump Speed (S135) — reads/writes H:1036, ventilation module pump speed (1–100%, default 70%)
  • Shunt Valve QN11 (EM1) — reads A:1034, shunt valve status (10=off, 20=active, 30=passive, 40=opening, 50=closing)
  • Floor Drying — reads/writes H:120, enables/disables floor drying program (0=off, 1=on)
  • Filter Replacement Interval — reads/writes H:119, months between filter replacements (1–24, default 3)
  • Humidity Setpoint — reads/writes H:997, relative humidity setpoint (30–90%, default 60%)
  • HTS 1 — reads/writes H:998, high temperature setting on/off
  • OPT — reads/writes H:1015, energy optimiser on/off
  • OPT DM Start Difference — reads/writes H:1016, degree-minute start difference for OPT (10–2000, default 700)

Known limitations

The template contains four register mapping inconsistencies inherited from the XML source. These do not prevent normal operation but may affect specific readings:

  1. H:20 dual mapping — Register H:20 is mapped to both “Degree Minutes Cooling” (R/W) and “Extract Air BT21” (read-only). The nibe library confirms H:20 is “Cooling degree minutes” (FC03, R/W). The BT21 extract air sensor is actually at input register A:20 (FC04). The template likely has an incorrect function code for BT21.

  2. H:51 dual mapping — Register H:51 is mapped to both “External Adjustment Room Sensor Climate” and “External Adjustment Climate”. Both read/write the same register. The “room sensor” variant may have been intended for H:55 (a different register) but was mapped to H:51 in the template.

  3. A:1025 dual mapping — Register A:1025 appears as both a 16-bit (“CAS CHODU TOTAL”) and 32-bit (“TOTAL RUN TIME”) service attribute. The nibe library confirms this is a 32-bit register (s32, 6 bytes). The 16-bit variant may overflow for units with long runtimes.

  4. Energy register scaling — Energy registers use inconsistent scale factors: A:2283 and A:2293 use /100, while A:2285, A:2291, and A:2299 have no scale factor. This may indicate different units (kWh vs MWh) or missing conversion factors in the template. Verify readings against the unit’s display.

Troubleshooting

No Modbus communication
  1. Verify Modbus TCP/IP is enabled in menu 7.5.9 on the unit’s display — toggle “Connected” must be ON
  2. Check the unit’s IP address in menu 3.1.13 (“Connections”)
  3. Ensure TapHome Core and the VVM S320 are on the same network/subnet
  4. Try Slave ID 0 if the default 1 does not respond
  5. Set the Modbus timeout to at least 14 seconds with 3 retries
Incorrect temperature readings

All temperature registers use a scale factor of 10 (divide raw value by 10 to get °C). If readings appear 10x too high, verify the divide-by-10 conversion is applied. Registers A:87 (hot water circulation) and H:19 (exhaust air) may also require divide-by-10 but the template does not include the conversion — verify against the unit’s display.

Fan speed changes not taking effect

ERS 1 fan speeds are configured as percentages (0–100%). If a fan speed change appears to have no effect, check the ventilation mode (H:104) — the unit may be in a mode that overrides manual fan speed settings. Also verify the return time (H:115–H:118) has not elapsed, which would revert the fan to normal speed.

Energy readings inconsistent

Due to mixed scale factors in the energy registers, some readings may appear orders of magnitude off. Cross-reference with the unit’s display values. Registers with /100 factor show values in kWh; registers without a factor may be in a different unit. See Known limitations above.

Available devices

Nibe VVM S320 Module
Additional Heat Steps Variable Read-only

Number of active additional heating steps (internal electric heater)

Register: A:1029 Int16 numeric

Additional Heat Steps

Read
MODBUSR(A, 1029, Int16)
Alarm Lower HW Temperature Variable Read-only

Alarm action when hot water temperature drops below threshold (0=inactive, 1=active)

Register: H:197 Int16 numeric

Alarm Lower HW Temperature

Read
MODBUSR(H, 197, Int16)
Alarm Lower Room Temperature Variable Read-only

Alarm action when room temperature drops below threshold (0=inactive, 1=active)

Register: H:196 Int16 numeric

Alarm Lower Room Temperature

Read
MODBUSR(H, 196, Int16)
Alarm Number Variable Read-only

Currently active alarm code number

Register: A:1975 Int16 numeric

Alarm Number

Read
MODBUSR(A, 1975, Int16)
Alarm Reset Variable

Write to reset active alarm

Register: H:22 Int16 numeric

Alarm Reset

Read
MODBUSR(H, 22, Int16)
Write
MODBUSWNE(H, 22, int16, Va)
Bypass Temperature (ERS 1) Variable

Bypass activation temperature for ERS 1 heat exchanger (range 2-10 °C, default 4 °C)

Register: H:1044 uInt16 Unit: °C numeric

Bypass Temperature (ERS 1)

Read
MODBUSR(H, 1044, uInt16)/1
Write
MODBUSWNE(H, 1044, uint16, Va)
Calculated Supply Temperature Variable Read-only

System-calculated target supply line temperature

Register: A:1017 Int16 Unit: °C numeric

Calculated Supply Temperature

Read
MODBUSR(A, 1017, Int16)/10
Total Run Time (Add. Heat, 16-bit) Variable Read-only

Total run time of additional heater in hours — 16-bit variant, may overflow for long runtimes

Register: A:1025 uInt16 Unit: h numeric

Total Run Time (Add. Heat, 16-bit)

Read
MODBUSR(A, 1025, uInt16)/10
Compressor Total Time (EP14) Variable Read-only

Total compressor operating hours for heat pump EP14

Register: A:2335 Int16 Unit: h numeric

Compressor Total Time (EP14)

Read
MODBUSR(A, 2335, Int16)
Compressor Total Time (EP15) Variable Read-only

Total compressor operating hours for heat pump EP15

Register: A:2337 Int16 Unit: h numeric

Compressor Total Time (EP15)

Read
MODBUSR(A, 2337, Int16)
Compressor Heat Time (EP14) Variable Read-only

Total compressor heating hours for heat pump EP14

Register: A:2339 Int16 Unit: h numeric

Compressor Heat Time (EP14)

Read
MODBUSR(A, 2339, Int16)
Compressor Heat Time (EP15) Variable Read-only

Total compressor heating hours for heat pump EP15

Register: A:2341 Int16 Unit: h numeric

Compressor Heat Time (EP15)

Read
MODBUSR(A, 2341, Int16)
Current Hot Water Control Variable Read-only

Identifies which subsystem currently controls hot water production

Register: A:137 Int16 numeric

Current Hot Water Control

Read
MODBUSR(A, 137, Int16)
Heating Curve Variable

Heating curve slope for climate system 1 (range 0-15, default 9)

Register: H:26 Int16 numeric

Heating Curve

Read
MODBUSR(H, 26, Int16)
Write
MODBUSWNE(H, 26, int16, Va)
Curve Offset Variable

Parallel offset for heating curve climate system 1 (range -10 to +10, default 0)

Register: H:30 Int16 numeric

Curve Offset

Read
MODBUSR(H, 30, Int16)
Write
MODBUSWNE(H, 30, int16, Va)
Own Curve P7 (+20 °C) Variable

Custom heating curve point at outdoor +20 °C (default 15 °C)

Register: H:39 Int16 Unit: °C numeric

Own Curve P7 (+20 °C)

Read
MODBUSR(H, 39, Int16)
Write
MODBUSWNE(H, 39, int16, Va)
Own Curve P6 (+10 °C) Variable

Custom heating curve point at outdoor +10 °C (default 15 °C)

Register: H:40 Int16 Unit: °C numeric

Own Curve P6 (+10 °C)

Read
MODBUSR(H, 40, Int16)
Write
MODBUSWNE(H, 40, int16, Va)
Own Curve P5 (0 °C) Variable

Custom heating curve point at outdoor 0 °C (default 26 °C)

Register: H:41 Int16 Unit: °C numeric

Own Curve P5 (0 °C)

Read
MODBUSR(H, 41, Int16)
Write
MODBUSWNE(H, 41, int16, Va)
Own Curve P4 (-10 °C) Variable

Custom heating curve point at outdoor -10 °C (default 32 °C)

Register: H:42 Int16 Unit: °C numeric

Own Curve P4 (-10 °C)

Read
MODBUSR(H, 42, Int16)
Write
MODBUSWNE(H, 42, int16, Va)
Own Curve P3 (-20 °C) Variable

Custom heating curve point at outdoor -20 °C (default 35 °C)

Register: H:43 Int16 Unit: °C numeric

Own Curve P3 (-20 °C)

Read
MODBUSR(H, 43, Int16)
Write
MODBUSWNE(H, 43, int16, Va)
Own Curve P2 (-30 °C) Variable

Custom heating curve point at outdoor -30 °C (default 40 °C)

Register: H:44 Int16 Unit: °C numeric

Own Curve P2 (-30 °C)

Read
MODBUSR(H, 44, Int16)
Write
MODBUSWNE(H, 44, int16, Va)
Own Curve P1 (-40 °C) Variable

Custom heating curve point at outdoor -40 °C (default 45 °C)

Register: H:45 Int16 Unit: °C numeric

Own Curve P1 (-40 °C)

Read
MODBUSR(H, 45, Int16)
Write
MODBUSWNE(H, 45, int16, Va)
Degree Minutes Start Additional Heat Variable Read-only

Degree-minute threshold for starting additional heating

Register: A:97 uInt16 Unit: DM numeric

Degree Minutes Start Additional Heat

Read
MODBUSR(A, 97, uInt16)
Degree Minutes Start Compressor Variable Read-only

Degree-minute threshold for starting the compressor (range -2000 to -30, default -400)

Register: A:159 Int16 Unit: DM numeric

Degree Minutes Start Compressor

Read
MODBUSR(A, 159, Int16)
Degree Minutes Cooling Variable

Cooling degree minutes value

Register: H:20 Int16 Unit: DM numeric

Degree Minutes Cooling

Read
MODBUSR(H, 20, Int16)
Write
MODBUSWNE(H, 20, int16, Va)
Degree Minutes Variable

Heating degree minutes — main heat demand indicator (range -3000 to +3000 DM)

Register: H:18 Int16 Unit: DM numeric

Degree Minutes

Read
MODBUSR(H, 18, Int16)/10
Write
MODBUSWNE(H, 18, int16, Va)
Shunt Valve QN11 (EM1) Variable Read-only

Shunt-controlled additional heat valve status (10=off, 20=active, 30=passive, 40=opening, 50=closing)

Register: A:1034 Int16 numeric

Shunt Valve QN11 (EM1)

Read
MODBUSR(A, 1034, Int16)
Current Power Variable Read-only

Current electrical power consumption

Register: A:2305 Int16 Unit: kW numeric

Current Power

Read
MODBUSR(A, 2305, Int16)/100
Energy Produced (Heat) Variable Read-only

Total heating energy produced by heat pump

Register: A:2283 Int16 Unit: kWh numeric

Energy Produced (Heat)

Read
MODBUSR(A, 2283, Int16)/100
Energy Produced (Hot Water) Variable Read-only

Total hot water energy produced by heat pump

Register: A:2285 Int16 Unit: kWh numeric

Energy Produced (Hot Water)

Read
MODBUSR(A, 2285, Int16)
Energy Used (Add. Heater) Variable Read-only

Total energy consumed by additional electric heater

Register: A:2299 Int16 Unit: kWh numeric

Energy Used (Add. Heater)

Read
MODBUSR(A, 2299, Int16)
Energy Used (Heat) Variable Read-only

Total electrical energy consumed for heating

Register: A:2291 uInt16 Unit: kWh numeric

Energy Used (Heat)

Read
MODBUSR(A, 2291, uInt16)
Energy Used (Hot Water) Variable Read-only

Total electrical energy consumed for hot water production

Register: A:2293 Int16 Unit: kWh numeric

Energy Used (Hot Water)

Read
MODBUSR(A, 2293, Int16)/100
Exhaust Air Temperature (BT20) Variable Read-only

Exhaust air temperature from AZ30-BT20 sensor

Register: H:19 Int16 Unit: °C numeric

Exhaust Air Temperature (BT20)

Read
MODBUSR(H, 19, Int16)
Exhaust Fan Speed 1 (ERS 1) Variable

Exhaust fan speed level 1 percentage (range 0-100%, default 0%)

Register: H:1024 Int16 Unit: % numeric

Exhaust Fan Speed 1 (ERS 1)

Read
MODBUSR(H, 1024, Int16)
Write
MODBUSWNE(H, 1024, int16, Va)
Exhaust Fan Speed 2 (ERS 1) Variable

Exhaust fan speed level 2 percentage (range 0-100%, default 30%)

Register: H:1023 Int16 Unit: % numeric

Exhaust Fan Speed 2 (ERS 1)

Read
MODBUSR(H, 1023, Int16)
Write
MODBUSWNE(H, 1023, int16, Va)
Exhaust Fan Speed 3 (ERS 1) Variable

Exhaust fan speed level 3 percentage (range 0-100%, default 80%)

Register: H:1022 Int16 Unit: % numeric

Exhaust Fan Speed 3 (ERS 1)

Read
MODBUSR(H, 1022, Int16)
Write
MODBUSWNE(H, 1022, int16, Va)
Exhaust Fan Speed 4 (ERS 1) Variable

Exhaust fan speed level 4 percentage (range 0-100%, default 100%)

Register: H:1021 Int16 Unit: % numeric

Exhaust Fan Speed 4 (ERS 1)

Read
MODBUSR(H, 1021, Int16)
Write
MODBUSWNE(H, 1021, int16, Va)
Exhaust Fan Speed Normal (ERS 1) Variable

Exhaust fan normal operating speed percentage (range 1-100%, default 75%)

Register: H:1025 Int16 Unit: % numeric

Exhaust Fan Speed Normal (ERS 1)

Read
MODBUSR(H, 1025, Int16)
Write
MODBUSWNE(H, 1025, int16, Va)
External Adjust Room Sensor Cooling 1 Variable

External adjustment with room sensor for cooling climate system 1 (range 5.0-30.0 °C)

Register: H:4153 Int16 Unit: °C numeric

External Adjust Room Sensor Cooling 1

Read
MODBUSR(H, 4153, Int16)
Write
MODBUSWNE(H, 4153, int16, Va)
External Adjustment Room Sensor Climate Variable

External adjustment factor for climate system 1

Register: H:51 Int16 numeric

External Adjustment Room Sensor Climate

Read
MODBUSR(H, 51, Int16)
Write
MODBUSWNE(H, 51, int16, Va)
External Adjustment Climate Variable

External climate system adjustment for climate system 1 (range -10 to +10)

Register: H:51 Int16 numeric

External Adjustment Climate

Read
MODBUSR(H, 51, Int16)
Write
MODBUSWNE(H, 51, int16, Va)
External Adjustment Climate S1 Variable Read-only

Current external adjustment value for climate system 1

Register: A:1057 Int16 numeric

External Adjustment Climate S1

Read
MODBUSR(A, 1057, Int16)
External Adjustment Climate S2 Variable Read-only

Current external adjustment value for climate system 2

Register: A:1056 Int16 numeric

External Adjustment Climate S2

Read
MODBUSR(A, 1056, Int16)
External Adjustment Climate S3 Variable Read-only

Current external adjustment value for climate system 3

Register: A:1055 Int16 numeric

External Adjustment Climate S3

Read
MODBUSR(A, 1055, Int16)
External Adjustment Climate S4 Variable Read-only

Current external adjustment value for climate system 4

Register: A:1054 Int16 numeric

External Adjustment Climate S4

Read
MODBUSR(A, 1054, Int16)
Extract Air Temperature (BT21) Variable Read-only

Extract air temperature from AZ30-BT21 sensor — mapped to H:20, may have incorrect function code (see Known limitations)

Register: H:20 Int16 Unit: °C numeric

Extract Air Temperature (BT21)

Read
MODBUSR(H, 20, Int16)
Floor Drying Variable

Enables/disables floor drying program (0=off, 1=on)

Register: H:120 Int16 numeric

Floor Drying

Read
MODBUSR(H, 120, Int16)
Write
MODBUSWNE(H, 120, int16, Va)
Energy Flow (Compressor + Add. Heat) Variable Read-only

Cumulative heating energy including internal additional heat

Register: A:1577 uInt32 Unit: kWh numeric

Energy Flow (Compressor + Add. Heat)

Read
MODBUSR(A, 1577, uInt32)/10
Energy Flow (Hot Water, Comp. + Add. Heat) Variable Read-only

Cumulative hot water energy including internal additional heat

Register: A:1575 Int32 Unit: kWh numeric

Energy Flow (Hot Water, Comp. + Add. Heat)

Read
MODBUSR(A, 1575, Int32)/10
Flow Sensor Variable Read-only

Heating medium flow rate from BF1 sensor (l/min)

Register: A:40 Int16 Unit: l/min numeric

Flow Sensor

Read
MODBUSR(A, 40, Int16)/10
Heating Medium Pump Speed Variable Read-only

Current heating medium pump GP1 speed percentage

Register: A:1636 Int16 Unit: % numeric

Heating Medium Pump Speed

Read
MODBUSR(A, 1636, Int16)
Hot Water Circulation Outgoing Temperature Variable Read-only

Outgoing hot water temperature from BT70 sensor

Register: A:87 Int16 Unit: °C numeric

Hot Water Circulation Outgoing Temperature

Read
MODBUSR(A, 87, Int16)
Hot Water Demand Mode Variable

Hot water demand level — Small, Medium, Large, or Smart Control

Register: H:56 Int16 numeric

Hot Water Demand Mode

Read
MODBUSR(H, 56, Int16)/1
Write
MODBUSWNE(H, 56, int16, Va)
Hot Water Charging Temperature Variable Read-only

Hot water charging temperature from BT6 sensor

Register: A:9 Int16 Unit: °C numeric

Hot Water Charging Temperature

Read
MODBUSR(A, 9, Int16)/10
Hot Water Top Temperature Variable Read-only

Hot water tank top temperature from BT7 sensor

Register: A:8 Int16 Unit: °C numeric

Hot Water Top Temperature

Read
MODBUSR(A, 8, Int16)/10
HTS 1 Variable

High temperature setting on/off (0=off, 1=on)

Register: H:998 Int16 numeric

HTS 1

Read
MODBUSR(H, 998, Int16)
Write
MODBUSWNE(H, 998, int16, Va)
Operating Priority Variable Read-only

Current system operating prioritisation (10=off, 20=hot water, 30=heat, 40=pool, 60=cooling)

Register: A:1028 Int16 numeric

Operating Priority

Read
MODBUSR(A, 1028, Int16)
OPT (Optimiser) Variable

Enables/disables OPT energy optimiser (0=off, 1=on)

Register: H:1015 Int16 numeric

OPT (Optimiser)

Read
MODBUSR(H, 1015, Int16)
Write
MODBUSWNE(H, 1015, int16, Va)
OPT DM Start Difference Variable

Degree-minute start difference for OPT optimiser (range 10-2000, default 700)

Register: H:1016 Int16 Unit: DM numeric

OPT DM Start Difference

Read
MODBUSR(H, 1016, Int16)
Write
MODBUSWNE(H, 1016, int16, Va)
Operating Mode Variable

System operating mode — Auto, Manual, or Add. heat only

Register: H:237 Int16 numeric

Operating Mode

Read
MODBUSR(H, 237, Int16)
Write
MODBUSWNE(H, 237, int16, Va)
Pump Speed (S135) Variable

Ventilation module S135 pump speed percentage (range 1-100%, default 70%)

Register: H:1036 Int16 Unit: % numeric

Pump Speed (S135)

Read
MODBUSR(H, 1036, Int16)
Write
MODBUSWNE(H, 1036, int16, Va)
Return Temperature Variable Read-only

Heating system return line temperature from BT3 sensor

Register: A:7 Int16 Unit: °C numeric

Return Temperature

Read
MODBUSR(A, 7, Int16)/10
Return Time Fan 1 Variable

Hours before fan returns from speed 1 to normal (range 1-24 h, default 4 h)

Register: H:118 Int16 Unit: h numeric

Return Time Fan 1

Read
MODBUSR(H, 118, Int16)
Write
MODBUSWNE(H, 118, int16, Va)
Return Time Fan 2 Variable

Hours before fan returns from speed 2 to normal (range 1-24 h, default 4 h)

Register: H:117 Int16 Unit: h numeric

Return Time Fan 2

Read
MODBUSR(H, 117, Int16)
Write
MODBUSWNE(H, 117, int16, Va)
Return Time Fan 3 Variable

Hours before fan returns from speed 3 to normal (range 1-24 h, default 4 h)

Register: H:116 Int16 Unit: h numeric

Return Time Fan 3

Read
MODBUSR(H, 116, Int16)
Write
MODBUSWNE(H, 116, int16, Va)
Return Time Fan 4 Variable

Hours before fan returns from speed 4 to normal (range 1-24 h, default 4 h)

Register: H:115 Int16 Unit: h numeric

Return Time Fan 4

Read
MODBUSR(H, 115, Int16)
Write
MODBUSWNE(H, 115, int16, Va)
Ventilation Mode Variable

Ventilation operating mode selector

Register: H:104 Int16 numeric

Ventilation Mode

Read
MODBUSR(H,104, Int16)
Write
MODBUSWNE(H, 104, int16, Va)
Humidity Setpoint Variable

Relative humidity setpoint percentage (range 30-90%, default 60%)

Register: H:997 Int16 Unit: % numeric

Humidity Setpoint

Read
MODBUSR(H, 997, Int16)
Write
MODBUSWNE(H, 997, int16, Va)
Supply Fan Speed 1 (ERS 1) Variable

Supply fan speed level 1 percentage (range 0-100%, default 0%)

Register: H:1041 Int16 Unit: % numeric

Supply Fan Speed 1 (ERS 1)

Read
MODBUSR(H, 1041, Int16)
Write
MODBUSWNE(H, 1041, int16, Va)
Supply Fan Speed 2 (ERS 1) Variable

Supply fan speed level 2 percentage (range 0-100%, default 30%)

Register: H:1040 Int16 Unit: % numeric

Supply Fan Speed 2 (ERS 1)

Read
MODBUSR(H, 1040, Int16)
Write
MODBUSWNE(H, 1040, int16, Va)
Supply Fan Speed 3 (ERS 1) Variable

Supply fan speed level 3 percentage (range 0-100%, default 80%)

Register: H:1039 Int16 Unit: % numeric

Supply Fan Speed 3 (ERS 1)

Read
MODBUSR(H, 1039, Int16)
Write
MODBUSWNE(H, 1039, int16, Va)
Supply Fan Speed 4 (ERS 1) Variable

Supply fan speed level 4 percentage (range 0-100%, default 100%)

Register: H:1038 Int16 Unit: % numeric

Supply Fan Speed 4 (ERS 1)

Read
MODBUSR(H, 1038, Int16)
Write
MODBUSWNE(H, 1038, int16, Va)
Supply Fan Speed Normal (ERS 1) Variable

Supply fan normal operating speed percentage (range 1-100%, default 60%)

Register: H:1042 Int16 Unit: % numeric

Supply Fan Speed Normal (ERS 1)

Read
MODBUSR(H, 1042, Int16)
Write
MODBUSWNE(H, 1042, int16, Va)
Supply Temperature (BT63) Variable Read-only

Additional heat supply temperature from BT63 sensor

Register: A:72 Int16 Unit: °C numeric

Supply Temperature (BT63)

Read
MODBUSR(A, 72, Int16)/10
Supply Temperature (BT2) Variable Read-only

Supply line temperature from BT2 sensor

Register: A:5 Int16 Unit: °C numeric

Supply Temperature (BT2)

Read
MODBUSR(A, 5, Int16)/10
Supply Temperature Max Variable

Maximum allowed supply line temperature for climate system 1 (range 5.0-80.0 °C, default 60.0 °C)

Register: H:38 Int16 Unit: °C numeric

Supply Temperature Max

Read
MODBUSR(H, 38, Int16)/10
Write
MODBUSWNE(H, 38, int16, Va)
Supply Temperature Min Variable

Minimum allowed supply line temperature for climate system 1 (range 5.0-80.0 °C, default 20.0 °C)

Register: H:34 Int16 Unit: °C numeric

Supply Temperature Min

Read
MODBUSR(H, 34, Int16)/10
Write
MODBUSWNE(H, 34, int16, Va)
Outdoor Temperature Variable Read-only

Current outdoor temperature from BT1 sensor

Register: A:1 Int16 Unit: °C numeric

Outdoor Temperature

Read
MODBUSR(A, 1, Int16)/10
Room Temperature Variable Read-only

Room temperature from BT50 room sensor

Register: A:26 uInt16 Unit: °C numeric

Room Temperature

Read
MODBUSR(A, 26, uInt16)/10
Filter Replacement Interval Variable

Time between filter replacements (range 1-24 months, default 3)

Register: H:119 Int16 Unit: months numeric

Filter Replacement Interval

Read
MODBUSR(H, 119, Int16)
Write
MODBUSWNE(H, 119, int16, Va)
Total Run Time (Add. Heat, 32-bit) Variable Read-only

Total run time of additional heater in hours — 32-bit variant, recommended for accurate tracking

Register: A:1025 uInt32 Unit: h numeric

Total Run Time (Add. Heat, 32-bit)

Read
MODBUSR(A, 1025, uInt32)/10
Connection: Modbus TCP • Slave ID: $[SlaveId]
Possible improvements (16)
  • A:19 Exhaust Air Temperature (AZ30-BT20) — FC04 input register, factor 10, °C — H:19 in template may be reading holding register instead of input
  • A:20 Extract Air Temperature (AZ30-BT21) — FC04 input register, factor 10, °C — template maps BT21 to H:20 (holding), should likely be A:20 (input)
  • A:42 Supply Air Temperature (AZ30-BT22) — Supply air temperature sensor, factor 10, °C
  • A:37 Average Outdoor Temperature (BT1) — Long-term outdoor temperature average, factor 10, °C
  • A:46 Current Phase 3 (BE3) — Electrical current measurement phase 3, factor 10, A, u32
  • A:48 Current Phase 2 (BE2) — Electrical current measurement phase 2, factor 10, A, u32
  • A:50 Current Phase 1 (BE1) — Electrical current measurement phase 1, factor 10, A, u32
  • A:2176 Current Power (Watts) — Real-time power consumption in W — higher resolution than A:2305 (/100 kW)
  • A:2180 Total Energy — Cumulative total energy consumption, factor 10, kWh
  • A:2251 Fan Speed ERS1 (GQ2) — Current exhaust fan speed percentage
  • A:2252 Fan Speed ERS1 (GQ3) — Current supply fan speed percentage
  • A:1102 Heating Medium Pump Speed (GP1) Status — Actual pump speed status (vs A:1636 which reads target speed)
  • H:55 External Adjustment with Room Sensor Climate System 1 — R/W, factor 10, range 5.0–30.0 °C, default 20.0 °C — template #40 may intend this register instead of H:51
  • H:95 Operating Mode Heating Medium Pump — 10=intermittent, 20=continuous, 30=economy, 40=auto; R/W
  • A:1583 Hot Water Energy (Compressor Only) — Hot water energy from compressor only (excl. add. heat), factor 10, kWh, u32
  • A:1585 Heating Energy (Compressor Only) — Heating energy from compressor only (excl. add. heat), factor 10, kWh, u32

Sources