What Is BACnet?

BACnet (Building Automation and Control Networks) is an open-standard communication protocol specifically designed for building automation systems. Developed by ASHRAE and ratified as an ISO standard in 2003, it's the common language that lets devices from different manufacturers — thermostats, air handlers, lighting controllers, fire panels, elevators — all communicate on a single network.

Before BACnet, building systems were siloed. Your HVAC controller from one vendor couldn't talk to the lighting system from another. You needed proprietary gateways and custom integrations for everything. BACnet changed that by providing a universal data model and communication protocol that any vendor could implement.

Why it matters: A large commercial building might have hundreds of controllers from a dozen vendors. BACnet is what lets a building operator monitor and control all of them from a single workstation — or lets a modern BMS platform like Siemens Desigo integrate them into one coherent system.

The BACnet Object Model

BACnet represents everything in a building system as objects with properties. This is the core abstraction that makes the protocol so flexible.

The most common object types you'll encounter:

Object TypeAbbreviationExample
Analog InputAITemperature sensor reading (72.4°F)
Analog OutputAODamper position command (0–100%)
Analog ValueAVSetpoint (70°F cooling setpoint)
Binary InputBIFan status (running / stopped)
Binary OutputBOLights on/off command
Binary ValueBVOccupied mode flag
ScheduleSCHHVAC occupancy schedule
Trend LogTLHistorical temperature data

Every object has a set of properties. The most important one is the Present Value — the current reading or command state of that object. When you're commissioning a system, you spend a lot of time reading and writing Present Values to verify that controllers are responding correctly.

// Reading a BACnet object via BACnet/IP
ReadProperty-Request {
  object-identifier: (analog-input, 1) // AI-1
  property-identifier: present-value
}

ReadProperty-ACK {
  object-identifier: (analog-input, 1)
  property-identifier: present-value
  property-value: 72.4 // 72.4°F
}

BACnet Transport Options

BACnet can run over several different physical and network layers, which is one reason it's so widely deployed:

  • BACnet/IP — The most common today. BACnet messages carried over standard Ethernet/IP networks. Easy to integrate with IT infrastructure.
  • BACnet MS/TP — Master-Slave/Token-Passing over RS-485. A serial protocol common for field-level devices like VAV controllers. Very cost-effective for large deployments.
  • BACnet/Ethernet — Direct Ethernet framing without IP. Less common now.
  • BACnet/MSTP over Arcnet — Legacy, rarely seen anymore.

In practice at Siemens, we typically see a hybrid: BACnet/IP for controllers at the floor or building level, MS/TP for the field devices (VAV boxes, fan coil units) hanging off those controllers. A BACnet router bridges between the two.

Change of Value (COV) Subscriptions

Polling every device every few seconds to check its current value would create enormous network traffic in a large building. BACnet solves this elegantly with Change of Value (COV) subscriptions.

Instead of asking "what's the temperature?" every 30 seconds, a supervisor subscribes to a sensor object and only receives a notification when the value changes beyond a defined increment. This dramatically reduces network load while keeping the BMS current.

// COV Subscription
SubscribeCOV-Request {
  subscriber-process-identifier: 1
  monitored-object-identifier: (analog-input, 1)
  issue-confirmed-notifications: TRUE
  lifetime: 3600 // renew every hour
  COV-increment: 0.5 // notify on 0.5°F change
}

What I've Learned in the Field

Working as a commissioning intern at Siemens, BACnet goes from textbook protocol to something very real very quickly. A few things I've picked up:

Network configuration matters more than you'd think

Getting BACnet/IP devices to communicate reliably on a construction-site network — where IT infrastructure is often temporary and shared with dozens of contractors — requires careful attention to subnets, BBMD (BACnet Broadcast Management Device) configuration, and network segmentation. A misconfigured BBMD is often the first thing to check when devices can't discover each other.

Sequence of operations is everything

The sequence of operations (SOO) document defines exactly how a system should behave — when the AHU should start, how the dampers should respond to occupancy, what happens during a fire alarm. During commissioning, you verify that what's programmed in the controller actually matches the SOO. This is where BACnet read/write access is essential.

Interoperability is real, but not guaranteed

BACnet is an open standard, but "BACnet certified" devices still vary in how completely they implement the spec. Always check the PICS (Protocol Implementation Conformance Statement) document for a device to know exactly what BACnet features it supports before you design an integration around it.

Takeaway: BACnet is the backbone of modern building intelligence. Understanding it — not just as an IT protocol but in the context of how buildings actually operate — is what separates a competent BAS technician from a great one.

Further Reading

  • ASHRAE Standard 135 — The BACnet standard itself. Dense but authoritative.
  • BACnet International — Industry organization with great educational resources.
  • Siemens Building Technologies blog — Practical articles on BAS implementation.