BACnet MS/TP wiring must follow a strict daisy-chain topology using shielded twisted-pair cable (Belden 9841 or equivalent, 100–130 ohm impedance), with 120-ohm termination resistors at both physical endpoints, consistent A+/B− polarity at every device, and the cable shield grounded at one end only. T-taps, star wiring, missing termination, and unshielded cable are the leading causes of intermittent communication failures on MS/TP trunks. Maximum trunk length is 4,000 feet (1,200 m) at baud rates up to 76,800 bps.
Why MS/TP Wiring Matters
BACnet MS/TP (Master-Slave/Token-Passing) runs on an RS-485 physical layer. Unlike BACnet/IP, which rides on managed Ethernet switches with error correction and automatic retransmission, MS/TP depends entirely on the quality of the copper cable connecting devices. Every electrical imperfection—a signal reflection from a T-tap, a missing termination resistor, a polarity swap, excessive cable capacitance—directly degrades communication reliability. There is no switch, no router, and no protocol-level retry mechanism to mask wiring defects.
The consequence is that MS/TP wiring problems produce intermittent, hard-to-diagnose failures. A trunk may work perfectly during commissioning with five devices and short cable runs, then fail unpredictably once twenty devices are connected across a full building floor. CRC error counters climb. Devices drop off the token ring for seconds or minutes, then reappear. Point values go stale. The instinct is to suspect a bad controller or a software configuration error, but in the majority of cases the root cause is physical-layer wiring that violates RS-485 best practices.
Correct wiring is not optional—it is the foundation that every MS/TP network depends on. Getting it right during installation avoids hundreds of hours of troubleshooting later.
Cable Selection
The ASHRAE 135 BACnet standard requires shielded, twisted-pair cable with a characteristic impedance between 100 and 130 ohms for MS/TP networks. The cable must also meet specific capacitance limits: less than 100 pF per meter (30 pF per foot) between conductors, and less than 200 pF per meter (60 pF per foot) between conductors and shield. These are not suggestions—exceeding these limits causes signal attenuation and increased error rates, especially on longer trunks or at higher baud rates.
Recommended Cable: Belden 9841
The industry-standard cable for BACnet MS/TP installations is the Belden 9841. It is a 24 AWG, one-pair, stranded tinned-copper cable with a nominal impedance of 120 ohms. It features both an aluminum foil/polyester tape (Beldfoil) shield and a 90% tinned-copper braid shield, providing excellent EMI rejection in mechanical rooms and electrical closets where BAS controllers are typically installed.
# Belden 9841 Key Specifications
# ──────────────────────────────────────────────
# Conductor: 24 AWG stranded (7x32) tinned copper
# Pairs: 1 twisted pair
# Impedance: 120 ohm (nominal)
# Capacitance: 12.8 pF/ft (42 pF/m) conductor-to-conductor
# Shield: Aluminum foil + 90% tinned copper braid
# Jacket: PVC, CM rated
# Temperature Range: -20 to +75 C
# ──────────────────────────────────────────────
# Acceptable alternatives:
# Belden 9842 (2-pair version of 9841, use one pair)
# Belden 3105A (22 AWG, slightly heavier gauge)
# Alpha Wire 6412 (120 ohm, foil + braid shield)
# General Cable GenSPEED 485 (120 ohm STP)
#
# AVOID:
# Cat5/Cat6 Ethernet cable (100 ohm, wrong impedance)
# Unshielded twisted pair (no EMI protection)
# Thermostat wire (18/2) (not twisted, high capacitance)
# Speaker wire (not twisted, unshielded)Wire Gauge Considerations
For most BACnet MS/TP installations, 22 AWG or 24 AWG cable is appropriate. The choice affects maximum trunk length: 18 AWG cable can support the full 4,000-foot (1,200 m) specification at lower baud rates, while 24 AWG cable is adequate for trunks up to approximately 3,000 feet (900 m). On trunks shorter than 1,000 feet (300 m)—which covers the vast majority of single-floor installations—24 AWG Belden 9841 is the standard choice and performs reliably at all supported baud rates.
Never use Cat5 or Cat6 Ethernet cable for MS/TP. While physically it is twisted pair, its 100-ohm impedance does not match the 120-ohm termination resistors specified by BACnet, creating impedance mismatches and signal reflections. It may appear to work on short trunks with few devices, but it will cause intermittent failures as the network grows.
Daisy-Chain Topology
BACnet MS/TP requires a strict daisy-chain (bus) topology. The cable runs from the first device on the trunk to the second, from the second to the third, and so on to the last device. Every device is connected in series along a single continuous cable path. There are no branches, no star connections, and no T-taps.
# CORRECT: Daisy-chain topology
#
# [Router]---[VAV-1]---[VAV-2]---[VAV-3]---[AHU-1]
# 120R 120R
# (termination) (termination)
#
# Each device connects directly along the main trunk cable.
# Termination resistors at the two physical endpoints only.
# WRONG: T-tap (stub) off the main trunk
#
# [Router]---[VAV-1]---+---[VAV-3]---[AHU-1]
# |
# [VAV-2] <-- T-tap / stub
#
# The stub to VAV-2 creates a branch that causes signal
# reflections. Even a 6-inch stub degrades signal quality.
# WRONG: Star topology
#
# [VAV-1]
# |
# [VAV-2]---[Hub/Panel]---[VAV-3]
# |
# [AHU-1]
#
# Star wiring creates multiple unterminated branches.
# This will not work reliably at any baud rate.The reason for this strict requirement is signal integrity. RS-485 is a differential signaling protocol operating at relatively high frequencies. Any branch or stub off the main trunk creates an impedance discontinuity where the signal partially reflects back toward the transmitter. These reflections corrupt the data frames that other devices are trying to read, producing CRC errors and token-passing failures. The effect worsens with longer stubs, higher baud rates, and more devices on the trunk.
In practice, keep the stub length from the daisy-chain trunk to a device's terminals as short as physically possible—ideally under one inch (2.5 cm). If a controller is located several feet away from the trunk path, reroute the trunk cable to pass through that controller rather than running a branch to it.
Termination Resistors
Every BACnet MS/TP trunk requires exactly two 120-ohm termination resistors: one at each physical end of the daisy chain. These resistors are wired between the A+ and B− conductors. Their purpose is to absorb the electrical signal when it reaches the end of the cable, preventing it from reflecting back and corrupting data.
# Termination resistor placement
# ──────────────────────────────────────────────
#
# [Device 1]---[Device 2]---[Device 3]---[Device N]
# 120R 120R
# (end #1) (end #2)
#
# Resistor spec: 120 ohm, 1/4 watt, 5% tolerance
# Wired between A+ and B- at the terminal block.
#
# Some devices have a built-in termination jumper or
# DIP switch. If Device 1 or Device N has one, enable
# it instead of adding an external resistor.
#
# Common devices with built-in termination:
# - Contemporary Controls BASRT-B (DIP switch)
# - Tridium JACE 8000 (jumper, model-dependent)
# - Distech EC-BOS series (DIP switch)
# - Some Schneider Electric AS-B controllers
# WRONG: Termination at every device
#
# [Device 1]---[Device 2]---[Device 3]---[Device N]
# 120R 120R 120R 120R
#
# Multiple termination resistors in parallel reduce the
# total bus impedance below spec. With four 120R resistors,
# the effective load is 30 ohms -- far too low. The RS-485
# driver cannot supply enough current, signal amplitude
# drops, and the trunk becomes unreliable.A common field mistake is installing termination resistors at every device, or at an intermediate device rather than the endpoints. This reduces the effective bus impedance and overloads the RS-485 drivers. If you measure the resistance between A+ and B− on a properly terminated trunk with no devices powered on, you should read approximately 60 ohms (two 120-ohm resistors in parallel). If you read 40 ohms or less, there are too many termination resistors on the trunk.
Polarity: A+ and B−
RS-485 is a differential signaling protocol that uses two conductors: A (also labeled Data+, D+, or +) and B (also labeled Data−, D−, or −). Polarity must be consistent at every device on the trunk. If the A+ wire connects to the + terminal at one device but to the − terminal at the next device, the differential signal is inverted at that point and communication fails.
The challenge is that manufacturers use inconsistent labeling. Some label the positive conductor as "A", others as "B". Some use "+" and "−", others use "D0" and "D1". The only reliable approach is to pick one wire color for positive and another for negative, then maintain that convention at every single terminal block on the trunk.
# Polarity wiring convention (choose and stick with it)
# ──────────────────────────────────────────────
# Wire Color Function Terminal Labels (varies by vendor)
# White A / Data+ +, A, D+, Data+, TX+/RX+, Pin 1
# Blue B / Data- -, B, D-, Data-, TX-/RX-, Pin 2
# Drain/Shield Shield/Ground SC, SH, GND, Shield, Pin 3
# ──────────────────────────────────────────────
#
# CRITICAL: If one device labels its positive terminal as "B"
# and another labels it as "A", do NOT follow the letter --
# follow the voltage. Use a multimeter to verify which terminal
# goes positive during idle state (the "mark" or "1" state).
#
# On a powered, idle MS/TP bus:
# A+ should be MORE positive than B- by 200mV or more.
# If it reads negative, your polarity is swapped at that device.A single polarity swap at one device will disrupt communication for the entire trunk downstream of that point. The inverted device will generate frames that appear as noise to every other device, causing CRC errors across the bus. During commissioning, verify polarity at every terminal block before powering on the trunk.
Trunk Length Limits by Baud Rate
The maximum allowable trunk length for BACnet MS/TP depends on the baud rate, cable gauge, and cable quality. The ASHRAE 135 specification defines a maximum segment length of 4,000 feet (1,200 meters) using 18 AWG cable at baud rates up to 76,800 bps. Higher baud rates or thinner-gauge cable require shorter maximum lengths.
| Baud Rate | Max Length (18 AWG) | Max Length (22–24 AWG) | Notes |
|---|---|---|---|
| 9,600 bps | 4,000 ft (1,200 m) | 4,000 ft (1,200 m) | Most forgiving of cable quality. Used in legacy installations. |
| 19,200 bps | 4,000 ft (1,200 m) | 4,000 ft (1,200 m) | Common in older BAS installations. |
| 38,400 bps | 4,000 ft (1,200 m) | 4,000 ft (1,200 m) | Industry standard. Best balance of speed and reliability. |
| 76,800 bps | 4,000 ft (1,200 m) | 3,000 ft (900 m) | Recommended only with high-quality cable (Belden 9841). |
| 115,200 bps | 2,500 ft (750 m) | 2,000 ft (600 m) | Rarely used. Requires excellent cable quality and short stubs. |
These are maximum values under ideal conditions—clean cable runs, proper termination, minimal EMI. In practice, reduce the maximum by 20–30% when running cable near variable-frequency drives (VFDs), high-voltage feeders, or fluorescent lighting ballasts. If a trunk must exceed the maximum length for its baud rate, install a BACnet MS/TP repeater or split the trunk into two segments with separate network numbers connected through a router.
# Trunk length decision guide
# ──────────────────────────────────────────────
# Trunk < 1,000 ft: Any baud rate, 24 AWG cable fine
# Trunk 1,000-3,000 ft: 38,400 bps, 22 or 24 AWG
# Trunk 3,000-4,000 ft: 38,400 bps, 18 AWG recommended
# Trunk > 4,000 ft: Split into two trunks with a router
# or add an RS-485 repeater
#
# Device count also matters:
# - Each device adds capacitive load to the bus
# - ASHRAE 135 allows up to 128 master devices (MAC 0-127)
# - Practical limit is 30-60 devices per trunk
# - Beyond 32 devices, use high-drive RS-485 transceivers
# or split the trunkShield Grounding
The cable shield must be continuous from the first device to the last device on the daisy chain. At each intermediate device, splice the shield through without interruption—strip the outer jacket, fold back the braid or foil, and reconnect it on the other side of the terminal block. Do not connect the shield to the device's ground terminal at intermediate points.
Ground the shield at one end of the trunk only. The grounding point should be at the supervisory controller, router, or the panel with the best earth ground connection. This is typically the first device on the trunk (the BACnet/IP to MS/TP router or the JACE). Connect the shield conductor to the device's Shield/Common (SC) terminal or to the panel's earth ground bus at that single point.
# Shield grounding: correct vs. incorrect
# ──────────────────────────────────────────────
#
# CORRECT: Shield grounded at one end only
#
# [Router]---[VAV-1]---[VAV-2]---[AHU-1]
# GND | | |
# ||| (splice) (splice) (tape off)
# Earth shield shield shield end
# ground through through insulated
#
# WRONG: Shield grounded at multiple points
#
# [Router]---[VAV-1]---[VAV-2]---[AHU-1]
# GND GND GND GND
# ||| ||| ||| |||
# Earth Earth Earth Earth
#
# Multiple ground connections create ground loops.
# Differences in earth ground potential between panels
# drive current through the shield, inducing noise on
# the data conductors and causing CRC errors.At the far end of the trunk (the last device), tape off or heat-shrink the exposed shield conductor to prevent accidental contact with any grounded surface. An unintentional second ground point creates a ground loop that injects noise onto the data conductors, producing the same CRC errors and intermittent failures that bad wiring causes.
Common Mistakes
- Using T-taps or star wiring instead of a true daisy chain. This is the single most common MS/TP wiring error. Technicians accustomed to Ethernet (which is point-to-point through switches) often wire MS/TP in a star pattern from a central panel. Even short stubs of 3–6 feet create signal reflections that cause intermittent CRC errors. On a trunk with multiple T-taps, the cumulative effect makes the network unusable at higher baud rates. The fix is to rewire in a strict daisy-chain configuration where every device is connected in series along the trunk.
- Missing or incorrect termination resistors. A trunk with no termination resistors will appear to work on short runs with few devices, but will fail intermittently as devices are added or cable length increases. Conversely, adding termination resistors at every device (or at intermediate points) overloads the RS-485 drivers and reduces signal amplitude. The correct configuration is exactly two 120-ohm resistors, one at each physical end of the daisy chain, and nowhere else.
- Inconsistent polarity (swapped A+ and B−). A polarity swap at even one device on the trunk can take down the entire bus. The swapped device transmits inverted differential signals that every other device interprets as noise. This is particularly hard to diagnose because the swapped device may still appear to work intermittently—it receives correctly (its receiver also sees the inverted signal as valid) while corrupting communication for all other devices. Always verify polarity at every terminal block during installation using a consistent wire color convention.
- Using the wrong cable type. Cat5/Cat6 Ethernet cable, thermostat wire, and speaker wire are not suitable for MS/TP. Ethernet cable has 100-ohm impedance (BACnet requires 100–130 ohms with 120-ohm termination), thermostat wire is not twisted and has high capacitance, and speaker wire provides neither shielding nor controlled impedance. Use purpose-built RS-485 cable such as Belden 9841 or an equivalent that meets the ASHRAE 135 cable specification.
- Grounding the shield at multiple points. When the cable shield is connected to earth ground at two or more locations, differences in ground potential between those points drive current through the shield. This current inductively couples noise onto the data conductors, producing CRC errors that look identical to a wiring fault or a bad device. Ground the shield at one end only—typically at the router or supervisory controller—and insulate the shield at the far end.
Platform Compatibility
BACnet MS/TP wiring requirements are defined by the ASHRAE 135 standard and the underlying EIA/TIA-485 (RS-485) electrical specification. They are vendor-neutral and apply identically across all BAS platforms. The same cable, the same daisy-chain topology, the same termination resistors, and the same polarity rules apply regardless of the controller manufacturer.
| Platform / Controller | RS-485 Terminal Labels | Built-in Termination | Wiring Notes |
|---|---|---|---|
| Contemporary Controls BASRT-B | + / − / SC | Yes (DIP switch) | Enable built-in termination only if the router is at one end of the trunk. |
| Tridium JACE 8000 | A+ / B− / REF | Model-dependent (jumper) | Check hardware manual for jumper location. REF is signal reference, not earth ground. |
| Johnson Controls FEC / FAC | + / − / S | No (external resistor required) | FEC26/36 series: screw terminals on the RS-485 port. FAC series may use Phoenix connectors. |
| Schneider Electric AS-B / AS-P | D+ / D− / SH | Some models (DIP switch) | AS-P supports two independent MS/TP ports. Terminate each trunk separately. |
| Honeywell Spyder | A / B / GND | No (external resistor required) | Note: Honeywell labels A as negative on some models. Verify with documentation. |
| Distech Controls EC-BOS | + / − / Shield | Yes (DIP switch) | DIP switch on the controller board. Factory default is unterminated. |
| Reliable Controls MACH-Pro | + / − / S | Model-dependent | Two RS-485 ports on some models. Each port is an independent trunk. |
| Carrier i-Vu / Open series | + / − / REF | No (external resistor required) | Use REF conductor as signal reference. Do not connect to chassis ground. |
The critical takeaway is that terminal labeling varies by manufacturer, but the electrical requirements are identical. Map your wire colors to the correct polarity at each device using the manufacturer's wiring diagram, not the letter on the terminal. When in doubt, use a multimeter on a powered, idle bus: the A+ terminal should read approximately 200 mV or more positive relative to B−.
Source Attribution
The technical guidance in this entry is informed by the following sources:
- Optigo Networks — The 3 Most Common MSTP Mistakes. Covers end-of-line termination, polarity errors, and grounding issues as the most frequent causes of MS/TP communication failures.
- Chipkin Automation Systems — RS-485 Cable Selection for BACnet MS/TP Networks. Technical comparison of cable types and their impact on MS/TP network reliability.
- Chipkin Automation Systems — Understanding RS485: Cable Lengths and Baud Rates for BACnet MSTP. Detailed analysis of trunk length limits at each standard baud rate.
- Chipkin Automation Systems — RS-485 Cable Specifications for BACnet MS/TP Networks. ASHRAE 135 cable requirements including impedance, capacitance, and shielding specifications.
- Contemporary Controls — BASRT-B BACnet/IP to MS/TP Router Installation Guide. Wiring diagrams, termination guidance, and shield grounding instructions for the most widely deployed standalone BACnet router.
- Belden — 9841 Multi-Pair RS-485 Cable Product Specifications. Manufacturer datasheet for the industry-standard MS/TP cable.
- Continental Control Systems — RS-485 Cables for BACnet and Modbus. Practical cable selection guide with impedance and capacitance comparisons.
- ASHRAE Standard 135 — BACnet — A Data Communication Protocol for Building Automation and Control Networks (Clause 6: MS/TP Data Link Layer; Clause 6.1: Cabling).
Was this article helpful?
Related Articles
Need to do this remotely? SiteConduit provides Layer 2 access that preserves BACnet broadcasts — no BBMD needed for remote sessions. Join the waitlist.
SiteConduit Technical Team
Idea Networks Inc.
SiteConduit builds managed remote access for building automation. Our knowledge base is maintained by BAS professionals with hands-on experience deploying and troubleshooting BACnet, Niagara, Modbus, and Facility Explorer systems.