---
title: "Daikin DTA116A51 VRV Gateway"
description: "Daikin DTA116A51 DIII-NET/Modbus Communication Adaptor for VRV systems. Controls up to 16 indoor units via RS-485 Modbus RTU — temperature and fan speed."
url: "https://taphome.com/en/compatibility/daikin-dta116a51-vrv/"
language: en
lastmod: 2026-03-22
generator: hugo
ai:
  topics: ["modbus-rtu","air-conditioning","rs485","dip-switch","vrv","diii-net","gateway"]
  questions: ["How to integrate Daikin VRV with TapHome via DTA116A51?","What does the Daikin DTA116A51 TapHome template control?","How to connect the DTA116A51 via RS-485 to TapHome?","How to configure the DTA116A51 Modbus slave address?","How to control multiple VRV indoor units with one DTA116A51 module?","Why does the DTA116A51 require status synchronization before writing commands?"]
---

# Daikin DTA116A51 VRV Gateway

Communication: Modbus RTU

- [Daikin Official Website](https://www.daikin.com)

The Daikin DTA116A51 is a DIII-NET/Modbus Communication Adaptor that bridges Daikin VRV systems to TapHome via RS-485 Modbus RTU. The gateway connects to the VRV DIII-NET bus on one side and exposes Modbus registers on the other, allowing TapHome to monitor and control up to 16 indoor units and 2 outdoor units through a single adaptor.

Each indoor unit is addressed using a **DeviceNumber** variable (0--15) within TapHome. A separate module instance must be created for every indoor unit to be controlled. The template provides ON/OFF switching, operation mode selection, fan speed and direction control, and thermostat functionality with room temperature feedback.

## Hardware connection

### Board overview

![Daikin DTA116A51 PCB component layout — DIP switches DS1 and DS2, RS-485 port, DIII-NET port, power supply connector and status LEDs](https://taphome.com/images/compatibility/daikin-dta116a51-vrv/pcb-layout_hu_84773dac357c3bda.jpg)

The DTA116A51 sits between the HA system (TapHome) and the VRV installation. The Modbus side uses RS-485 wiring with a maximum cable length of **500 m**. The DIII-NET side connects to the VRV indoor and outdoor units.

**Key components on the PCB:**

- **DS1** — Communication parameter DIP switch (baud rate, parity, stop bits)
- **DS2** — Modbus slave address DIP switch (address 1--15)
- **R(+) / B(-)** — RS-485 Modbus communication port
- **DIII-NET port** — Connection to VRV indoor/outdoor units
- **Power supply connector** — DC power input
- **H1P--H7P, HAP** — Status indicator LEDs

### RS-485 wiring

Connect the RS-485 port on the DTA116A51 to TapHome Core:

- **R(+)** on DTA116A51 → **A+/D+** on TapHome
- **B(-)** on DTA116A51 → **B-/D-** on TapHome

> [!WARNING]
> The maximum RS-485 cable length is **500 m**. Use twisted pair cable (CAT5 or similar) for reliable communication. Ensure proper bus termination on the last device.

## Configuration

### DIP switch settings

**DS1 — Communication parameters:**

| Pin | Function | OFF | ON |
|-----|----------|-----|----|
| 1 | Reserved | — | — |
| 2 | Baud rate | **9600 bps** | 19200 bps |
| 3 | Stop bit | 1 stop bit (parity enabled) | 2 stop bits (no parity) |
| 4 | Parity (when DS1-3=OFF) | **Even** | Odd |

**For TapHome:** Set DS1 to all OFF (9600 bps, even parity, 1 stop bit) — this matches the template defaults.

**DS2 — Slave address (1--15):**

| DS2 Pins (1--4) | Address |
|-----------------|---------|
| `OFF OFF OFF ON` | **1** (default) |
| `OFF OFF ON OFF` | 2 |
| `OFF OFF ON ON` | 3 |
| `OFF ON OFF OFF` | 4 |
| `ON ON ON ON` | 15 |

Set the slave address to 0 to disable Modbus communication entirely.

### TapHome setup

1. **Import the template** — select "Daikin DTA" from the Modbus RTU templates
2. **Set the Slave ID** — enter the address matching DS2 on the adaptor
3. **Create the first module** — set the **DeviceNumber** variable to 0 for indoor unit 1-00
4. **Create additional modules** — for each additional indoor unit, create a new module instance and set DeviceNumber to the corresponding unit index (0--15)

Each module instance controls one indoor unit. The DeviceNumber maps directly to the DIII-NET indoor unit address (0 = unit 1-00, 1 = unit 1-01, etc.).

> [!TIP]
> Before controlling units, verify connectivity using the **Indoor Unit (N) Connection** service attributes on the module. These show which units are physically connected on the DIII-NET bus.

### Initialization procedure

After powering on the VRV system and the DTA116A51 adaptor:

1. Poll the **Adaptor Status** service attribute until it reports "Ready"
2. Check the **Indoor Unit Connection** service attributes to identify connected units
3. TapHome automatically synchronizes register values — the adaptor only sends DIII-NET commands when a holding register value **changes**

> [!WARNING]
> **Status synchronization is critical.** The DTA116A51 sends commands to VRV units only when a holding register value changes. TapHome handles this automatically, but if registers become desynchronized (e.g., after a power cycle), the first command for each function may be ignored. Toggle the value twice to force a change if needed.

## Device capabilities

### ON/OFF and operation mode

- **ON/OFF** — turns the addressed indoor unit on or off
- **Operation Mode** — selects Fan, Heating, Cooling, Auto, Setpoint, or Dry mode. Available modes depend on the indoor unit's capability flags. Setpoint mode is only available for non-Master Cool/Heat units; Auto mode is only available for non-Slave Cool/Heat units

### Fan control

- **Fan Volume** — selects fan speed. Units with 2-step capability support Low and High; units with 3-step capability support Low, Medium, and High. The "Not capable" value appears if the unit does not support fan speed control
- **Fan Direction** — controls the vane position from P0 (horizontal) through P4 (vertical), plus Stop and Swing positions. Available positions depend on the indoor unit's fan direction capability (Fix, 2-step, 3-step, 4-step, or 5-step)

### Temperature control

- **Thermostat** — reads the current room temperature and allows setting the desired temperature setpoint with 0.1 °C resolution. Both values use a /10 conversion from the raw register data

### Service diagnostics

The module exposes 19 service attributes for monitoring:

- **Adaptor Status** — reports whether the DTA116A51 gateway is ready for communication
- **Indoor Unit (1--16) Connection** — shows which indoor units are physically connected on the DIII-NET bus
- **Cooling Mode Capability** and **Fan Mode Capability** — report whether the addressed indoor unit supports cooling and fan-only modes

The module ReadScript monitors communication errors for all 16 possible indoor units via register A:6. If a communication error is detected for any unit, TapHome reports an error message identifying the affected device number.

### Additional capabilities

The DTA116A51 adaptor also exposes registers for heating/auto/dry mode capability flags, fan direction and volume step counts, per-unit setpoint limits (cooling and heating ranges), forced off status, actual operation status (heating/cooling/fan), filter sign monitoring and reset, Cool/Heat master/slave status, per-unit error diagnostics with error code lookup, temperature sensor health, and DIII-NET initial settings (address range management, master flag). These can be added in a future template update.

> [!TIP]
> The number of control commands for one indoor unit must be within **7,000 times per year**. If TapHome uses automatic control programs (e.g., schedules, scenes), ensure the total command count stays within this limit to avoid communication issues.

## LED status indicators

| LED | Function |
|-----|----------|
| H1P | Blinks when the adaptor sends a DIII-NET command |
| H2P | Blinks when the adaptor receives a DIII-NET command |
| H3P | Blinks when the adaptor sends a Modbus response |
| H4P | Blinks when the adaptor receives a Modbus query |
| HAP | Blinks at 400 ms intervals during normal operation |

**Normal state:** HAP blinks regularly, H3P/H4P blink during Modbus communication, H1P/H2P blink during DIII-NET communication.

## Troubleshooting

### No Modbus communication (H3P/H4P not blinking)

1. Verify RS-485 wiring: R(+) → A+/D+, B(-) → B-/D- on TapHome
2. Check DS2 slave address — must be 1--15 (not 0)
3. Confirm DS1 settings match TapHome: 9600 baud, even parity, 1 stop bit
4. Check bus termination on the last device
5. Ensure the silent interval between queries is at least 5 ms (at 9600 bps)

### Adaptor status remains "Not ready"

1. Verify DIII-NET cable connection between the adaptor and VRV indoor units
2. Ensure the VRV system is powered on
3. Check that the DIII-NET master flag in register 40001 is set correctly — if another central controller is installed, the adaptor should be set to Slave mode (bit 9 = 0)

### Commands not reaching VRV units

1. This is typically a **status synchronization issue** — the adaptor only sends commands when a holding register value changes
2. Read the current status from input registers and verify the holding registers match
3. Toggle the desired value twice (e.g., OFF → ON → OFF → ON) to force a register change
4. Ensure the interval between writes to the same register is at least 0.5 seconds

### Indoor unit shows "Unconnected"

1. Check the DIII-NET wiring to the indoor unit
2. Verify the indoor unit's DIII-NET address matches the DeviceNumber in TapHome (DeviceNumber 0 = address 1-00)
3. Power cycle the adaptor and wait for the "Ready" status

## Available devices

Daikin DTA116A51 Module

Service Attributes

|                             |                                                                                                       |
|-----------------------------|-------------------------------------------------------------------------------------------------------|
| Adaptor Status              | Gateway readiness — Not ready during initialization, Ready when DIII-NET communication is established |
| Cooling Mode Capability     | Whether the addressed indoor unit supports cooling mode                                               |
| Fan Mode Capability         | Whether the addressed indoor unit supports fan-only mode                                              |
| Indoor Unit (1) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (2) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (3) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (4) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (5) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (6) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (7) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (8) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (9) Connection  | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (10) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (11) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (12) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (13) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (14) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (15) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |
| Indoor Unit (16) Connection | DIII-NET bus connection status — Connected or Unconnected                                             |

Fan Direction Multi-value Switch

Vane position control — P0 through P4 (horizontal to vertical), Stop, or Swing

Register: H:1997+(DN×3) UInt16 bitfield

Values / States: P0 · P1 · P2 · P3 · P4 · STOP · Swing

Fan Volume Multi-value Switch

Fan speed selection — available steps depend on indoor unit capability (2-step: Low/High, 3-step: Low/Medium/High)

Register: H:1997+(DN×3) UInt16 bitfield

Values / States: Not capable · Low · Medium · High

Operation Mode Multi-value Switch

HVAC operating mode — Fan, Heating, Cooling, Auto, Setpoint (slave units), or Dry

Register: H:1998+(DN×3) UInt16 bitfield

Values / States: Fan · Heating · Cooling · Auto · Setpoint · Dry

ON/OFF Switch

Register: H:1997+(DN×3) UInt16 bitfield

Values / States: ON · OFF

Thermostat Thermostat

Room temperature reading and setpoint control with 0.1 °C resolution

Register: A:1998+(6×DN) → H:1999+(DN×3) Int16 Unit: °C numeric

**Connection:** Modbus RTU • 9600 baud• 8E1 • Slave ID: $\[SlaveId]

Possible improvements (14)

- A:997+(3×DN) bits 2–4 Heating/Auto/Dry Mode Capability — Capability flags for heating (bit 2), auto (bit 3), dry (bit 4) modes — only cooling and fan capability exposed in template
- A:997+(3×DN) bits 5–7 Fan Direction Level Capability — Fan direction step count (Fix/2step/3step/4step/5step) — useful for UI to show only available positions
- A:997+(3×DN) bits 9–11 Fan Volume Level Capability — Fan volume step count (Fix/2step/3step) — useful for UI to show only available fan speeds
- A:997+(3×DN)+1, A:997+(3×DN)+2 Setpoint Limits (Cooling/Heating) — Cooling upper/lower limits and heating upper/lower limits per indoor unit — 8-bit signed integer pairs
- A:2000+(6×DN) bits 1 Forced Off Status — Bit 1 of status register N+0 — indicates if indoor unit is in forced off state
- A:2000+(6×DN) bits 2–4 Fan Direction Status (Read) — Current fan direction from status register — template only reads/writes via holding register
- A:2000+(6×DN) bits 5–7 Fan Volume Status (Read) — Current fan volume from status register — template only reads/writes via holding register
- A:2001+(6×DN) bits 3–6 Filter Sign Status — Filter sign (0=Off, 1-15=On) per indoor unit — no filter monitoring in template
- A:2001+(6×DN) bits 7–8 Operation Status — Actual thermal operation: 0=Fan, 1=Heating, 2=Cooling — not exposed in template
- A:2001+(6×DN) bits 13–14 Cool/Heat Master Status — 0=Not decided, 1=Slave, 2=Master — determines which modes are available
- A:2003+(6×DN) Error Info — Malfunction bit (9), warning bit (10), error code (bits 0-3 value1, bits 4-8 value2) — per-unit error diagnostics with code lookup table
- A:2005+(6×DN) Temperature Sensor Status — Bit 8=sensor error, bit 15=data received — temperature sensor health per indoor unit
- H:1998+(DN×3) bits 3–6 Filter Sign Reset — Write 15 to reset filter sign, then set back to 0 — not exposed in template
- H:0 DIII-NET Initial Settings — Bit 0=managed address range, bit 9=DIII-NET master flag, bit 14=communication start/stop — stored in EEPROM, applied after power cycle

## Sources

- Daikin DTA116A51 Functional Specifications — DIII-NET/Modbus Communication Adaptor
  
  2026-03-22
  
  [PDF](https://taphome.com/compatibility/devices/daikin-dta116a51-vrv/manufacturer/functional-specifications.pdf)

## Related Documentation

- [Modbus Integration](https://taphome.com/en/compatibility/modbus-guide/)
- [Modbus](https://taphome.com/en/docs/integration/modbus/)
- [Simple configuration using templates](https://taphome.com/en/docs/integration/modbus/templates/)
- [Modbus scripts and prefetch](https://taphome.com/en/docs/script/modbus-scripts/)
- [Modbus functions](https://taphome.com/en/docs/script/modbus/)
- [Modbus data types](https://taphome.com/en/docs/script/modbus-data-types/)

