Building Automation

HVAC, Lighting & Energy Monitoring

Ignition BACnet Integration: Smart Building Management

Connect BACnet-enabled building automation systems to Ignition SCADA for centralized monitoring and control of HVAC, lighting, metering, and access systems. Leverage the Ignition BACnet integration to unify your smart building infrastructure on a single platform.

Overview

Ignition BACnet integration bridges the gap between building automation controllers and enterprise-grade SCADA. BACnet (Building Automation and Control Networks) is the ASHRAE standard protocol used by HVAC controllers, lighting systems, energy meters, and fire safety devices worldwide.

With the Ignition BACnet driver, you can discover devices on the network, map BACnet objects to Ignition tags, and subscribe to Change of Value (COV) notifications for real-time data updates without constant polling.

Key Benefits

  • Native BACnet/IP protocol support
  • Automatic device discovery via WhoIs
  • COV subscriptions for real-time updates
  • Full BACnet object type mapping
  • Centralized multi-building management

BACnet Integration Architecture

End-to-end architecture from BACnet field devices through the IP network to Ignition tags and visualization dashboards.

┌─────────────────────────────────────────────────────────────────┐
│                      BACnet Field Devices                      │
│  ┌──────────┐   ┌──────────────┐   ┌───────────────────────┐  │
│  │   HVAC   │   │   Lighting   │   │   Energy Meters /     │  │
│  │ Controllers│  │  Controllers │   │   Fire & Safety       │  │
│  └─────┬────┘   └──────┬───────┘   └───────────┬───────────┘  │
│        │               │                        │              │
│        └───────────────┼────────────────────────┘              │
│                        │                                       │
│               BACnet/IP Network                                │
│                        │                                       │
├────────────────────────┼───────────────────────────────────────┤
│                        ▼                                       │
│          ┌──────────────────────────┐                          │
│          │  Ignition BACnet Driver   │                          │
│          │  - WhoIs Discovery        │                          │
│          │  - Object Mapping         │                          │
│          │  - COV Subscriptions      │                          │
│          └────────────┬─────────────┘                          │
│                       ▼                                        │
│          ┌──────────────────────────┐                          │
│          │     Ignition Tag System   │                          │
│          │  AI / AO / BI / BO / AV  │                          │
│          └────────────┬─────────────┘                          │
│                       ▼                                        │
│   ┌─────────────┬─────────────┬──────────────┐                 │
│   │ Dashboards  │  Alarms &   │  Historian &  │                 │
│   │ & HMI       │  Schedules  │  Reporting    │                 │
│   └─────────────┴─────────────┴──────────────┘                 │
└─────────────────────────────────────────────────────────────────┘

Configuration Steps

1

Step 1: Install the BACnet Driver Module

Download and install the BACnet driver module from the Ignition Gateway. Navigate to Config > Modules and upload the signed module file to enable BACnet/IP communication.

# Install the BACnet driver module on Ignition Gateway
# Gateway > Config > Modules > Install or Upgrade a Module

# Verify the module is running:
# Gateway > Config > Modules
#   BACnet Driver  |  Status: Running  |  Version: x.x.x

# Create a new BACnet device connection:
# Gateway > Config > OPC-UA > Device Connections
#   Name: BACnet_Building_A
#   Driver: BACnet/IP
#   Network Interface: 0.0.0.0 (or specific NIC IP)
#   Port: 47808 (default BACnet/IP port)
2

Step 2: Discover BACnet Devices on the Network

Use the BACnet WhoIs broadcast to automatically discover all BACnet devices on the local network or across subnets. Each discovered device is identified by its device instance number and network address.

# BACnet WhoIs Discovery Configuration
# Gateway > Config > OPC-UA > Device Connections > BACnet_Building_A

# Discovery Settings:
#   WhoIs Range Low:    0          (minimum device instance)
#   WhoIs Range High:   4194303    (maximum device instance)
#   WhoIs Timeout:      5000 ms
#   Network Number:     0          (local network)

# Discovered devices appear in the OPC browser:
#   [BACnet_Building_A]
#     ├── Device 1001 - AHU-01 (Air Handling Unit)
#     ├── Device 1002 - AHU-02
#     ├── Device 2001 - VAV-Floor1
#     ├── Device 3001 - Meter-Main
#     └── Device 4001 - Lighting-Lobby
3

Step 3: Map BACnet Objects to Ignition Tags

Map BACnet object types to Ignition OPC tags. BACnet defines standard object types including Analog Input (AI), Analog Output (AO), Binary Input (BI), Binary Output (BO), Analog Value (AV), and Binary Value (BV) for comprehensive building data access.

# BACnet Object Type Mapping to Ignition Tags
#
# Object Type  │ Abbrev │ Use Case             │ Tag Example
# ─────────────┼────────┼──────────────────────┼──────────────────────
# Analog Input  │   AI   │ Temperature sensor   │ AI:0/Present_Value
# Analog Output │   AO   │ Valve position cmd   │ AO:1/Present_Value
# Binary Input  │   BI   │ Fan running status   │ BI:0/Present_Value
# Binary Output │   BO   │ Fan start/stop cmd   │ BO:0/Present_Value
# Analog Value  │   AV   │ Setpoint             │ AV:0/Present_Value
# Binary Value  │   BV   │ Mode selector        │ BV:0/Present_Value

# OPC item path format:
# [BACnet_Building_A]Device 1001/AI:0/Present_Value

# Jython script to read BACnet tags in Ignition:
zone_temp = system.tag.readBlocking(
    ["[default]BACnet/AHU_01/Zone_Temperature"]
)[0].value

supply_temp = system.tag.readBlocking(
    ["[default]BACnet/AHU_01/Supply_Air_Temp"]
)[0].value
4

Step 4: Configure COV Subscriptions for Real-Time Updates

Enable Change of Value (COV) subscriptions so BACnet devices push updates to Ignition only when values change, reducing network traffic and ensuring real-time responsiveness without continuous polling.

# COV Subscription Configuration
# Gateway > Config > OPC-UA > Device Connections > BACnet_Building_A

# COV Settings:
#   Enable COV:           true
#   COV Lifetime (s):     300     (re-subscribe interval)
#   COV Increment (AI):   0.5     (minimum change to trigger)
#   Fallback Poll Rate:   10000   (ms, if COV not supported)

# COV vs Polling comparison:
#   Polling:  Reads every N seconds → constant network load
#   COV:      Device notifies on change → minimal traffic

# Verify COV is active in the OPC Quick Client:
#   Tag Status shows "COV" subscription type
#   Value updates only appear when the source changes

# Example: COV-driven alarm on zone temperature
# Tag alarm bound to [default]BACnet/AHU_01/Zone_Temperature
#   High setpoint: 26.0 C  →  Active alarm
#   Low setpoint:  18.0 C  →  Active alarm

Key Features

BACnet/IP Protocol

Native support for BACnet/IP communication over standard Ethernet networks. Connect to HVAC controllers, lighting systems, and energy meters without additional gateways or protocol converters.

Automatic Device Discovery

Broadcast WhoIs requests to automatically discover all BACnet devices on the network. Enumerate device objects, properties, and capabilities without manual configuration.

COV Subscriptions

Subscribe to Change of Value notifications from BACnet devices for event-driven data updates. Reduce network bandwidth and ensure real-time responsiveness compared to traditional polling.

Object Type Mapping

Comprehensive mapping of all standard BACnet object types (AI, AO, BI, BO, AV, BV, schedules, calendars) to Ignition tags with proper data types, engineering units, and quality codes.

Use Cases

Commercial Real Estate

Smart Building HVAC Monitoring

Monitor and control HVAC systems across multiple buildings from a single Ignition platform. Track zone temperatures, air handling unit performance, chiller efficiency, and occupancy-based setpoint adjustments in real time using BACnet integration.

Education & Corporate

Campus Energy Management

Aggregate energy consumption data from BACnet-connected meters across a university or corporate campus. Identify waste patterns, implement demand response strategies, and generate sustainability reports with historical trending and analytics.

Data Centers & IT

Data Center Environmental Monitoring

Monitor critical environmental parameters in data centers including rack inlet temperatures, humidity levels, differential pressure, and cooling unit performance. Trigger automated responses and alerts to prevent equipment damage using BACnet COV subscriptions.

Technologies

BACnet/IP

The BACnet protocol running over IP networks (UDP port 47808), enabling building automation devices to communicate on standard Ethernet infrastructure.

BACnet Driver

Ignition's native BACnet driver module that provides device connectivity, object browsing, and tag subscription management for building automation systems.

BMS Controllers

Building Management System controllers from vendors like Johnson Controls, Honeywell, Siemens, and Schneider Electric that communicate via BACnet/IP.

ASHRAE Standard

ASHRAE Standard 135 defines the BACnet protocol for building automation. It ensures interoperability between devices from different manufacturers.

COV (Change of Value)

A BACnet service that allows devices to notify subscribers when a value changes beyond a defined threshold, enabling event-driven data acquisition.

Frequently Asked Questions

Find answers to common questions about this integration.

The Ignition BACnet driver supports all standard BACnet object types defined by ASHRAE 135, including Analog Input (AI), Analog Output (AO), Binary Input (BI), Binary Output (BO), Analog Value (AV), Binary Value (BV), Multi-State Input/Output/Value, Schedule, Calendar, Trend Log, and Notification Class objects. Each object's Present_Value and other properties are accessible as Ignition tags.
Yes, BACnet supports cross-subnet discovery through BACnet/IP Broadcast Management Devices (BBMDs). Configure a BBMD table on your BACnet routers to relay WhoIs broadcasts between subnets. In the Ignition BACnet driver settings, you can specify the BBMD address to enable discovery of devices on remote subnets.
COV (Change of Value) subscriptions dramatically reduce network traffic because BACnet devices only send data when values change beyond a configurable threshold. In a typical building with thousands of points, polling every point at 1-second intervals generates massive network load. With COV, stable values like room temperatures produce zero traffic until they actually change, often reducing network usage by 80-90% while providing faster response to real changes.
Yes, Ignition supports full read/write access to BACnet objects. You can write to Analog Output, Binary Output, Analog Value, and Binary Value objects to change setpoints, start/stop equipment, or modify schedules. BACnet priority arrays are supported, allowing you to write at specific priority levels (1-16) to respect the BACnet command hierarchy. This enables centralized control while maintaining local override capabilities.

Ready to Get Started?

Contact our team of experts to discuss your integration needs and get a customized solution.