BACnet

eGauge meters can output BACnet information via MS/TP and IP (UDP)

BACnet Overview

Quick Links:
BACnet register map and PICS
Configuring BACnet service

What is BACnet?

BACnet is a communication protocol designed for Building Automation and Control (Networks), for use with a Building Automation System (BAS) which controls and automates certain functions within a building. A BAS typically receives data from multiple remote devices, such as temperature, electrical consumption, air quality, and many other types of data depending on what is or can be automated in the building. Based on this data, the BAS can send alerts to building managers and control loads, such as turning on heating if an area becomes too cold or turning off non-critical systems to load shed when overall consumption becomes too high.

eGauge compatibility

The eGauge can provide BACnet data over an Ethernet LAN (BACnet IP) as well as over RS485 serial (BACnet MS/TP). Any data the eGauge collects, including from other remote devices, are available to send

General overview

A building automation system (BAS) will periodically request data from a remote device (e.g., the eGauge meter), and based on this data it may do nothing, trigger an alarm, or switch on or off loads or other controllable equipment.

BACnet is disabled by default on the eGauge meter and may be enabled through Settings → BACnet. For an example of the configuration and options available see this knowledgebase article.

 

BACnet MS/TP (Serial)

Using the eGauge USB485, the eGauge meter can provide data via BACnet to a building automation system.

Be sure to review general (non-eGauge specific) serial communication considerations when considering serial lines for BACnet communication. This includes but not limited to:3CmxGraphModel%3E%3Croot%3E%3CmxCell%20id%3D%220%22%2F%3E%3CmxCell%20id%3D%221%22%20parent%3D%220%22%2F%3E%3CmxCell%20id%3D%222%22%20value%3D%22%26lt%3Bfont%20color%3D%26quot%3B%23ff3333%26quot%3B%26gt%3BData%20from%20eGauge%20Meter%20electrical%20readings%20are%20sent%20to%20Building%20Automation%20System%26lt%3B%2Ffont%26gt%3B%22%20style%3D%22text%3Bhtml%3D1%3BstrokeColor%3Dnone%3BfillColor%3Dnone%3Balign%3Dcenter%3BverticalAlign%3Dmiddle%3BwhiteSpace%3Dwrap%3Brounded%3D0%3BfontSize%3D15%3B%22%20vertex%3D%221%22%20parent%3D%221%22%3E%3CmxGeometry%20x%3D%22530.23%22%20y%3D%22580%22%20width%3D%22150%22%20height%3D%2280%22%20as%3D%22geometry%22%2F%3E%3C%2FmxCell%3E%3C%2Froot%3E%3C%2FmxGraphModel%3Eaaaaaadasdas
• Using twisted pair wire for data +/- lines
• Choosing appropriate wire gauge and baud rate (becomes increasingly important with long wire runs)
• Appropriate termination methods (the eGauge USB485 has a selectable termination switch)
• Software and hardware configuration for BAS system controller

bms-serial.png

 

BACnet IP (over an Ethernet network)

BACnet over a LAN has the same functionality as BACnet MS/TP over serial, but it uses an Ethernet network and can connect to an existing LAN instead of requiring its own serial chain.

bms-ethernet.png

 

 

BACnet register map and PICS

The eGauge does not have a fixed BACnet register map. Instead, registers are mapped as they are created. Thus, the map for two different eGauges will differ based on the number of registers and the order they were added in. Registers are organized into groups, which are defined below.

The BACnet PICS (Protocol Implementation Conformance Statement) may be found here. The article you are viewing has more "human-friendly" information for the BACnet data meters provide.

If a static IP address is used with an incorrect broadcast address, BACnet communication may not function properly and the meter may not be discoverable.

Group 5 and Group 6 addresses may change if register configuration is modified. It is recommended to use range 0xb0000 and 0xc0000 as the addresses numbers are tied to the register ID and will always remain in that order. See this article for more information about register IDs. Beginning in firmware v4.6 deprecated ranges will be identified as 'old'.

Address Range Group Description Measured Value See footnote
0x20000 Group 1 - The RMS voltage of the voltage-taps can be read through this group. Voltage [V]

 
0x30000 Group 2 - The RMS current measured by each sensor/CT can be read through this group. Current [A] 1
0x50000 Group 3 - The frequency of the voltage-taps can be read through this group. Line Frequency [Hz]  
0x60000

Group 4 contains only the object ID 0x60000 and it reports the number of seconds since BACnet daemon startup. The daemon starts after enabling BACnet support through the UI or after power-cycling.

Timestamp [s]  
0x70000

Group 5 reports the register value for each register (virtual and physical). The register values are time-weighted values and hence the unit of these object IDs is equal to the unit of the corresponding object ID in Group 6, multiplied by seconds. For example, for a register recording power, the Group 6 unit would be Watts, and therefore the Group 5 unit would be Watt-seconds (i.e., Joules).

DEPRECATED IN v4.0, use range 0xb0000 to 0xbffff in firmware v4.0 and newer.

CHANGED IN v4.6, from REGVAL to OLDVAL

OLDVAL [various]  
0x80000

Group 6 reports, for each virtual and physical register, the change in register value during the most recent one-second interval. For example, for a register recording power, the unit would be Watts, for a register recording voltage, the unit would be Volts.

DEPRECATED IN v4.0, use range 0xc0000 to 0xcffff in firmware v4.0 and newer.

CHANGED IN v4.6, from REGCHG to OLDCHG

OLDCHG [various]  
0x90000 Mean Voltages - mean (DC) voltages for voltage inputs Voltage [V] 2
0xa0000 Mean Sensor Values - mean (DC) values for sensor/CT inputs Current [A] 1, 2
0xb0000 Register values like Group 5, statically indexed by register ID REGVAL [various] 2, 3
0xc0000 Register rate-of-change (instantaneous) values like Group 6, statically indexed by register ID REGCHG [various] 2, 3

Footnotes:

1. Unit will be Amps for current, various for other sensors
2. Introduced in firmware v4.0
3. These addresses are tied to register ID. Group 5 and Group 6 are liable to have addresses change if register configuration is modified.

Additional Tips:

Configuring BACnet service

If a static IP address is used with an incorrect broadcast address, BACnet communication may not function properly and the meter may not be discoverable.

The eGauge meter can provide data via BACnet IP and BACnet MS/TP (only available on EG4xxx meters). The BACnet service is disabled by default and may be enabled through Settings → BACnet.

image-1661801119382.png

Option Description
Enable BACnet support Enables the BACnet service on the meter. Disabled by default.
BACnet device id unique to this device Each BACnet capable device needs to have a unique device instance number, which can be any number between 0 and 4,194,303.
Protocol to use for BACnet datalink
  • Ethernet: raw Ethernet packets (not often used)
  • BIP: BACnet IP, if using on a TCP/IP network
  • MS/TP: BACnet serial, requires a USB485 converter connected to one of the eGauge USB ports.
BACnet/IP port The BACnet IP port is defined as UDP 47808, but may be changed if required here (only applies to BACnet IP).
MS/TP serial device If BACnet MS/TP is chosen, click inside the input box to display any USB485 converters connected to the eGauge USB ports. Baud, Parity and Stop Bits may also be configured (these must match the BACnet controller that requests data from the meter).
MS/TP MAC address The MS/TP MAC address used by eGauge. Every BACnet device on an MS/TP bus requires a unique MAC address. eGauge acts as a master so its address is limited from 0 to 127. For best performance, MS/TP MAC addresses should be assigned consecutively starting at zero. For example, if there are three MS/TP devices, MAC addresses 0, 1, and 2 would yield the best performance.
MS/TP max. MAC address used by any master This should be set to the maximum MS/TP MAC address that is in use. 127 is a safe value, but for best performance, it is recommended to set this to the lowest possible value instead. For example, if there are three MS/TP devices with MAC addresses 0, 1, and 2, this value should be set to 2 on all three devices.
Report cumulative values relative to start of recording This should generally be enabled and is for backwards-compatibility. Enabling ensures the meters first meter reading is 0, otherwise it may be an arbitrary value.
Energy unit May be set in either watt-seconds (Joules) or kWh