Niagara Driver Configuration Cheat Sheet

Niagara / TridiumNiagara driversBACnet driverModbus driverWorkbench
May 2, 2026|7 min read

To set up a protocol driver in Niagara Workbench, open Config > Drivers in the Nav tree, drag the appropriate network component (BacnetNetwork, ModbusTcpNetwork, ModbusAsyncNetwork, or LonNetwork) from the palette, configure the local device identity and communication port, then use the Device Manager to discover or manually add field devices. The most common failures come from duplicate device IDs, mismatched baud rates on MS/TP trunks, incorrect Modbus addressing conventions, and tuning policies that overload the poll scheduler.

Niagara Driver Architecture

Every Niagara station—whether running on a JACE 8000, JACE 9000, or a Supervisor host—uses a modular driver framework to communicate with field devices. Drivers live under the Config > Drivers node in the station's Nav tree. Each protocol gets its own network container (BacnetNetwork, ModbusTcpNetwork, ModbusAsyncNetwork, LonNetwork), and each network container holds device objects that represent individual field controllers or instruments.

The driver architecture follows a consistent hierarchy across all protocols: Network > Device > Points. The network component owns the communication channel (an IP socket, a serial port, or a LON transceiver). Device components represent addressable endpoints on that channel. Point components (called proxy points in Niagara terminology) are the individual data values—temperatures, setpoints, statuses, commands—that the driver reads from or writes to the field device.

Before adding any driver, you must install the corresponding module on the station. In Workbench, navigate to Platform > Platform Administration > Software Manager, locate the protocol module (e.g., bacnet, modbus, lonworks), and install it. The station will prompt for a restart after module installation. Once the module is installed, the protocol's palette becomes available for drag-and-drop configuration.

BACnet Driver Setup (IP and MS/TP)

BACnet is the most commonly integrated protocol in Niagara-based building automation systems. The Niagara BACnet driver supports both BACnet/IP and BACnet MS/TP from a single BacnetNetwork component, with separate port configurations for each transport.

Step 1: Add the BACnet Network

Open the bacnet palette in the Palette window. Drag the BacnetNetwork component onto Config > Drivers in the Nav tree. Workbench will automatically prompt you to install any missing dependent modules—confirm and commit the installation if needed.

Step 2: Configure the Local Device

Navigate to Config > Drivers > BacnetNetwork > Local Device. The critical property here is Object Id, which is the BACnet device instance number for the Niagara station itself. The default value of -1 is invalid and must be changed to a unique number within your BACnet internetwork. Choose a device instance that does not conflict with any other BACnet device on any connected network. Common practice is to reserve a range (e.g., 100000–100999) for Niagara supervisors and JACEs.

Step 3: Configure BACnet/IP

Navigate to Config > Drivers > BacnetNetwork > Bacnet Comm > Network > Ip Port. This port is added by default but must be configured and enabled:

If the Niagara station needs to communicate with BACnet devices on remote IP subnets, you must also configure a BBMD (BACnet Broadcast Management Device) entry or register as a foreign device. Add BBMD entries under the Ip Port's BBMD Table, specifying the IP address and broadcast distribution mask of each remote BBMD.

Step 4: Configure BACnet MS/TP (If Applicable)

If you have RS-485-connected MS/TP devices, open the bacnet palette, find the NetworkPorts folder, and drag the MstpPort component onto Config > Drivers > BacnetNetwork > Bacnet Comm > Network. Configure the following:

Step 5: Discover and Add Devices

Navigate to Config > Drivers > BacnetNetwork and open the Bacnet Device Manager view (right-click > Views > Bacnet Device Manager, or use the AX Bacnet Device Manager on older versions). Click Discover to send a BACnet Who-Is broadcast. Discovered devices appear in the manager table. For each device you want to integrate, set the Device ID, Network number, and MAC Address. For BACnet/IP devices, the MAC address format is 192.168.1.100:0xBAC0 (IP address and UDP port). For MS/TP devices, the MAC address is the device's MS/TP address (0–127).

After adding devices, right-click each device and select Actions > Discover to enumerate the device's BACnet objects. You can then add proxy points for the objects you need.

Modbus Driver Setup (TCP and RTU)

Niagara provides separate network components for Modbus TCP and serial (RTU/ASCII) connections. Understanding which component to use depends on how the Modbus device connects to the network.

Modbus TCP (Direct IP Devices)

For Modbus devices with native Ethernet interfaces (energy meters, VFDs with IP cards, smart sensors), use the ModbusTcpNetwork:

  1. Open the modbus palette and drag ModbusTcpNetwork onto Config > Drivers.
  2. Right-click the network and add a ModbusTcpDevice for each field device.
  3. On each device, set the Ip Address to the device's IP, and the Tcp Port (default 502).
  4. Set the Unit Id (Modbus slave address). For direct TCP devices, this is usually 1 or 255. Check the manufacturer's documentation.

Modbus TCP Gateway (Serial Devices Behind a Gateway)

When RS-485 Modbus RTU devices connect through a TCP-to-serial gateway (such as an Ethernet-to-RS485 converter), use the ModbusTcpGateway component instead:

  1. Drag ModbusTcpGateway from the modbus palette onto Config > Drivers.
  2. Set the Ip Address to the gateway's IP address.
  3. Set the Modbus Data Mode to Rtu (default) or Ascii depending on the serial network type.
  4. Add child ModbusTcpGatewayDevice entries for each serial device behind the gateway, setting the correct Modbus slave address for each.

Modbus RTU (Direct Serial Connection)

For a direct RS-485 serial connection from the JACE to Modbus RTU devices, use the ModbusAsyncNetwork:

  1. Drag ModbusAsyncNetwork from the modbus palette onto Config > Drivers.
  2. Right-click the network, select Views > Property Sheet, and expand Serial Port Config.
  3. Set Port Name to the JACE's serial port (e.g., COM2 for the default RS-485 port on a JACE 8000).
  4. Configure Baud Rate, Data Bits, Stop Bits, and Parity to match the field devices. The most common Modbus RTU setting is 9600/8/N/1, but many devices use 19200 or 38400.
  5. Add ModbusAsyncDevice child components for each slave, setting the Address to the device's Modbus slave ID (1–247).

Adding Modbus Points

For each Modbus device, you manually add proxy points referencing the correct register addresses. Niagara's Modbus driver uses 0-based PDU addressing. If your register map says holding register 40001, you enter address 0 and select register type Holding Register. If the map says register 40100, enter address 99. Getting this offset wrong by one register is the single most common Modbus integration error.

For multi-register data types (32-bit integers, IEEE 754 floats), configure the Data Type and Byte Order properties on each proxy point to match the manufacturer's specification. Use the device's Actions > Learn Optimum Device Poll Config to let Niagara automatically group consecutive registers into efficient multi-register read commands.

LonWorks Driver

LonWorks integration requires a JACE with a physical LON transceiver (such as the EM-8000-LON option module) or a Supervisor with a LON-IP adapter. LonWorks is less common in new installations but remains prevalent in legacy buildings, particularly those with older Honeywell, TAC/Schneider Xenta, or Johnson Controls equipment.

  1. Open the lonworks palette and drag LonNetwork onto Config > Drivers.
  2. Navigate to the LonNetwork's Lon Comm Config and set the Device Name to the LON port identifier (e.g., LON1, LON2) matching the physical transceiver port on the JACE.
  3. If the JACE has multiple LON ports, add a separate LonNetwork for each physical port.
  4. Open the Lon Device Manager view to discover or manually add LON devices. The device manager supports learning devices by their Neuron ID, assigning subnet/node addresses, and downloading standard network variable (SNVT) applications.
  5. For LON over IP (LON-IP), use the LonIpNetwork component from the lonIp module instead. This variant adds an ipChannel container for Ethernet-based LON communication, eliminating the need for a physical FTT-10A transceiver.

LonWorks device discovery in Niagara is generally slower than BACnet because the LON protocol does not have an equivalent of BACnet's Who-Is broadcast. Discovery relies on service pin messages from devices or manual entry of Neuron IDs. Plan extra commissioning time for LON-heavy projects.

Driver Polling and Performance Tuning

Every proxy point in a Niagara station must be periodically refreshed. The Poll Scheduler (visible at Config > Drivers > [Network] > Poll Scheduler) manages three polling buckets: Fast, Normal, and Slow. Each bucket runs at a configurable interval, and every proxy point is assigned to one of the three buckets through its tuning policy.

Tuning Policies

Tuning policies are defined in the Tuning Policy Map under the network component. Each policy specifies the poll frequency bucket and, for BACnet, whether to use COV (Change of Value) subscriptions instead of polling. Navigate to Config > Drivers > BacnetNetwork > Tuning Policy Map to create or edit policies. Common practice is to create separate policies:

Modbus Poll Optimization

Modbus networks benefit significantly from register grouping. By default, the Niagara Modbus driver creates a separate read command for each individual proxy point. For devices with many consecutive registers, this is extremely inefficient. Use Actions > Learn Optimum Device Poll Config on each Modbus device to let Niagara automatically identify consecutive registers of the same type and group them into multi-register read commands. This can reduce the number of Modbus transactions by 80% or more on register-dense devices like energy meters.

Monitoring Poll Health

Check the Poll Scheduler's Busy Time statistic regularly. This value indicates what percentage of the poll cycle is spent actively communicating. Keep busy time below 75%. If it consistently exceeds this threshold, the station cannot keep up with the configured poll rates. Remedies include:

Common Mistakes

  1. Leaving the Local Device Object Id at -1. The BacnetNetwork ships with a default device instance of -1, which is not a valid BACnet device ID. The driver will not communicate until you set a valid, unique device instance number. This is the first thing to check when BACnet discovery returns no results after a fresh driver installation.
  2. Mismatched baud rate or Max Master on MS/TP trunks. Every device on a BACnet MS/TP segment must use the same baud rate. If the Niagara station is set to 38400 and a field controller is at 9600, neither device will see the other. Similarly, if Max Master is set to 31 but a device has MAC address 45, the station will never pass the token to that device and it will appear offline.
  3. Modbus off-by-one addressing errors. Niagara's Modbus driver uses 0-based PDU addresses. If you copy register numbers directly from a manufacturer's 1-based register map (e.g., entering 40001 instead of 0 for the first holding register), every point reads from the wrong address. The resulting values may look plausible but will be incorrect. Always subtract the register type offset before entering addresses in Niagara.
  4. Forgetting to enable the communication port. Both the BACnet IP Port and MS/TP Port have an Enabled property that defaults to false on newly added ports. Dragging the port component into the Nav tree does not automatically start communication. You must explicitly set Enabled to true and, on some platforms, right-click and select Enable from the context menu.
  5. Overloading the poll scheduler with too many fast-polled points. Adding hundreds of proxy points on the Fast poll bucket overwhelms the JACE's CPU and network bandwidth. The Poll Scheduler's busy time climbs above 100%, poll cycles start overlapping, and point values go stale. Audit which points truly need fast polling (safety interlocks, critical process variables) and move everything else to Normal or Slow.

Platform Compatibility

Driver availability and configuration options vary across Niagara hardware and software versions. Here is what to expect on each platform:

PlatformBACnet IPBACnet MS/TPModbus TCPModbus RTULonWorks
JACE 8000 (Niagara 4.x)YesYes (COM port)YesYes (COM port)Yes (with LON option module)
JACE 9000 (Niagara 4.x / 5.x)YesYes (COM port)YesYes (COM port)Check option module availability
Niagara Supervisor (Windows/Linux)YesNo (no serial port)YesVia USB-to-RS485 adapterVia LON-IP adapter or USB interface
JACE-6xx / JACE-2xx (Niagara AX)YesYesYesYesYes (with LON daughter card)

On Niagara 4.8 and later, the BACnet driver includes improved COV subscription handling and better diagnostic logging. The Modbus driver received the “Learn Optimum Device Poll Config” feature in Niagara 4.7 for automatic register grouping. LonWorks support depends on hardware—the JACE 8000 requires the EM-8000-LON option module, while Supervisor instances use LON-IP (EIA-852 tunneling) through an IP-to-LON router.

Source Attribution

This guide draws on technical documentation and community discussion from the following sources:

Niagara driversBACnet driverModbus driverWorkbenchconfiguration

Was this article helpful?

Related Articles

Need to do this remotely? SiteConduit replaces VPN configuration with one-click encrypted sessions. No port forwarding, no certificate management. Join the waitlist.

SC

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.