BACnet MS/TP Communication Protocol

BACnet Overview

BACnet Overview

Developed for Building Automation and Control Networks, BACnet is a standard communication protocol described in the ANSI/ASHRAE Standard 135-1995. The BACnet protocol can be found throughout commercial and industrial buildings and supports communication and control of systems within a facility such as HVACR, lighting, and fire detection systems. The protocol was developed to allow devices from a range of manufacturers, throughout a facility, to interoperate – that is, exchange data between devices and systems. BACnet protocol is a set of rules that governs this data and allows for intercommunication among the devices on the network. The type of information exchanged can include humidity, temperature, alarm status, and other values depending on the types of devices on the network.

BACnet can successfully facilitate communication between various devices due to two important concepts: BACnet Objects and BACnet Services.

BACnet “Services,” or “service requests,” are a standard message type as defined by BACnet. These message types are used to access or process information, request an action, or inform the device that some actions have taken place. Services are also used for discovering other devices and objects. Once the service request is performed, the values are reported back to the client machine. Common services requests include: Who-is (Device and Object Discovery), Write-Properties (Data Sharing), Read-Properties (Data Sharing), and Subscribe COV (Change of Value). For example, a common service request is "Read-Properties." When the server machine receives this message from a client machine, it locates the requested property of the requested object and sends the value to the client.

BACnet “Objects” are used in conjunction with properties to describe the current status of a device to the other devices on the network. Objects enable reading, writing, and performing the desired functions of a device. Some important objects include: Analog Input/Output/Value, Binary Input/Output/Value, Device, and Multi-State Value. Below is the example from the AcuRev 1310 BACnet MS/TP of an Object for Total Watts:

  • Object_Name, P_rms
  • Object_Type, AnalogValue
  • Object_Instance, 17
  • Present_Value, watt, tot (value in watts)

What is BACnet MS/TP?

BACnet MS/TP is a token passing protocol that uses a signal, called a token, to authorize devices on the network to communicate. MS stands for “Master-Slave” and TP stands for “Token Passing.” It is mainly used for connecting field devices to a controller, router, or control applications. BACnet MS/TP physically connects devices to the network using serial RS485/EIA485 and allows up to 128 devices to be installed on a single network at a maximum physical distance of 4000 feet.

On a BACnet MS/TP network, there are devices which are “masters” and devices that are “slaves.” In this context, a master is a device which can initiate a service request and a slave is only able to send responses. It is also important to note that only the device with the token is permitted to initiate a request for data (in other words, a request that requires a slave device to respond). However, a device can respond to a service request without having the token.

Typical baud rates used for BACnet MS/TP are 9600, 19200, 38400, and 76800. All devices on a single network must be set to the same baud rate in order to communicate successfully.

Additionally, each device on a BACnet network must have a unique Device ID (Device Object Identifier).

A unique MAC address is also required for each device on the BACnet MS/TP network. The MAC address range is from 0 to 255. The method used to set the device address varies by manufacturer, but it can typically be configured via on-board DIP switches, the device display, or through BACnet.

A BACnet device has a Device Instance that can also be described as a BACnet Device Object. This BACnet Object is addressed using its Object Identifier, which can include an Object Type and Object Instance. Device Instances are in the range of 0 to 4194304.

For more information, please check

What is BACnet MS/TP Data Acquisition?

Data Acquisition is the process of sampling a physical property, such as energy, transforming the sampled data into a standard data format, and sending the information to a separate device or system. Essentially, the steps in the process are data extraction, data transformation, and data loading. BACnet MS/TP data acquisition refers to data collection (extraction, transformation, and loading) utilizing the BACnet MS/TP protocol. Devices using BACnet MS/TP protocol usually communicate via an RS485 port or a USB port. When a USB port is not available, an RS485-to-USB adapter may be used.

The components of a data acquisition system are sensors, measurement hardware, and a computer with programmable software. The BACnet MS/TP data acquisition system senses the analog signal through the RS485 port which it sends to the measurement hardware. This hardware is the interface between the computer and physical signals being measured.

A data acquisition device used for measuring a signal is comprised of three primary components: signal conditioning circuitry, analog-to-digital converter (ADC), and the computer bus. Modern data acquisition devices include components designed to automate measurement and other processes as well. For example, they may include digital-to-analog converters (DACs) designed to output analog signals, digital I/O lines to input and output digital signals, and counter/timers to count and generate digital pulses. A computer cannot interpret the data until it has been converted from analog to digital.

To be useful to the system, the raw, analog signal must go through additional processing. Conditioning circuitry is responsible for fine-tuning the raw signal from a sensor into a signal that is acceptable for input into the ADC. Signal conditioning typically includes amplification, but may also include filtering, isolation, conversion, or other processes.

At the end of the process, measured data is passed to a software program where it can be processed, visualized, and stored.

BACnet MS/TP in Accuenergy Products

BACnet MS/TP on AcuRev 1310

AcuRev 1310 has a built-in RS-485 port to support Modbus RTU and BACnet MS/TP communication protocol standards. Modbus RTU is the factory-set, default protocol on the AcuRev 1310 and users can switch to BACnet MS/TP via the display on the meter. Users can read the data from the AcuRev 1310 meter by utilizing software that can support BACnet MS/TP. Here is an overview of the process:

  • The communication protocol setting can be found on the first page of the Settings menu.
  • To enter the settings, press the “SET” key which is located under the meter’s lower terminal cover.
  • Next, the user will be prompted by a password screen. To input the user password, use the “SCROLL” key to change the value of the flashing digit. The “SET” key is used to move between digits and to confirm the entered password when on the last digit.

Note: The default password is 0000.

After entering the correct password, the AcuRev 1310 will direct users to the device address configuration of the meter.

Note: Users will be redirected back to the important parameters screen after entering the password if the physical/electronic seal is enabled.

  1. The first setting page is the communication protocol setting. Modbus RTU protocol is represented by “0.” BACnet MS/TP protocol is represented by “1.” The default setting is 0.
  2. The second page shows the MAC Address of the device. The default setting is 0 and the range is 0-127.
  3. The third page shows the baud rate setting. The meter supports four different baud rates: 9600/19200/38400/76800.
  4. The fourth page is the maximum message frame number settings. The default is 10.
  5. The fifth page shows the device ID. The default ID is 1.
  6. The sixth page is the reset page. To reset the BACnet settings, change the value to 1 and press the 'SET' button to confirm.

Note: Users will need to reset the meter to save the settings after making any changes to BACnet settings.

BACnet MS/TP Data Acquisition on the AcuLink 810

The AcuLink 810 supports the data acquisition function for BACnet MS/TP devices. There are two methods to connect BACnet MS/TP devices to AcuLink 810. The first method is through the RS485 port and the second method is through the USB port. Devices with an RS485 port need an RS485-to-USB adapter to connect. The RS485 and USB ports on the AcuLink 810 can operate simultaneously. The AcuLink 810 supports both wired and wireless communication though the Ethernet RJ45 cable and WiFi and can auto-discover BACnet IP and BACnet MS/TP devices on a network.

The AcuLink 810 BACnet IP data acquisition server can collect aggregated energy data from up to 64 serial devices over two 32 daisy chained devices. Each of these daisy chain connections can be connected to one of the two available ports (Ethernet or WiFi) which can be set as either Modbus RTU or BACnet MS/TP.

Interface Assignment

The Interface Assignment feature increases the breadth of devices that can work directly with the AcuLink 810. User-selectable protocol assignment with Modbus RTU or BACnet MS/TP also means that the AcuLink 810 is not limited to specific devices or sets of devices. The interoperability between the two leading meter protocols is ideal for applications involving a mixture of devices, where a company, institution, or campus is upgrading from a legacy system to a new system, or just to provide a cost-effective, future-proof solution.

  1. Mixed Devices
  2. Where metering devices are specialized for a specific application: for example, situations where a building’s HVAC and automation devices are utilizing the BACnet protocol while the energy usage is being sub metered or audited by Modbus-native devices. This solution allows for all devices to be connected to one data acquisition gateway via two separate channels.

  3. Legacy to New System
  4. Use when there is a transitioning period from devices using one protocol to another. AcuLink 810 can be utilized as an intermediary gateway so that both sets of devices can be sent to the same master device without requiring a complete, simultaneous overhaul.

  5. Cost-Effective + Future-Proof
  6. Having dual communication protocols avoids the need for additional protocol converters or purchasing extra controls. It also allows devices to be configured in a cohesive manner. One other advantage in situations where there is only one protocol in use is that the AcuLink 810 provides an assurance that the data acquisition gateway itself does not need to be upgraded when a new protocol is introduced into the project.


When compared to other data acquisition servers that require software installation in a computer to process and control the data, AcuLink provides the installation-free web software, which can be easily accessed through a web browser such as Chrome or Firefox.

Following is the process for configuring a protocol to a device:

  1. Add the new device to the AcuLink 810
  2. Select the protocol the device uses
  3. Select the port to which the device will be connected

Note: Each port will be protocol specific

For more information about BACnet MS/TP protocol in Accuenergy products, contact support or view the online resources available.

AcuRev 1310 Meter
AcuRev 1310 Series DIN Rail Power and Energy Meter
The AcuRev 1310 DIN Rail meter combines high performance with ease of integration to provide a cost-effective power and energy monitoring solution. Featuring a built-in LCD display designed to simplify setup and local reading of meter data. While the Modbus-RTU and pulse output communication allow seamless integration with data acquisition systems.