Reading BACnet Data with ControlCom Edge Server
The ControlCom Connect platform allows fully configuring a onboarded device Edge Server configuration to read BACnet data over either BACnet/IP (Ethernet) or BACnet MS/TP (RS-485 serial).
Prerequisites
- This guide requires the ControlCom Edge Server to be onboarded. See our Onboarding Guide for the Edge Server to get started.
- A variable must already exist on the device to receive BACnet values. See Creating a Variable — you'll need its Topic Property Path when configuring the BACnet object.
Creating a BACnet Client
To create a new BACnet client in ControlCom Connect for device:
- Navigate to Administration > Devices
- Select a onboarded device
- In the device page, click the Edge Server tab
- Click the "+ Add Client" and select BACnet IP or BACnet MSTP (For this guide, use BACnet IP)
- Important Note If using BACnet MSTP, the ControlCom Edge Server requires a volume mount to the location of the serial device which this guide does not cover.
- A new subitem will appear called "Clients", select the newly added client.


Connection Sub Menu
- Enter in a friendly name for the BACnet Client Name
For BACnet IP:
- Enter the Device Address (the IP address of the BACnet device), such as
192.168.1.100 - Enter the Port (defaults to
47808, the BACnet/IP standard)
For BACnet MSTP:
- Enter the Serial Port path, such as
/dev/ttyUSB0 - Enter the Baud Rate (defaults to
9600) - Enter the MAC Address of the Edge Server on the MS/TP bus (
0–127) - Optionally enter a Target MAC Address for ReadProperty/WriteProperty requests (
0–127). Leave empty to fall back to the Edge Server's MAC Address. - Optionally set Max Master (defaults to
127), Max Info Frames (defaults to1), Data Bits (defaults to8), Stop Bits (defaults to1), and Parity (none,even, orodd).
Shared fields (both transports):
- Enter the Device Instance — the BACnet device instance ID of the target controller.
- Set the Poll Interval (ms) — how often the Edge Server polls each object. Defaults to
1000. - Set the Timeout (seconds) — how long to wait for a BACnet response before considering the request failed. Defaults to
15. - Enable the Enabled toggle to enable the client.
Settings Sub Menu
The Settings tab exposes maintenance actions for the client:
- Remove Client removes the BACnet client from this Edge Server configuration.
- Export Variables downloads the current object list as a CSV (useful for bulk editing).
- Import Client Variables restores an object list from a previously exported CSV.
Objects Sub Menu
- Click the "Add Object" button
- Select the newly added entry in the objects list on the left
- Select the Object Type. Supported types:
AnalogInput,AnalogOutput,AnalogValueBinaryInput,BinaryOutput,BinaryValueMultiStateInput,MultiStateOutput,MultiStateValue
- Enter the Instance Number of the object on the BACnet device (
0–4194302). - Enter the Property Identifier (defaults to
85forPresent Value, which is the most common). Other common identifiers:85— Present Value77— Object Name28— Description36— Event State103— Reliability111— Status Flags
- Optionally enter a Write Priority (
1–16) used when the platform writes back to this object. BACnet uses a priority array where lower numbers win:1— Manual Life Safety2— Automatic Life Safety5— Critical Equipment8— Manual Operator16— Lowest Priority
- Select the Topic Property Path (the Variable created earlier in the guide). The object's data type (number, boolean, string) is determined automatically by the linked platform variable.
- On the Scaling tab, set the scale (defaults to 1), offset (defaults to 0), and decimals (defaults to 2). These apply only to
numberobjects. - On the Misc tab:
- Send if Stale After (ms) — force a publish if the value has not changed in this many milliseconds. Defaults to
600000(10 minutes). - Deadband Percentage — only publish changes greater than this percent of the previous value. Defaults to
5. Only applies tonumberobjects.
- Send if Stale After (ms) — force a publish if the value has not changed in this many milliseconds. Defaults to
Saving
After configuring Connection and Objects, click the "Save Configuration" button and click "Save" in the confirmation popup.
Deployment
Once the Edge Server has been configured to read from a BACnet client, the changes can be deployed in a few ways. The Edge Server will pick up its changes on the next boot of the container.
Sending restart command from ControlCom Connect Platform
- Navigate to Administration > Devices
- Select the Device with the new BACnet configuration
- On the Details tab, click the restart button. This will stop the instance where it is currently running.
Stopping and starting the ControlCom Edge Server manually
This can be done by following the restart commands from the Onboarding Guide of the Edge Server
