TROX TVZ VAV Box BACnet/IP to KNX via LOYTEC LGATE-950
TROX TVZ-D variable air volume controllers communicate via BACnet MS/TP — a protocol native to building management systems but not directly accessible from KNX. The LOYTEC LGATE-950 bridges BACnet MS/TP to KNX TP, mapping volume flow, damper position, and room temperature to KNX group addresses for zone-level control and building visualisation.
TROX TVZ-D VAV controller: BACnet objects
The TROX TVZ-D volume flow controller mounts in the supply air duct and measures airflow using a differential pressure sensor across an orifice plate. The actuator drives a damper blade to maintain the setpoint flow. BACnet MS/TP communication runs on RS485 at 9600 baud — the same physical layer as Modbus RTU but a different protocol. The BACnet device ID is set via a rotary selector on the front of the unit (range 1-127). Ensure each TVZ on the same MS/TP bus has a unique device ID.
| BACnet Object | Description | Unit | R/W | KNX DPT |
|---|---|---|---|---|
| AV:1 | Minimum volume flow setpoint | l/s | R/W | DPT 9.001 (written from KNX room ctrl) |
| AV:2 | Maximum volume flow setpoint | l/s | R/W | DPT 9.001 (written for CO2 override) |
| AV:3 | Actual volume flow (measured) | l/s | R only | DPT 9.001 → GA for monitoring |
| AO:1 | Damper position | % | R only | DPT 5.001 → GA for visualisation |
| AI:1 | Room temperature (if room ctrl option) | °C | R only | DPT 9.001 → GA for display |
| AI:3 | CO2 concentration (if AirMaster option) | ppm | R only | DPT 9.008 → GA for DCV logic |
LOYTEC LGATE-950: BACnet to KNX mapping
The LOYTEC LGATE-950 is a standalone BACnet MS/TP to KNX TP router mounted on DIN rail. It connects to the BACnet RS485 bus on port A and to the KNX bus on the TP terminal. Power supply: 24V DC. The web configuration interface is accessed at the device IP address on port 80 (default: 192.168.1.254, change before deployment). BACnet UDP port: 47808 (standard). The LGATE auto-discovers BACnet devices on the MS/TP bus using Who-Is broadcast at startup.
LGATE-950 web UI mapping — TROX TVZ to KNX
LGATE-950 configuration steps:
1. Auto-discovery:
Connect → Scan BACnet MS/TP network
All TVZ units appear as BACnet devices (by device ID)
LGATE reads object list from each device via ReadPropertyMultiple
2. For each TVZ (example: TVZ device ID 1, Zone A Room 01):
Create mapping entries in LGATE web UI:
TVZ AV:3 (actual flow) → KNX GA 12/1/3
Direction: BACnet read → KNX send
KNX DPT: 9.002 (l/s, airflow)
Poll/COV: COV (send on 5 l/s change)
TVZ AO:1 (damper position) → KNX GA 12/1/4
Direction: BACnet read → KNX send
KNX DPT: 5.001 (percent)
Poll/COV: poll every 30s
TVZ AI:1 (room temperature) → KNX GA 12/1/5
Direction: BACnet read → KNX send
KNX DPT: 9.001 (°C)
Poll/COV: poll every 60s
KNX GA 12/1/1 → TVZ AV:1 (min flow setpoint write)
Direction: KNX receive → BACnet write
KNX DPT: 9.001 (l/s)
Trigger: on KNX telegram receive
3. Repeat for each TVZ with unique GA sub-group per zoneZone control sequence: KNX room controller to VAV
The KNX room controller (MDT SCN-LCRM.01 with occupancy sensor) calculates the heating or cooling demand for the zone as a percentage (0-100%) based on setpoint versus measured temperature. This demand percentage is converted to an air volume flow setpoint in l/s by a KNX logic function block that scales between minimum (dead-band, typically 20% of maximum) and maximum flow rates defined during HVAC commissioning.
Zone control: KNX demand to TVZ flow setpoint
Zone A: meeting room, TVZ device ID 1
Minimum flow (unoccupied / dead-band): 30 l/s
Maximum flow (full cooling demand): 150 l/s
KNX logic function (MDT SCN-LCRM.01):
Input: GA 20/1/1 — heating/cooling demand, DPT 5.001 (0-100%)
Output: GA 12/1/1 — TVZ flow setpoint, DPT 9.001 (l/s)
Formula: flow = 30 + (demand% / 100) * (150 - 30)
At 0% demand: 30 l/s (minimum ventilation)
At 50% demand: 90 l/s
At 100% demand: 150 l/s
Occupancy detection (MDT PIR or KNX presence detector):
Occupied → use demand-based setpoint (30-150 l/s)
Unoccupied for 15 min → force flow setpoint = 20 l/s (standby)
Write 20 l/s to GA 12/1/1 → LGATE writes to TVZ AV:1
Morning warm-up (KNX time switch at 06:30):
Write maximum flow (150 l/s) to GA 12/1/1 for 30 min
Flush overnight air buildup before occupants arriveMulti-zone scaling and large installations
A typical office floor with 20 rooms has 20 TVZ units. Each unit requires 4-5 BACnet object mappings in the LGATE, totalling 80-100 mappings per floor. The LGATE-950 supports up to 128 BACnet devices and 500 mapping entries — adequate for a single floor. For multi-floor buildings, deploy one LGATE-950 per floor (or per 128 devices), connecting each LGATE to the building KNX backbone and to the floor RS485 BACnet bus.
For buildings with more than 128 BACnet devices per floor (large open-plan offices or warehouses), the LOYTEC L-INX automation server supports up to 4 independent MS/TP networks plus Ethernet BACnet/IP, providing capacity for 500+ BACnet devices within a single unit. The L-INX also supports LOYTEC LTE (proprietary peer-to-peer) and direct ETS6 integration for larger KNX projects.
BACnet COV and CO2 demand-controlled ventilation
BACnet Change of Value (COV) subscriptions reduce network traffic compared to periodic polling. Instead of the LGATE requesting the actual flow value every 10 seconds, the TVZ sends an update only when the flow changes by more than the COV increment (configure 5 l/s in LGATE). In a 20-device installation this reduces BACnet MS/TP traffic from 120 request-response pairs per minute to typically 5-15 change events per minute during stable operation.
CO2 DCV override: TVZ AV:2 maximum flow write
TROX AirMaster option: CO2 sensor built into TVZ room controller
BACnet object AI:3 (ppm) → mapped to KNX GA 12/1/6, DPT 9.008
KNX DCV logic (MDT SCN-LCRM.01):
IF GA 12/1/6 > 1000 ppm (crowded room, CO2 rising):
→ Write GA 12/1/2 = 150 (maximum flow setpoint in l/s)
→ LGATE forwards: BACnet write TVZ AV:2 = 150 l/s
→ TVZ opens damper to maximum — prioritises IAQ over demand
IF GA 12/1/6 < 700 ppm for 300s (room emptying):
→ Write GA 12/1/2 = 30 (return to minimum flow setpoint)
→ LGATE forwards: BACnet write TVZ AV:2 = 30 l/s
→ TVZ returns to demand-based control
CO2 alarm at 1400 ppm:
→ Write KNX GA 20/0/1 = ON (alarm telegram to visualisation)
→ Gira X1 / MDT Glastaster shows red alert for zone
→ Building manager receives notification via Home AssistantBACnet MS/TP bus termination
Terminate the BACnet RS485 bus at both ends with 120-ohm resistors. The LGATE-950 has a built-in switchable terminator (enable via DIP switch on device). The last TVZ on the bus also needs termination — enable via the TVZ front panel menu. Failure to terminate causes data corruption at higher device counts (more than 10 units).
BACnet device ID conflicts
BACnet requires every device on the network (across all MS/TP segments and BACnet/IP) to have a unique device ID. The LGATE-950 itself consumes one device ID (configurable, default 9999). Ensure TVZ selector switch IDs (1-127) do not overlap with the LGATE device ID or any BACnet/IP devices on the building network segment.
Need a VAV control panel with TROX BACnet to KNX bridge built to spec?
We design low-voltage panels with LOYTEC LGATE-950 BACnet/KNX gateways, TROX TVZ mapping configuration, CO2 DCV logic, and full commissioning documentation — delivered tested to your site.
Request a quote →