TapHome

Atrea RD5 Air Recovery

Modbus TCP
Submitted by
Last updated: 03. 2026
Atrea RD5 Air Recovery

Die Atrea DUPLEX Serie sind Lüftungsgeräte mit Wärmerückgewinnung (MVHR), gesteuert vom RD5-Regelsystem. TapHome verbindet sich direkt mit dem RD5-Regler über Modbus TCP via Ethernet — ein zusätzliches Gateway ist nicht erforderlich.

Die Vorlage bietet Thermostatsteuerung mit Temperatursollwert, Betriebsartenwahl (Aus, Auto, Lüftung, Umluft + Lüftung, Umluft, Nachtauskühlung, Druckausgleich, Überdruck), Lüfterleistungsregelung (0–100 %), vier Temperatursensoren (Zuluft, Raumluft, Außenluft, Abluft) und umfassende Diagnose mit 45+ Fehler- und Warnregistern.

Netzwerkverbindung

Der RD5-Regler verfügt über eine eingebaute Ethernet-Schnittstelle. Verbinden Sie ihn über ein Standard-Ethernet-Kabel mit demselben lokalen Netzwerk wie TapHome Core.

  • Protokoll: Modbus TCP
  • Port: 502
  • Slave ID: 1–255 (konfigurierbar)
  • Datenkodierung: Int16, Temperaturwerte durch 10 geteilt

Modbus TCP aktivieren

Modbus TCP muss in den Serviceeinstellungen des RD5 explizit aktiviert werden, bevor TapHome mit dem Gerät kommunizieren kann.

Navigieren Sie zum Serviceparameter 3.15.1 Modbus TCP und setzen Sie ihn auf YES.

Wenn Modbus TCP nicht aktiviert ist (Parameter 3.15.1 = NO), antwortet der RD5-Regler nicht auf Modbus-TCP-Anfragen auf Port 502.

Konfiguration

Beim Import der Vorlage in TapHome geben Sie an:

  • IP-Adresse — die IP-Adresse des RD5-Reglers im lokalen Netzwerk
  • Slave ID — Modbus-Geräteadresse (Standard: 1)

Weisen Sie dem RD5-Regler eine statische IP-Adresse in den DHCP-Einstellungen des Routers zu, damit sich die Adresse nach einem Neustart nicht ändert.

Der Hersteller empfiehlt die Verwendung der Manual-Steuerungsroutine, wenn das Gerät von einem BMS-System wie TapHome gesteuert wird. Die Vorlage schreibt in die Steuerungsregister (H:10708, H:10709, H:10710), die der Manual-Routine entsprechen (H:10700–H:10703 = 0).

Geräteeigenschaften

Die Vorlage stellt folgende Geräte bereit:

Thermostat
  • Atrea Thermostat — Raumtemperaturregelung mit Sollwertbereich 10–40 °C. Liest die aktuelle Temperatur aus I:10212 (T-SUP), den gewünschten Sollwert aus H:10716 und schreibt den Sollwert in H:10710. Enthält 13 Serviceattribute für Heiz-/Kühlstatus (Wasserventil, Pumpe, Wärmepumpe, Vorheizung, Kühlkonfiguration) und 6 Serviceaktionen zur Konfiguration von Primär-/Sekundärheizung, Vorheizung, Kühlung, Kapillarfrostschutz und Raumregelungssensorauswahl.
Betriebsartsteuerung
  • Mode Control — Mehrfachwertschalter zur Auswahl der Betriebsart über Register H:10705 (Lesen) / H:10709 (Schreiben). Verfügbare Betriebsarten: Aus, Auto, Lüftung, Umluft + Lüftung, Umluft, Nachtauskühlung, Druckausgleich, Überdruck.
Lüftersteuerung
  • Ventilation — Dimmer zur Regelung der Lüfterleistung von 0 % (aus) bis 100 % über Register H:10704 (Lesen) / H:10708 (Schreiben). Die minimale aktive Leistung beträgt 12 %. Enthält 4 Serviceattribute (M1-Ausgang %, M2-Ausgang %, Regelungsmodus, Lüftungsintervall) und 2 Serviceaktionen (Lüfterregelungsmodus-Auswahl, Lüftungsintervall-Einstellung 0–60 min).
Temperaturüberwachung

Die Vorlage enthält vier Temperatursensoren:

SensorRegisterBeschreibung
T-SUP (Zuluft)I:10212Zulufttemperatur — Luft, die nach der Wärmerückgewinnung in die Räume geliefert wird
T-IDA (Raumluft)I:10215Raumlufttemperatur — Quelle wählbar zwischen CP Touch, T-ETA, TRKn oder BMS
T-ODA (Außenluft)I:10211Außenlufttemperatur — eingebauter Sensor oder BMS-bereitgestellter Wert
T-ETA (Abluft)I:10213Ablufttemperatur — Luft, die vor der Wärmerückgewinnung aus den Räumen abgesaugt wird

Die T-IDA-Sensorquelle kann über die Serviceaktion am Gerät Indoor Air Temperature konfiguriert werden. Der T-ODA-Sensor kann zwischen dem eingebauten Sensor und einem BMS-bereitgestellten Wert umgeschaltet werden, mit konfigurierbarer Sensorposition (intern/extern).

Diagnose auf Modulebene

Die RD5-Vorlage überwacht 45+ Diskretregister (D:11100–D:11184) auf Fehler und Warnungen, darunter:

  • Fehler: Geräteüberhitzung, Orientierung nicht gesetzt, Sensorfehler (TU1/TU2/TEa/TEb/TA2/T-ODA/T-ETA), STP-Kontakt, Manometerfehler, RD-IO-Kommunikation, unausgeglichener Volumenstrom, fehlende Konfiguration, unzureichende Vorheizung, Modulfehler, Frostschutz
  • Warnungen: Wärmetauscher-Vereisung/Abtauung, Hochtarif, unzureichender Volumenstrom/Heizung, verstopfter Filter, Eingangsalarmfehler, nicht in Betrieb genommenes Gerät, Sicherheitsmodus, Kühlung/Heizung nicht verfügbar

Ein Serviceattribut auf Modulebene zeigt die Geräteausrichtung (welcher Motor der Zuluftventilator ist), und eine Serviceaktion ermöglicht die Konfiguration der Zuluftventilatorzuordnung (M1 oder M2).

Weitere Funktionen

Die RD5-Geräte stellen außerdem Modbus-Register für Fortlufttemperatur (T-EHA), Zwangsbetriebsstatus, Saisonsteuerung, Volumenstromüberwachung (Zuluft/Abluft), Filterwechselperiode, Alarm-/Filterrücksetzung und Steuerungsroutinen-Konfiguration bereit. Diese können in einem zukünftigen Update zur TapHome-Vorlage hinzugefügt werden.

Fehlerbehebung

Keine Modbus-Kommunikation
  1. Überprüfen Sie, dass Modbus TCP aktiviert ist — Parameter 3.15.1 Modbus TCP = YES in den Serviceeinstellungen
  2. Bestätigen Sie die IP-Adresse des RD5-Reglers — prüfen Sie die DHCP-Lease-Tabelle des Routers
  3. Stellen Sie sicher, dass TapHome Core und der RD5-Regler im selben Netzwerk/Subnetz sind
  4. Prüfen Sie, dass keine Firewall Port 502 blockiert
  5. Halten Sie den vom Hersteller empfohlenen 5-Sekunden-Abstand zwischen mehreren Lese-/Schreiboperationen ein
Temperaturwerte erscheinen falsch

Temperaturregister verwenden Int16-Kodierung mit dem Wert geteilt durch 10. Werte über 32767 stellen negative Temperaturen dar: (Wert - 65536) / 10. Beispiel: Wert 65516 = (65516 - 65536) / 10 = -2,0 °C.

Betriebsartänderungen werden nicht übernommen

Wenn sich das Gerät in einem Zwangsbetrieb befindet (Anlauf, Nachlauf, Abtauung, D1–D4-Eingangsaktivierung), können Schreibbefehle für die Betriebsart ignoriert werden. Prüfen Sie das Zwangsbetriebsregister H:10712 — der Wert 0 bedeutet, dass kein Zwangsbetrieb aktiv ist.

Bei Verwendung der Schedule-Steuerungsroutine (H:10700–H:10703 = 1) müssen Sie zuerst den Wert 2 in das entsprechende Steuerungsroutine-Register schreiben, bevor Sie den neuen Steuerungsparameter schreiben.

Verfügbare Geräte

Atrea RD5 Modul
Serviceattribute
Geräteausrichtung
Serviceaktionen
Zuluft-Ausrichtung festlegen

Atrea RD5

Lesen (Modul)
IF(ModbusR(D, 11100, Bool), ADDERROR("Device Overheating"));
IF(ModbusR(D, 11101, Bool), ADDERROR("Orientation not set"));
IF(ModbusR(D, 11102, Bool), ADDERROR("Type of Heater not set"));
IF(ModbusR(D, 11104, Bool), ADDERROR("STP Contact is active"));
IF(ModbusR(D, 11105, Bool), ADDERROR("Manometer DP1 failure"));
IF(ModbusR(D, 11106, Bool), ADDERROR("Manometer DP2 failure"));
IF(ModbusR(D, 11107, Bool), ADDERROR("Sensor TU1 failure"));
IF(ModbusR(D, 11108, Bool), ADDERROR("Sensor TU2 failure"));
IF(ModbusR(D, 11108, Bool), ADDERROR("Sensor TU2 failure"));
IF(ModbusR(D, 11109, Bool), ADDERROR("Sensor TEa failure"));
IF(ModbusR(D, 11110, Bool), ADDERROR("Sensor TEb failure"));
IF(ModbusR(D, 11111, Bool), ADDERROR("Sensor TA2 failure"));
IF(ModbusR(D, 11112, Bool), ADDERROR("RD-IO Communication failure"));
IF(ModbusR(D, 11114, Bool), ADDERROR("Unbalanced Flow"));
IF(ModbusR(D, 11116, Bool), ADDERROR("Indoor Sensor failure"));
IF(ModbusR(D, 11117, Bool), ADDWARNING("Recuperator Freezing"));
IF(ModbusR(D, 11118, Bool), ADDWARNING("Unfreezing Recuperator... "));
IF(ModbusR(D, 11119, Bool), ADDWARNING("High Tariff"));
IF(ModbusR(D, 11119, Bool), ADDWARNING("High Tariff"));
IF(ModbusR(D, 11120, Bool), ADDWARNING("Insufficient flow"));
IF(ModbusR(D, 11121, Bool), ADDWARNING("Insufficient primary heating output"));
IF(ModbusR(D, 11122, Bool), ADDWARNING("Clogged Filter"));
IF(ModbusR(D, 11123, Bool), ADDWARNING("Fault at AI input IN1"));
IF(ModbusR(D, 11124, Bool), ADDWARNING("Fault at AI input IN2"));
IF(ModbusR(D, 11125, Bool), ADDWARNING("Fault at AI input INk1/1"));
IF(ModbusR(D, 11126, Bool), ADDWARNING("Fault at AI input INk2/1"));
IF(ModbusR(D, 11127, Bool), ADDWARNING("Fault at AI input INk3/1"));
IF(ModbusR(D, 11128, Bool), ADDWARNING("Fault at AI input INk4/1"));
IF(ModbusR(D, 11129, Bool), ADDWARNING("Fault at AI input INk1/2"));
IF(ModbusR(D, 11130, Bool), ADDWARNING("Fault at AI input INk2/2"));
IF(ModbusR(D, 11131, Bool), ADDWARNING("Fault at AI input INk3/2"));
IF(ModbusR(D, 11132, Bool), ADDWARNING("Fault at AI input INk4/2"));
IF(ModbusR(D, 11140, Bool), ADDWARNING("Unit is not in Operation"));
IF(ModbusR(D, 11141, Bool), ADDERROR("Configuration File is Missing"));
IF(ModbusR(D, 11143, Bool), ADDERROR("Insufficient Pre-heating Power"));
IF(ModbusR(D, 11144, Bool), ADDERROR("This combination of heaters is not allowed"));
IF(ModbusR(D, 11145, Bool), ADDERROR("Manometer DP3 failure"));
IF(ModbusR(D, 11146, Bool), ADDERROR("External Manometer Failure"));
IF(ModbusR(D, 11147, Bool), ADDERROR("Modul RD5-K/1"));
IF(ModbusR(D, 11148, Bool), ADDERROR("Modul RD5-K/2"));
IF(ModbusR(D, 11149, Bool), ADDERROR("Unfreezing Heat Pump..."));
IF(ModbusR(D, 11160, Bool), ADDWARNING("Updating..."));
IF(ModbusR(D, 11162, Bool), ADDERROR("This cooler configuration is not allowed"));
IF(ModbusR(D, 11165, Bool), ADDWARNING("Safe Mode Active"));
IF(ModbusR(D, 11166, Bool), ADDERROR("Frost protection-capillary"));
IF(ModbusR(D, 11167, Bool), ADDERROR("Frost protection configuration"));
IF(ModbusR(D, 11168, Bool), ADDWARNING("Unfinished Unit Learning"));
IF(ModbusR(D, 11169, Bool), ADDERROR("T-ODA Sensor failure"));
IF(ModbusR(D, 11170, Bool), ADDERROR("T-ETA/T-IDA Sensor failure"));
IF(ModbusR(D, 11171, Bool), ADDWARNING("Cooling is not available"));
IF(ModbusR(D, 11172, Bool), ADDERROR("Heating is not available"));
IF(ModbusR(D, 11173, Bool), ADDWARNING("Evaporation on"));
IF(ModbusR(D, 11174, Bool), ADDWARNING("Increased ignition power"));
IF(ModbusR(D, 11175, Bool), ADDERROR("Illegal flow setting"));
IF(ModbusR(D, 11184, Bool), ADDWARNING("Filter test configuration"));
Serviceattribute
Unit Orientation
SWITCH(MODBUSR(H, 10501, Uint16), 0, "Not Set", 1, "M1 Supply",2, "M2 Supply", "Unknown")
Serviceaktionen
Set Supply Orientation
Parameter: Supply
ModbusW(H, 10501, Uint16, Sup);
Atrea Thermostat Thermostat

Raumtemperaturregelung — Sollwert, aktuelle und gewünschte Temperatur

Register: I:10212 (read current), H:10716 (read desired), H:10710 (write desired) Int16 Einheit: °C numeric (value / 10 = °C)
Serviceattribute
Heizwasserventil YV1
Heizwasserpumpe KK
Heizung (Wasser oder Elektro) SA2
Wärmepumpe (Heizen) DA1
Wärmepumpe (Heizen) SE
Wärmepumpe (Kühlen) DA1
Wärmepumpe (Kühlen) SC
Temperatursensor für Raumregelung
Vorheizung
Kühlung
Kapillarvereisung
Primäre Heizung
Sekundäre Heizung
Serviceaktionen
Temperatursensor für Raumregelung
Primäre Heizung
Sekundäre Heizung
Vorheizung
Kühlung
Kapillarvereisung

Atrea Thermostat

Temperatur lesen
MODBUSR(A, 10212, Int16) / 10
Solltemperatur lesen
MODBUSR(H, 10716, Int16) / 10
Solltemperatur schreiben
MODBUSWNE(H, 10710, Int16, Se * 10)
Serviceattribute
Heating Water Valve YV1
IF(MODBUSR(C, 10201, Bool), "Open", "Closed")
Heating Water Pump KK
IF(MODBUSR(C, 10200, Bool), "ON", "OFF")
Heating (Water or Electric) SA2
var he := MODBUSR(H, 10203, Int16);
IF(he>0, "Active", "Inactive")
Heat Pump (Heating) DA1
var da := MODBUSR(H, 10207, Int16);
IF(da>0, "ON", "OFF")
Heat Pump (Heating) SE
IF(MODBUSR(C, 10215, Bool), "Active", "Inactive");
Heat Pump (Cooling) DA1
IF(MODBUSR(H, 00205, Int16) > 0, "ON", "OFF")
Heat Pump (Cooling) SC
IF(MODBUSR(C, 10216, Bool), "Active", "Inactive")
Temp. sensor for Room Control
SWITCH(MODBUSR(H, 10514, Uint16), 0, "CP", 1, "T-ETA", 2, "TRKn", 3, "BMS", "Unknown" )
Preheating
SWITCH(MODBUSR(H, 10504, Uint16), 0, "None", 1, "Electric", 2, "Liquid", "Unknown" );
Cooling
SWITCH(MODBUSR(H, 10507, Uint16), 0, "None", 1, "Water", 2, "Direct", "Unknown")
Capillary freezing
IF(MODBUSR(H, 10530, Uint16) > 0," DIsabled", "Enabled");
Primary Heating
SWITCH (MODBUSR(H, 10503, Uint16), 0, "None", 1, "Contact-Water", 2, "Analog Water", 3, "PWM-electric", 4, "Contact-Electric", 5, "Thermal pump", "Unknown");
Secondary heating
SWITCH(MODBUSR(H, 10517, Uint16),0 , "None", 1,  "Contact-Water", 2, "Analog water", 3, "PWM-electric", "Unknown");
Serviceaktionen
Temp. sensor for Room Control
Parameter: Sensor
MODBUSW(H, 10514, Uint16, sens);
Primary Heating
Parameter: Heating Source
MODBUSW(H, 10503, Uint16, he)
Secondary heating
Parameter: Source
MODBUSW(H, 10517, Uint16, Soc)
Preheating
Parameter: Preheating
MODBUSW(H, 10504, Uint16, Pre);
Cooling
Parameter: Cooling
MODBUSW(H, 10507, Uint16, Coo)
Capillary Freezing
Parameter: Capillary Freezing (Enabled / Disabled)
MODBUSW(H, 10530, Uint16, CaF);
Zulufttemperatur (T-SUP) Temperatursensor Nur lesen
Register: I:10212 Int16 Einheit: °C numeric (value / 10 = °C)

Zulufttemperatur (T-SUP)

Temperatur lesen
MODBUSR(A, 10212, Int16) / 10
Raumlufttemperatur (T-IDA) Temperatursensor Nur lesen

Raumlufttemperatur — Quelle wählbar zwischen CP Touch-Panel, T-ETA, TRKn oder BMS

Register: I:10215 Int16 Einheit: °C numeric (value / 10 = °C)
Serviceattribute
Quelle
Serviceaktionen
Quelle von T-IDA

Raumlufttemperatur (T-IDA)

Temperatur lesen
MODBUSR(A, 10215, Int16) / 10
Serviceattribute
Source
var va := MODBUSR(H, 10514, Int16);
SWITCH(va, 0, "CP",1, "ETA", 2, "TRKn", 3, "BMS", "Unknown")
Serviceaktionen
Source of T-IDA
Parameter: Source
MODBUSW(H, 10514, Int16, So)
Betriebsart Mehrwertschalter

Aktive Betriebsart — Aus, Auto, Lüftung, Umluft, Nachtauskühlung, Druckausgleich oder Überdruck

Register: H:10705 (read), H:10709 (write) Int16 numeric
Werte / Zustände: AUS · Auto · Lüftung · Umluft + Lüftung · Umluft · Nachtauskühlung · Druckausgleich · Überdruck

Betriebsart

Schaltzustand lesen
MODBUSR(H, 10705, Int16)
Schaltzustand schreiben
MODBUSWNE(H, 10709, Int16, Mu)
Außenlufttemperatur (T-ODA) Temperatursensor Nur lesen

Außenlufttemperatur — vom eingebauten Sensor oder BMS-Wert

Register: I:10211 Int16 Einheit: °C numeric (value / 10 = °C, negative: (value − 65536) / 10)
Serviceattribute
Quelle für T-ODA
Sensorposition
Serviceaktionen
Quelle wählen
T-ODA Sensorposition

Außenlufttemperatur (T-ODA)

Temperatur lesen
MODBUSR(A, 10211, Int16) / 10
Serviceattribute
Source for T-ODA
var source := MODBUSR(C, 10510, Bool);
IF(source = 1, "Data from BMS", "Built-in sensor")
Sensor Position
SWITCH(MODBUSR(H,10508, Uint16), 0, "Internal", 1, "External", "Unknown");
Serviceaktionen
Choose Source
Parameter: Source
MODBUSW(C, 10510, Bool, So)
T-ODA Sensor Position
Parameter: Position
MODBUSW(H,10508, Uint16, pos)
Ablufttemperatur (T-ETA) Temperatursensor Nur lesen
Register: I:10213 Int16 Einheit: °C numeric (value / 10 = °C)

Ablufttemperatur (T-ETA)

Temperatur lesen
MODBUSR(A, 10213, Int16) / 10
Lüftung Dimmer

Lüfterleistungsregelung — passt die Lüftungsintensität mit M1/M2-Motorüberwachung an

Register: H:10704 (read power), H:10708 (write power) Int16 Einheit: % numeric (0=Off, 12–100 = power %)
Serviceattribute
M1
M2
Regelung M1 / M2
Lüftungsintervall (Auto)
Serviceaktionen
Regelung M1/M2
Lüftungsintervall (Auto)

Lüftung

Level lesen
MODBUSR(H, 10704, Int16) / 100
Level schreiben
MODBUSWNE(H, 10708, Int16, Le * 100)
Serviceattribute
M1
MODBUSR(H, 10200, Int16)/100 + "%"
M2
MODBUSR(H, 10201, Int16)/100 + "%"
Regulation M1 / M2
SWITCH(MODBUSR(H, 10510, Uint16), 0, "Direct", 1, "Constant flow", 2, "Constant Pressure", 3, "IN1 + IN2", "Unknown" );
Ventilation Interval (Auto)
MODBUSR(H, 10502, Uint16) +" min";
Serviceaktionen
Regulation M1/M2
Parameter: Regulation
MODBUSW(H, 10510, Uint16, Reg);
Ventilation Interval (Auto)
Parameter: Interval (0–60 Inter)
MODBUSW(H, 10502, Uint16, Inter);
Verbindung: Modbus TCP • Slave ID: $[SlaveId]
Mögliche Verbesserungen (19)
  • I:10214 Exhaust Air Temperature (T-EHA) — Int16, value / 10 = °C, read-only — air temperature after heat recovery (exhaust side)
  • H:10706 Required Temperature (read) — Int16, value / 10 = °C — currently set temperature target, read-only
  • H:10704 Required Power (read) — Int16, 0–100% — currently set fan power, read-only
  • H:10712 Forced Mode Status — Int16, 0–32 — shows if unit is in a forced mode (startup, rundown, defrost, D1–D4, etc.)
  • I:11401 Current Season — 0=Heating Season, 1=Non-Heating Season
  • H:11401 Season Control — R/W, 0=HS, 1=NHS, 2=T-ODA, 3=T-ODA+ — manual or automatic season switching
  • I:11600 Required Supply Volume Flow — 0–15000 m3/h
  • I:11601 Current Supply Volume Flow — 0–15000 m3/h
  • I:11602 Required Extract Volume Flow — 0–15000 m3/h
  • I:11603 Current Extract Volume Flow — 0–15000 m3/h
  • H:10910 Filter Replacement Period — R/W, 0–365 days
  • C:10005 Alarm Reset — Write 1 to reset all resetable alarms
  • C:10007 Filter Reset — Write 1 to reset filter change interval counter
  • H:10700 Power Control Routine — R/W, 0=Manual, 1=Schedule, 2=Temporary — BMS should use Manual (0)
  • H:10701 Mode Control Routine — R/W, 0=Manual, 1=Schedule, 2=Temporary
  • H:10702 Temperature Control Routine — R/W, 0=Manual, 1=Schedule, 2=Temporary
  • H:10703 Zone Control Routine — R/W, 0=Manual, 1=Schedule, 2=Temporary
  • H:10707 Required Zone — R/W, 0=Both, 1=Zone 1, 2=Zone 2 — requires SZ1/SZ2 function enabled
  • I:11420 Average Outdoor Temperature — Int16, averaged T-ODA over configurable time window

Quellen