TapHome

Daikin RTD-NET FBA-A(9)

Modbus RTU
Submitted by
Last updated: 03. 2026
Daikin RTD-NET FBA-A(9)

The Daikin RTD-NET FBA-A(9) is a Modbus RTU interface PCB for centralized monitoring and control of Daikin VRV, Sky Air, VAM and VKM units. It connects to the indoor units via the Daikin P1/P2 remote controller network and exposes control and monitoring registers over RS-485. A single RTD-NET can manage up to 16 indoor units as one group.

The RTD-10 uses the same Modbus register layout and is fully compatible with this template.

Hardware connection

PCB overview
Daikin RTD-NET PCB layout showing power connector, P1/P2 REMCON terminals, RS-485 D-BUS terminals, DIP switch SW1 and status LEDs

Key components on the PCB:

  • POWER (0V / +V) — 15–24 V DC power input
  • REMCON (P1 / P2) — connection to the Daikin P1/P2 remote controller network
  • RS485 D-BUS (DB / DA / GND) — Modbus RTU communication with TapHome
  • SW1 — 8-position DIP switch for Modbus address and timeout configuration
  • LED1 / LED2 — status indicators (green / red)
  • LED3 / LED4 — P1/P2 and Modbus communication activity
Power supply wiring
Daikin RTD-NET power supply wiring from indoor unit PCB (X18A/X35A VRV, X35A Skyair)
DIP switch addressing
Daikin RTD-NET DIP switch address configuration and RS-485 D-BUS pin mapping (DB+, DA-, GND)
P1/P2 daisy-chain topology
Daikin RTD-NET P1/P2 daisy-chain connection between indoor units and wired remote controller

Power supply: The RTD-NET is powered from the indoor unit PCB — connect to X18A or X35A on VRV units, X35A on Sky Air units, or X11A on VAM/VKM units. A 1 m cable with connector is supplied.

RS-485 wiring (3-wire connection):

  • DB(+) → A+/D+ on TapHome RS-485
  • DA(-) → B-/D- on TapHome RS-485
  • GND → GND on TapHome power supply (mandatory)

Cable specification:

  • Type: 24 AWG twisted pair, shielded or unshielded
  • Standard: CAT3, CAT4 or CAT5
  • Max length: 500 m
  • Topology: daisy-chain only (star and ring connections are not supported)

The GND wire must be connected between all devices on the RS-485 bus. If shielded cable is used, the shield can serve as the GND connection. Connect GND to local earth at one point only (single-point grounding).

P1/P2 network: Connect P1 and P2 terminals to the Daikin P1/P2 network. Up to 16 indoor units and one remote controller can be connected. Maximum P1/P2 cable length is 500 m.

BRC infra-red receivers must be set to SUB (S) mode when the RTD-NET operates as MAIN (M).

Configuration

DIP switch addressing (SW1)

The Modbus RTU slave address is set using DIP switch SW1, positions 1–6 (binary encoding, range 0–63).

Address examples:

AddressSW1 (1)SW1 (2)SW1 (3)SW1 (4)SW1 (5)SW1 (6)
0OFFOFFOFFOFFOFFOFF
1ONOFFOFFOFFOFFOFF
2OFFONOFFOFFOFFOFF
3ONONOFFOFFOFFOFF
10OFFONOFFONOFFOFF

Recommended: Address 1 for the first adapter (SW1-1 = ON, all others OFF).

Modbus master timeout (SW1 positions 7–8)
SW1 (7)SW1 (8)Behavior
OFFOFFNo timeout
ONOFFAfter 120 s without a holding register write: all units ON with current settings, remote controllers unlocked
OFFONAfter 120 s without a holding register write: all units ON with current settings, remote controller lock state unchanged
Communication parameters
ParameterValue
Baud rate9600 (configurable)
ParityNone (configurable)
Stop bits1
Data bits8
Register base0

Device capabilities

Unit power and operation mode
  • ON/OFF (H:5) — turns all indoor units on or off
  • Operation Mode (H:3) — selects Auto, Heat, Fan, Cool, or Dry mode
  • Fan Speed (H:2) — selects Off, Low, Medium, or High. The available speeds depend on the indoor unit model
  • Louvre Direction (H:4) — controls the vane position: Stop, Swing, 0°, 20°, 45°, 70°, or 90°
Temperature monitoring
  • Remote Controller Temperature (A:50) — room temperature reading from the wired remote controller, with automatic °C x 100 conversion. Only available when exactly one indoor unit is connected and the remote controller is in Sub mode

The temperature sensor also exposes service attributes for return air temperatures across all connected units: Return Air Average (A:23), Return Air Min (A:25), and Return Air Max (A:26), as well as the RC Operation Mode (A:51) showing whether the system is idle, heating, cooling, or in combined heat & cool mode.

VAM/VKM ventilation control

The Fan Speed device includes two service attributes for VAM and VKM ventilation units:

  • Damper Control (H:30) — sets the ventilation mode: Auto, Cross Flow / Heat Recovery, or Bypass
  • VAM Fan Speed (H:31) — sets the ventilation rate: Low or High
Update modes and control limiting

The module exposes a comprehensive set of service attributes for managing how control values are pushed to indoor units:

Update mode registers (H:10–H:15) determine the behavior for each control parameter (Global, Setpoint, Fanspeed, Mode, Louvre, Power):

Update modeRemote controllerBehavior
LastTouch (default)UnlockedUpdates on every write, even if value unchanged
CentralLockedRemote controller buttons locked, value repeatedly written
LocalUnlockedNo updates sent to unit
OnChangeUnlockedUpdates only when value changes

The Control Update service action allows setting all six update mode parameters at once.

Control limiting registers restrict what end users can adjust from the remote controller:

  • SetPoint (H:1) — current temperature setpoint value
  • SetPoint Min / Max (H:20, H:21) — limit the allowable setpoint range (0 = no limit)
  • Fanspeed Inhibit (H:23) — bitmask to disable specific fan speeds
  • Mode Inhibit (H:24) — bitmask to disable specific operation modes
  • Louvre Inhibit (H:24) — bitmask to disable specific louvre positions
Service diagnostics

The module ReadScript monitors three status registers and reports them as errors or warnings in TapHome:

  • Unit fault (A:21) — if any indoor unit reports a fault, an error is raised with the fault code from A:22
  • Defrost (A:35) — if any unit is in defrost cycle, a warning is displayed
  • Filter alarm (A:24) — if any unit has a filter alarm, an error is raised

The Unit Count service attribute (A:20) shows how many indoor units are detected on the P1/P2 network, and Summary of Unit Operation (A:30) reports the group thermal activity (Idle/Fan, Heating, Cooling, or Heat & Cool).

Additional capabilities

The RTD-NET also exposes per-unit input registers for individual monitoring of up to 16 indoor units, including per-unit return air temperature, fault status, fault codes, filter alarms, coil inlet/outlet temperatures, and thermal state. Smart Grid control (H:55), available on the related EKMBPP1 adapter, is not included in this template. These can be added in a future template update.

LED status indicators

LED stateMeaning
LED1 + LED2 alternatingP1/P2 search mode (power-up, unit configuration)
LED1 steady ON, LED2 OFFNormal operation, no fault
LED1 ON, LED2 flashingAt least one indoor unit in fault
LED1 flashing, LED2 OFFDevice configuration error
LED1 OFF, LED2 flashing slowAC unit missing (U5 fault)
LED1 flashing, LED2 flashingRS-485 communication timeout

Troubleshooting

No Modbus communication (LED activity absent)
  1. Check RS-485 cables:
    • DB(+) correctly connected to A+/D+ on TapHome
    • DA(-) correctly connected to B-/D- on TapHome
    • GND connected — most common issue
  2. Verify the Modbus slave address on DIP switch SW1 (positions 1–6)
  3. Confirm TapHome is set to: 9600 baud, no parity, 1 stop bit
  4. Check cable topology — daisy-chain only, no star or ring connections
  5. Verify maximum cable length does not exceed 500 m
Indoor unit not found (LED1 OFF, LED2 flashing slow)
  1. Check P1/P2 cables between the RTD-NET and the indoor unit
  2. Verify the indoor unit is powered on
  3. Wait at least 1 minute after power-up for P1/P2 communication to establish
  4. Restart the adapter by disconnecting and reconnecting power
RC Temperature reads zero or is unavailable

The remote controller temperature (A:50) is only available when exactly one indoor unit is connected and the remote controller is configured as MAIN. With multiple units or the RTD-NET in MAIN mode, this register returns no data.

Timeout warning (LED1 + LED2 both flashing)

If DIP switch positions 7–8 are configured for timeout and TapHome stops writing holding registers for more than 120 seconds, the RTD-NET will switch all units ON with current settings and indicate a timeout on the LEDs. Ensure TapHome is regularly polling and writing registers.

Available devices

Daikin RTD-NET FBA-A(9) Module
Service Attributes
Summary of Unit OperationGroup thermal activity — Idle/Fan, Heating, Cooling, Heat & Cool
Global UpdateUpdate mode for all control parameters — Last Touch, Central, Local, OnChange
Setpoint Update
Fanspeed Update
Mode Update
Louvre Update
Power Update
SetPointCurrent temperature setpoint value in °C
SetPoint MinMinimum allowed setpoint — 0 means no limit
Setpoint MaxMaximum allowed setpoint — 0 means no limit
Fanspeed InhibitBitmask restricting available fan speeds — 0 means no restriction
Mode InhibitBitmask restricting available operation modes — 0 means no restriction
Louvre InhibitBitmask restricting available louvre positions — 0 means no restriction
Unit CountNumber of indoor units detected on the P1/P2 network
Service Actions
Control UpdateSets the update mode for all six control parameters at once

Daikin RTD-NET FBA-A(9)

Read (module)
IF(MODBUSR(A, 21, Uint16) = 1, ADDERROR("At least one unit in fault", MODBUSR(A, 22, Uint16)));
IF(MODBUSR(A, 35, Uint16) = 1, ADDWARNING("At least one unit in defrost"));
IF(MODBUSR(A, 24, Uint16) = 1, ADDERROR("At least one unit in filter alarm"));
Service Attributes
Summary of unit operation
Switch(MODBUSR(A, 30, Uint16), 0, "Idle/Fan", 1, "Heating", 2, "Cooling", 3, "Heat & Cool", "Unknown");
Global Update
var gu := MODBUSR(H, 10, Uint16);
SWITCH(gu, 0, "Last Touch", 1, "Central", 2, "Local", 3,"OnChange", "Unknown")
Setpoint Update
var se := MODBUSR(H, 11, Uint16);
SWITCH(se, 0, "Last Touch", 1, "Central", 2, "Local", 3,"OnChange", "Unknown")
Fanspeed Update
var fe := MODBUSR(H, 12, Uint16);
SWITCH(fe, 0, "Last Touch", 1, "Central", 2, "Local", 3,"OnChange", "Unknown")
Mode Update
var mu := MODBUSR(H, 13, Uint16);
SWITCH(mu, 0, "Last Touch", 1, "Central", 2, "Local", 3,"OnChange", "Unknown")
Louvre Update
var se := MODBUSR(H, 14, Uint16);
SWITCH(se, 0, "Last Touch", 1, "Central", 2, "Local", 3,"OnChange", "Unknown")
Power Update
var pow := MODBUSR(H, 15, Uint16);
SWITCH(pow, 0, "Last Touch", 1, "Central", 2, "Local", 3,"OnChange", "Unknown")
SetPoint
MODBUSR(H, 1, Uint16);
SetPoint Min
var sm := MODBUSR(H, 20, Uint16);
IF(sm = 0,"No limit", sm);
Setpoint Max
var sm := MODBUSR(H, 21, Uint16);
IF(sm = 0,"No limit", sm);
Fanspeed Inhibit
var sm := MODBUSR(H, 23, Uint16);
IF(sm = 0,"No limit", sm);
Mode Inhibit
var sm := MODBUSR(H, 24, Uint16);
IF(sm = 0,"No limit", sm);
Louvre Inhibit
var sm := MODBUSR(H, 24, Uint16);
IF(sm = 0,"No limit", sm);
Unit Count
var uc := MODBUSR(A, 20, Uint16);
uc + " unit" + IF(uc != 1, "s", "");
Service Actions
Control Update
Parameters: Global Update, Setpoint Update, Fanspeed Update, Mode Update, Louvre Update, Power Update
MODBUSW(H, 10, Uint16, gu);
MODBUSW(H, 11, Uint16, su);
MODBUSW(H, 12, Uint16, fu);
MODBUSW(H, 13, Uint16, mu);
MODBUSW(H, 14, Uint16, lu);
MODBUSW(H, 15, Uint16, pu);
Fan Speed Multi-value Switch

Fan speed control — Off, Low, Medium, High

Register: H:2 UInt16 numeric
Values / States: ${level_0Of3} · Low · Medium · High

Fan Speed

Read switch state
MODBUSR(H, 2, UInt16)
Write switch state
MODBUSW(H, 2, UInt16, Mu)
Service Attributes
Damper Control
Switch(MODBUSR(H, 30, Uint16), 0, "Auto", 1, "Cross Flow / Heat Recovery", 2, "Bypass", "Unknown");
VAM Fanspeed
Switch(MODBUSR(H, 31, Uint16),1, "Low", 2, "High", "Unknown");
Louvre Direction Multi-value Switch

Airflow vane position — Stop, Swing, 0°, 20°, 45°, 70°, 90°

Register: H:4 Int16 numeric
Values / States: Swing · 0° · 20° · 45° · 70° · 90°

Louvre Direction

Read switch state
MODBUSR(H, 4, Int16)
Write switch state
MODBUSW(H, 4, Int16, Mu)
ON/OFF Switch
Register: H:5 UInt16
Values / States: ON · OFF

ON/OFF

Read switch state
MODBUSR(H, 5, Uint16)
Write switch state
MODBUSW(H, 5, Uint16, St)
Remote Controller Temperature Temperature Sensor Read-only

Room temperature from the wired remote controller (°C) — available only with a single indoor unit in Sub mode

Register: A:50 UInt16 Unit: °C numeric
Service Attributes
RC Operation ModeRemote controller operation — Idle/Fan, Heating, Cooling, Heat & Cool
Return Air MinMinimum return air temperature across all indoor units (°C)
Return Air MaxMaximum return air temperature across all indoor units (°C)
Return Air AverageGroup average return air temperature across all indoor units (°C)

Remote Controller Temperature

Read temperature
MODBUSR(A, 50, Uint16) / 100
Service Attributes
RC Operation Mode
var om := MODBUSR(A, 51, UInt16);
Switch(om, 0, "Idle/Fan", 1, "Heating", 2, "Cooling", 3, "Heat & Cool", "Unknown");
Return Air Min
MODBUSR(A, 25, Uint16)/100 + "°C"
Return Air Max
MODBUSR(A, 26, Uint16)/100 + "°C"
Return Air Average
MODBUSR(A, 23, Uint16)/100 + "°C"
Operation Mode Multi-value Switch

HVAC operation mode — Auto, Heat, Fan, Cool, Dry

Register: H:3 Int16 numeric
Values / States: Auto · Heat · Fan · Cool · Dry

Operation Mode

Read switch state
MODBUSR(H, 3, Int16)
Write switch state
MODBUSW(H, 3, Int16, Mu)
Connection: Modbus RTU • 9600 baud• 8N1 • Slave ID: $[SlaveId]
Possible improvements (4)
  • H:22 Fan Speed Inhibit — Bitmask — inhibit specific fan speeds (template uses H:23 for Fanspeed Inhibit which may be a register error; H:22 is the documented fan speed inhibit register)
  • H:25 Louvre Inhibit (correct register) — Template reads H:24 for both Mode Inhibit and Louvre Inhibit — likely a copy-paste error; the actual louvre inhibit register should be H:25
  • A:22 Error Code (group) — Read by module readscript as ADDERROR parameter, but not exposed as a standalone service attribute
  • H:55 Smart Grid — 0=Free running, 1=Forced off, 2=Recommended on, 3=Forced on. Present in EKMBPP1 template but absent from RTD-NET template

Sources