Tel: +1-617-350-7550

BACnet Protocol Stack tutorial Part 1

BACnet Protocol Stack tutorial Part 1

July 02, 2020

Let’s start with a basic. 

What is BACnet? 

BACnet is an ISO, ANSI, and ASHRAE standard network protocol for building automation. BACnet was developed by the American Society of Heating, Refrigerating, and Air-Conditioning Engineers (ASHRAE), and it was originally approved as an ASHRAE standard in 1995. The BACnet standard is maintained by ASHRAE committee SSPC 135.

BACnet is one of the most popular automation and control protocols used in products of leading industry vendors such as Honeywell, Johnson Controls, Siemens, Schneider, Trane, Azbil, and more. A new market research study indicates BACnet’s global market share has continued to rise over the last five years and now exceeds 60%.  

BACnet was designed to allow communication of building automation and control systems for applications such as heating, ventilating, and air-conditioning control (HVAC), lighting control, access control, and fire detection systems and their associated equipment. The BACnet protocol provides mechanisms for computerized building automation devices to exchange information regardless of the particular building service they perform. It can be used by computers, general-purpose direct digital controllers, and application-specific or unitary controllers with equal effect. One of the major advantages of this protocol is that it was developed from the beginning as an independent open standard automation protocol. More history you can find here.  

BACnet was originally developed to improve interoperability between building automation equipment, but its data definitions and flexible architecture makes it usable in a wide range of distributed control applications. 


BACnet is an object-oriented protocol. BACnet Objects are used to represent network-accessible control equipment. BACnet defines more than 60 standard object types, including: Accumulator, Analog Input/Output/Value, Averaging, Binary Input/Output/Value, Calendar, Command, Device, File, Life Safety Point, Life Safety Zone, Loop, Multi-state Input/Output/Value, Notification Class, Event Notification, Program, Pulse Converter, Schedule, Trend-Log and others. Each object contains a list of properties whose values indicate the current state of the control equipment. The BACnet standard specifies mandatory and optional properties for the standard object types, as well as mandatory behavior associated with some properties. 

A BACnet device maintains a collection of Objects, including one Device Object, which describes its BACnet capabilities, and, starting with BACnet revision 17, one or more Network Port Objects, which describe the configuration and properties of network ports of the device. A BACnet device can function as a BACnet Server or a BACnet Client. A Server responds to BACnet service requests to read and manipulate its Objects. A BACnet Client generates service requests to monitor and control BACnet Servers. Some service requests that Servers will commonly respond to are Who-Is, Read-Property, and Write-Property. Servers can also generate service requests, such as I-Am and the service requests used to report events and alarms. Many BACnet controllers and workstations have both Client and Server functionality. Starting with BACnet revision 17, all BACnet devices have to provide the minimal server functionality as it is defined in the corresponding BACnet profile.


For transmission of packets, BACnet makes use of three popular LAN technologies: Ethernet™, ARCNET™, and LONtalk™. BACnet devices may also be directly connected to IP and IPv6 networks. BACnet includes an RS-485 master/slave data link layer and a point-to-point data link layer that were specially developed for BACnet. A BACnet internetwork can be formed from several BACnet LANs employing similar or different LAN technologies using BACnet-compliant routers.

The main references for BACnet are: 

  • ANSI/ASHRAE Standard 135-2016 “BACnet” (ISSN 1041-2336). The standard is available in book form or as an electronic document from ASHRAE
  • Direct Digital Control of Building Systems, by H. Michael Newman (ISBN 0-471-51696-1). This book, which was published in 1994, contains one chapter on data communications and one chapter describing BACnet prior to its approval as a standard. 1 Chapter 1. Introduction 
  • BACnet Gebäude-Automation 1.4, by Hans R. Kranz (ISBN 3-922420-02-8). This German-language book was published in 2005. 
  • Various articles about BACnet have been published in the ASHRAE Journal and elsewhere. The BACnet bibliography contains references for many of these articles. 

What is BACnet Protocol Stack?

BACnet is based on a four-layer collapsed architecture that corresponds to the physical, data link, network, and application layers of the OSI model as shown in the figure below. 

BACnet Architechture

What is the OSI model?

As Shengwei Wang specified in his book Intelligent Buildings and Building Automation there is an international standard that defines a model for developing multi-vendor computer communication protocol standards called The Open System Interconnection (OSI). The OSI model addresses the general problem of computer-to-computer communication and breaks this very complex problem into seven smaller, more manageable sub-problems, each of which concerns itself with a specific communication function. Each of these sub-problems forms a "layer" in the protocol architecture. 

BACnet layers

Why does it use only four layers? As the BACnet standard explains, this configuration was chosen after careful consideration of the particular features and requirements of BAC networks, including a constraint that protocol overhead needed to be as small as possible. 

BACnet Physical Layer

The physical layer provides a means of connecting the devices and transmitting the electronic signals that convey the data. The protocol defines rules for electrical signaling, addressing, error checking, network access, flow control, presentation, and message format. BACnet supports several data links:

  • Ethernet (ISO 8802-3)
  • ARCNET (ATA 878.1)
  • MS/TP
  • PTP
  • LonTalk (ISO/IEC 14908.1)
  • BACnet/IP
  • BACnet/IPv6

BACnet Data Link Layer

The data link layer organizes the data into frames or packets, regulates access to the medium, provides addressing, and handles some error recovery and flow control. 

Cimetrics BACstac protocol

stack supports several standard BACnet data links. Some of these data links require lower-level operating system components to be installed. The BACnet/Ethernet data link uses the WinPCap interface. The BACnet/IP data link uses the TCP/IP protocol stack through the Windows Sockets API. The BACnet/PTP data link layer uses an unoccupied serial port. If your PTP DL is modem-configured, it will be capable of dialing and receiving calls. You can have any number of BACnet/Ethernet, BACnet/IP, Virtual, and BACnet/PTP ports.

BACnet Network Layer

Functions provided by the network layer include translation of global addresses to local addresses, routing messages through one or more networks, accommodating differences in network types and in the maximum message size permitted by those networks, sequencing, flow control, error control, and multiplexing. 

BACnet Application Layer

This layer handles the actual interface with the user’s application program. It also takes care of reliability and segmentation/sequencing mechanisms usually associated with transport and session layers. 

Leave a comment

Comments will be approved before showing up.

Also in Cimetrics News

April 2022 Newsletter
April 2022 Newsletter

May 03, 2022

What is new this month with cybersecurityNational Institute of Standards and Technology (NIST) revised cybersecurity supply-chain guidance, Tenet Health cybersecurity incident, Poisoned AI, U.S. Department of Energy (DOE) cybersecurity research projects and more...

Read More

Cybersecurity News April 2022
Cybersecurity News April 2022

April 29, 2022

NIST revised cybersecurity supply-chain guidance, Tenet Health cybersecurity incident, Poisoned AI, Department of energy cybersecurity research projects and more...

Read More

Cybersecurity News March 2022
Cybersecurity News March 2022

March 29, 2022

Five Top Cybersecurity Trends To Keep An Eye On In 2022, 6 Takeaways On Cybersecurity Policy from the USA President’s FY 2023 Budget, Friend and foe: The little-known pact at the heart of cybersecurity and more.

Read More