TapHome
Community Verified

Vaillant aroVAIR pro WN fan coil (VA 3-025/035/045 WN)

Vaillant aroVAIR pro WN wall-mounted fan coil (VA 3-025, 3-035, 3-045 WN) in TapHome over Modbus RTU on RS-485, using the supplied cable on CN22. Operating mode, setpoint 17–30 °C with room temperature, fan speed, water temperature and error and protection warnings.

Modbus RTU4 devicesRevision 1.0 Last updated: November 10, 2026

Submitted by Adam Tížik

Import into the TapHome appHardware › Modbus › Add from template

Download Template
On this page

Integration guide

The Vaillant aroVAIR pro WN (VA 3-025 WN, VA 3-035 WN, VA 3-045 WN) is a wall-mounted fan coil unit for heating and cooling in hydronic systems, typically connected to the water circuit of a heat pump. TapHome communicates with the unit over Modbus RTU on an RS-485 bus, using the Modbus communication cable that ships with the fan coil. One template covers all three sizes — they share the same Modbus register map.

The template provides operating mode selection (Off, Ventilation, Cooling, Heating, Automatic), a thermostat with the setpoint and the measured room temperature, fan speed selection, the water temperature at the coil, and automatic reporting of the unit’s error and protection flags.

Hardware connection

Switch off the mains power before opening the control box. Terminal block XT1 carries 230 V AC. Electrical work on the unit may only be carried out by a qualified installer.

Opening the control box

  1. Lift the front flap of the casing.
  2. Loosen the screw and remove the control box cover.

Connecting the Modbus cable to CN22

  1. Plug the supplied Modbus communication cable into connector CN22 on the circuit board.
  2. Close the control box.
  3. Connect the RS-485 bus coming from TapHome to the wires P, Q and E of the Modbus communication cable.
TerminalSignal
PRS-485 A (+)
QRS-485 B (−)
EGND (optional shield)
Installation manual page: connecting the Modbus communication cable (P, Q, E) to connector CN22 on the main PCB, and setting the Modbus address with switch SW1 and rotary switch ENC2 (addresses 1-64), with serial line parameters.

Several fan coils can share one RS-485 bus and one TapHome Core. Each unit needs its own Modbus address (see Configuration below).

Wiring diagram

The manufacturer’s connection diagram shows where the relevant connectors are: the Modbus cable connector CN22 with the P, Q, E wires (item 12), the address switches SW1 and ENC2 on the switch board (item 3), the mains supply XT1 (item 5) and the On/Off contact XT3 (item 6). The air temperature sensor T1 is plugged into CN32 and the water temperature sensor T2 into CN31.

Manufacturer connection wiring diagram of the aroVAIR pro WN fan coil showing the interface, main and switch boards, connectors CN22, XT1, XT3, SW1, ENC2 and the P, Q, E terminals.

On/Off contact XT3 (optional)

Terminal block XT3 (HA, HB) accepts an accessory with a dry On/Off contact, for example a system controller:

  • Contact closed — the fan coil is in standby.
  • Contact open — the fan coil is ready to operate.

The contact works independently of Modbus and can be used together with Modbus control. If the contact is wired, keep it open, otherwise the unit stays in standby whatever TapHome sends.

Installation manual page: connecting an accessory with an On/Off dry contact to terminal block XT3 (HA, HB) and a wired controller, with the start of the Modbus client procedure.

Configuration

Enabling Modbus communication

No menu activation is needed. Modbus is available as soon as the Modbus cable is connected to CN22 and the unit has an address set on SW1 and ENC2.

Setting the Modbus address (SW1 and ENC2)

The address is set with two switches on the switch board on the control box cover:

  • SW1 (two DIP switches) selects a group of 16 addresses: 0–15, 16–31, 32–47 or 48–63.
  • ENC2 (rotary switch) selects one of the 16 addresses within that group.

The switch positions are shown in the table on the manual page above.

The switches set addresses 00 to 63, which correspond to Modbus addresses 1 to 64. The Modbus address — and therefore the Modbus Slave ID import parameter in TapHome — is the switch address plus one. Switch address 00 is Slave ID 1, switch address 05 is Slave ID 6.

When several fan coils are controlled over one bus, give each unit its own address with SW1 and ENC2.

Serial line parameters

ParameterOptionsFactory setting
Baud rate4800, 9600, 19200, 38400 bps9600 bps
Data bits88
Stop bits1 or 21
ParityOdd, even or noneNone
Transmission modeModbus RTU—
Error checkCRC-16—
Address1–64—

The template expects the factory settings: 9600 bps, 8 data bits, no parity, 1 stop bit. The baud rate can be changed through register 1640; after a change the next communication must already use the new setting, otherwise the unit does not respond. The template does not write this register.

The unit supports Modbus function codes 03 (read multiple holding registers), 06 (write single holding register) and 16 (write multiple holding registers).

Adding the fan coil in TapHome

Import the template on the TapHome Core RS-485 bus set to the same serial parameters and enter the Modbus Slave ID of the unit; for several fan coils, import the template once per unit with its own Slave ID.

Device capabilities

Operating mode

Register 1601 selects the operating mode. TapHome shows it as a multi-value switch:

ValueMode
0x00Off
0x01Ventilation (fan only, no heating or cooling)
0x02Cooling
0x03Heating
0x05Automatic

The unit also has a dehumidification mode (0x04), which the template does not offer. If the fan speed is not written together with a new mode, the unit selects medium fan speed by itself.

Temperature setpoint and room temperature

The thermostat writes the target temperature (Ts, register 1602) in the range 17–30 °C and shows the measured room temperature T1 (register 1606) next to it. A setpoint outside 17–30 °C is rejected by the unit with an error code. The setpoint cannot be set in Ventilation mode.

Fan speed

Register 1603 sets the fan speed:

ValueSpeed
0x02Low
0x03Medium
0x04High
0x05Automatic

Values 0x00 and 0x01 are not valid; the unit answers them with an error code.

Water temperature

The water temperature T2-C at the coil (register 1607) is read every 15 seconds. Both temperatures use the same encoding: the unit sends raw = (temperature + 5) × 2 + 30, which covers −20 °C to 100 °C (raw 0–240). TapHome decodes it as raw / 2 − 20.

Errors and warnings

The template reads the error flags (register 1614) and the protection status registers (1615 and 1617) and shows them directly on the fan coil in TapHome:

ConditionSeverity
Room temperature sensor errorError
Water temperature sensor errorError
EEPROM errorError
Fan speed errorError
Water level errorError
P1 frost protection activeWarning
Frost protection activeWarning
Temperature outside operating rangeWarning
Remote off activeWarning
Capacity outside rangeWarning

The Operating Mode device also carries three service attributes: the key lock of the remote control (register 1612, bit 0), the locked function — cooling locked or heating locked (register 1612, bits 1–2) — and the condensate pump state (register 1613, bit 0).

Troubleshooting

No communication

  • Check that the Modbus cable sits firmly in CN22 and that P and Q are connected to A and B of the TapHome bus.
  • Check the Slave ID: it is the switch address on SW1 and ENC2 plus one. Switches at 00 mean Slave ID 1.
  • Check that the unit still uses 9600 bps, no parity and 1 stop bit. If the baud rate was changed through register 1640, set the TapHome bus to the same value.
  • On a bus with several devices, check that the last device on the bus has its termination resistor fitted.

Unrealistic temperature reading

When a temperature sensor fails, the unit returns 0x7FFF (32767) in register 1606 or 1607. The template does not filter this value, so TapHome then shows an implausibly high temperature (about 16 360 °C) together with a sensor error. Check the air sensor connector CN32 or the water sensor connector CN31 on the main board; for T1 the manual also names a fault of the room thermostat in the wired controller as a cause.

Command rejected

  • Operating mode: only 0x00, 0x01, 0x02, 0x03 and 0x05 are offered by the template.
  • Setpoint: only 17–30 °C, and not in Ventilation mode.
  • Fan speed: only 0x02–0x05.

The unit does not start

If an accessory is wired to the On/Off contact XT3 and the contact is closed, the fan coil stays in standby regardless of the operating mode set in TapHome.

Available devices 4

These devices appear in TapHome after import.

aroVAIR pro WN Module

aroVAIR pro WN

Read (module)
VAR errBits := MODBUSR(H, 1614, UInt16);
IF(GETBIT(errBits, 2), ADDERROR(2, "Room temperature sensor error"), );
IF(GETBIT(errBits, 3), ADDERROR(3, "Water temperature sensor error"), );
IF(GETBIT(errBits, 7), ADDERROR(7, "EEPROM error"), );
IF(GETBIT(errBits, 8), ADDERROR(8, "Fan speed error"), );
IF(GETBIT(errBits, 14), ADDERROR(14, "Water level error"), );
VAR prot1 := MODBUSR(H, 1615, UInt16);
IF(GETBIT(prot1, 1), ADDWARNING(1, "P1 frost protection active"), );
VAR prot2 := MODBUSR(H, 1617, UInt16);
IF(GETBIT(prot2, 0), ADDWARNING(10, "Frost protection active"), );
IF(GETBIT(prot2, 1), ADDWARNING(11, "Temperature outside operating range"), );
IF(GETBIT(prot2, 2), ADDWARNING(12, "Remote off active"), );
IF(GETBIT(prot2, 15), ADDWARNING(15, "Capacity outside range"), );
Operating Mode Multi-value Switch
Values / States: Off · Ventilation · Cooling · Heating · Automatic

Operating Mode

Read switch state
MODBUSR(H, 1601, UInt16)
Write switch state
MODBUSW(H, 1601, UInt16, Mu)
Service Attributes
Key lock
IF(GETBIT(MODBUSR(H, 1612, UInt16), 0), "Remote key lock active", "Not locked")
Locked function
IF(GETBITS(MODBUSR(H, 1612, UInt16), 1, 2) = 0, "No lock", IF(GETBITS(MODBUSR(H, 1612, UInt16), 1, 2) = 1, "Cooling locked", "Heating locked"))
Condensate pump
IF(GETBIT(MODBUSR(H, 1613, UInt16), 0), "Running", "Off")
Temperature Setpoint Thermostat

Temperature Setpoint

Read temperature
MODBUSR(H, 1606, UInt16) / 2 - 20
Read desired temperature
MODBUSR(H, 1602, UInt16)
Write desired temperature
MODBUSWNE(H, 1602, UInt16, Se)
Fan Speed Multi-value Switch
Values / States: Low · Medium · High · Automatic

Fan Speed

Read switch state
MODBUSR(H, 1603, UInt16)
Write switch state
MODBUSW(H, 1603, UInt16, Mu)
Water Temperature Temperature Sensor

Water Temperature

Read temperature
MODBUSR(H, 1607, UInt16) / 2 - 20
Connection: Modbus RTU • 9600 baud• 8N1 • Slave ID: $[SlaveId]

Import parameters

Enter these values when you import the XML.

Asked in the appDefault
Modbus Slave ID (1–64)1

Found a problem with this device template?

Tell us what's wrong, what's missing, or how the template should behave. We rely on your feedback to keep the catalog accurate.

Template · TapHome portal Vaillant aroVAIR pro WN fan coil (VA 3-025/035/045 WN) Open this template in the Customer Portal to apply it to one of your homes, or to draft a refinement and submit it back to the catalog. Modbus RTU View in TapHome portal