BACnet defines the following structuring of the network topology:
Bridge, e.g., IP router, LonWorks router
Repeater, e.g., LonWorks physical repeater
Router, e.g., PXG3
Half router, e.g., PX..-T
In BACnet, the BACnet internetwork is defined as the largest BACnet unit. It consists of one or more BACnet networks. Only one active connection can exist between any two BACnet devices in a BACnet internetwork.
All bus subscribers from the ALN and MLN, including BACnet third-party devices, are part of the BACnet internetwork. The devices in the FLN are part of the Desigo system but not part of the BACnet internetwork, because they do not communicate via BACnet.
Desigo devices use LonTalk (BACnet/LonTalk), IP (BACnet/IP) or MS/TP (BACnet MS/TP) as their transport protocol. If different transport protocols are used, different physical networks are created, which must be connected to the PXG3 router. BACnet routers connect networks on the BACnet network layer and transmit messages via the network number.
If the transport protocol changes, the BACnet network also changes, e.g., BACnet devices that use LonTalk as their transport protocol are always located in a different network than devices that use IP as their transport protocol. This also applies to PTP connections.
Desigo devices use LonTalk (BACnet/LonTalk) or IP (BACnet/IP) as their transport protocol and MS/TP (BACnet MS/TP) to integrate third-party devices. If different transport protocols are used, different BACnet networks are automatically created, which must be connected to the PXG3 BACnet router. Multiple BACnet internetworks can be created on an IP segment by using different UDP port numbers.
Desigo establishes PTP connections only between operator units and a network. Operator units duplicate a virtual network since PTP connections demand a network at both ends.
Desigo CC does not use PTP.
Large networks are structured, that is, divided into several (logical) network segments for reasons of security, performance, size and (limited) address range of network devices. The segments must then be connected to routers of the corresponding transport protocol (e.g., LonWorks router, IP router).
In most cases it is not necessary to divide a BACnet/LonTalk network into several LonWorks segments (ALN). However, if it does prove necessary, it is not possible to use a LonWorks router, because this limits the length of the data packets. An L-switch (Loytec) can be used as a router on the ALN.
BACnet MS/TP networks cannot be segmented, because there are no associated routers.
With BACnet/IP some IP segments may be connected by IP routers. Since the IP router prevents broadcasting, the connection must be activated with the BACnet Broadcast Management Device (BBMD).
Physically, (cable) networks cannot be expanded as desired. Depending on electrical transmission properties and the data link layer based on it, repeaters must be added at specific cable lengths to amplify the signal. This divides the network into multiple, physical segments. A repeater does not impact the transmission protocol; it merely electrically connects two physical networks.
Dividing up the network into several physical segments may be necessary in LonWorks technology.
The physical segments are connected with physical or logical repeaters. Due to the limited buffer size of logical repeaters, only physical repeaters may be used on the ALN. Only one physical repeater may be located between any two nodes.
MS/TP is transmitted on a two-wire cable as per EIA-485/RS-485*. The length of the physical segment can be max. 1,200 m and can be extended with EIA-485 repeaters.
*TIA standard (https://de.wikipedia.org/wiki/Telecommunications_Industry_Association): TIA-485-A Electrical Characteristics of Generators and Receivers for Use in Balanced Digital Multipoint Systems (ANSI/TIA/EIA-485-A-98) (R2003)
A site is an independent and self-contained logical entity within the building automation and control system. This type of structuring is not defined by BACnet, and is therefore largely independent of the BACnet network topology. The BACnet devices bound to a site can therefore be placed anywhere within a BACnet internetwork. A site cannot extend across a PTP connection. Communication occurs only within the site, but data can be exchanged with any device on the BACnet internetwork.
Only automation stations (PXC/PXC3) and LonWorks system controllers (PXC...D+PXX-L11/12)) are assigned to the sites, by special structuring of the Device ID and Device Name. These products are considered third-party devices for the purposes of a site.
Protocol layer model
- BACnet/LonTalk (LonWorks technology)
- BACnet MS/TP
- BACnet/IPv6 (only via PXG3 BACnet router)
BACnet directly over ethernet, ZigBee or ARCnet is not supported.
The BACnet application layer defines services, objects and their characteristics. From the network viewpoint, the Device object is important. The object ID and the object name must be unique within the BACnet internetwork.
The Device ID is the object ID of the BACnet device object.
The device ID is divided into the following categories:
All unconfigured devices
xxxxxxxxxx xxxxxxxxxx (1...1048576)
Stationary operator units (Desigo CC)
Mobile operator units / tools (PXM30/40/50-E)
System devices (BACnet router)
Automation stations (PXC…)
System controllers (PXC…)
xxxxxxxxxx xxxxxxxxxx (1...1048576)
The device name is the object name of the BACnet device object.
Different rules for object names apply for configuring TD (Technical Designation), UD (User Designation), or FD (Free Designation):
- The TD is generated from predefined partial names, separated by an apostrophe ('), that show the technical hierarchy with plant, partial plant, and component. The TD is supplemented by site name and pin name.
- The names may consist of upper- and lowercase letters and numbers 0 to 9. The site name is separated by a colon (:) and the pin name by a period (.). The maximum total length is 30 characters.
- The UD is formed similar to the TD based on partial names. However, users determine the partial names, structure, and separators. The names consist of upper- and lowercase letters, numbers 0 to 9, and separators, such as _-;=’, etc. The maximum total length (including site name and pin name) is 80 characters.
- The FD is a freely assigned name consisting of letters, numbers and a few special characters, limited within the system only by uniqueness and length. The maximum total length is 80 characters, ten of which, plus one separator, are reserved for the site name.
Empty string for unconfigured devices
Meaningful text for the user (this text is used as a reference for the alarm recipient)
Model name + device ID
Model name + “ “ + 8 character device ID (hexadecimal). The device name for temporary devices is generated automatically.
Max. 25 characters
Site name + automation station name
Site name + “:“ + automation station name
Examples from the topology at the beginning of the chapter:
Desigo CC 1
Desigo CC 1
BACnet device parameters
The BACnet device parameters are written to the devices during commissioning. These parameters include the following values:
Max APDU Length Accepted
Maximum length of application message (Application Protocol Data Unit) supported for this device. The length depends on the transport medium used, and the capacity of the device buffer. The length of the APDU must always be less than the length of the smallest NPDU (Network Protocol Data Unit) between the different bus subscribers.
There are two IP networks linked by a PTP connection. The two IP bus subscribers could have a maximum APDU length of 1476 octets. However, since the maximum NPDU length of the PTP connection is 500 octets, the maximum APDU length of both devices must be set to 480 octets.
Values for LonTalk
Values for MS/TP
Values for IP (equal for IPv6)
APDU Segment Timeout
Timeout of an APDU segment (= part of an APDU). This value must be identical throughout the internetwork.
Timeout for an acknowledged message. This value must be identical throughout the internetwork.
Number of APDU Retries
Number of retries in the event of an APDU or APDU segment timeout. This value must be identical throughout the internetwork.
To transfer large data packs, BACnet uses the windowing algorithm. Windowing means that instead of acknowledging individual segments separately, the acknowledgement applies to a specific number of segments, referred to as a window.
Definitions for Desigo
The window size is permanently set to four for all Desigo devices, so that for segmented messages, only every fourth segment is acknowledged.
The most important information in the network layer is the network number of the BACnet network.
The network number is the unique identification of the BACnet network. There are stationary and temporary networks:
- Stationary networks are defined during commissioning and then remain unchanged.
- Temporary networks are created when a tool (e.g., XWP/ABT) dials into a network via PTP.
Reserved for applications with only one BACnet network in a BACnet internetwork, that is, where there are no BACnet routers.
Network number for stationary BACnet networks. You can select any network number in this range.
We recommend that you form categories, e.g.:
BACnet/LonTalk networks via (half)router:
BACnet/IP network (common network):
Desigo CC or XWP/ABT connected via BACnet/PTP:
Reserved for temporary BACnet networks. Not yet used in Desigo.
The router parameters are written to the BACnet router during commissioning. The following information is required for each port (logical connection to network):
Network number of the directly connected network.
Max NPDU Length
Max. message length supported in this network. This value depends on the transport medium used.
Values for LonTalk:
Values for MS/TP:
Value for IP (equal for IPv6):
Values for PTP:
228 for LonTalk
Every BACnet that is routed to another BACnet network has a hop counter. The counter reading is reduced by one with each pass of the BACnet router. When the counter reads 0, the message will not be routed further. This prevents continuously circulating messages.
Definitions for Desigo
For Desigo the hop counter is initialized with a fixed value of 5. This means that a message can pass through a maximum of four BACnet routers.
LonTalk data link layer
The LonTalk data link layer is supported by the PX automation station and by the operator units and tools.
LonTalk ist he communications protocol for LonWorks technology.
Addressing under LonWorks technology
Physical address, neuron ID: The Neuron ID is the physical address for a LonWorks device. It is a unique 48-bit (6 byte) identifier which is assigned to each neuron chip during manufacturing.
Logical address: The logical LonTalk address is written to the LonWorks node during commissioning on the network side.
Domain ID: The domain ID is the highest unit in the LonWorks addressing system. Data can only be exchanged within a domain. A gateway is required for inter-domain communication. The domain ID can be 0, 1, 3 or 6 octets in length. A domain can consist of up to 255 subnets.
Subnet ID: The subnet is a logical collection of up to 127 nodes within a domain. The bus traffic within a subnet can be kept local by using BACnet routers. Subnets must never be defined across a router.
Node ID: Unique identifier within the subnet. Each node can be addressed uniquely within a domain by the subnet ID and the node ID.
Group ID: The group address is a type of addressing. The group address is not used in BACnet.
On the ALN, the following rules apply to Desigo:
The default length of the domain ID is one octet and the default value is 0x49h (73).
The subnet ID is a consecutive number that starts with one. The subnet ID is incremented by one when a subnet is full (no free node IDs).
This range is for automation stations (PXC), system controllers (PXC...) and system devices (BACnet routers).
Operator units and Desigo CC are assigned to this range.
Temporary operator units and tools (XWP/ABT) look for a free node ID in this range.
IP data link layer
An additional layer, the BACnet Virtual Link Layer (BVLL), is used for BACnet over IP. This layer transmits broadcast messages across IP routers.
Below the BVLL, BACnet relies on UDP (User Datagram Protocol). Unlike TCP (Transmission Control Protocol), UDP supports broadcast messages. The connection monitoring (carried out by TCP) is resolved in the Application Layer.
All media, such as ethernet, are available if supported by IP as physical layers.
For detailed information on the IPv6 data link layer, see Ethernet, TCP/IP, MS/TP and BACnet basics (CM110666).
The IP address of stationary and temporary operator units can be set automatically via DHCP (Dynamic Host Configuration Protocol) provided that there is a DHCP server in the network. The use of DHCP is not recommended with automation stations and BACnet routers. DHCPv6 is currently not supported for IPv6.
DHCP is not allowed for devices using integrated BBMD functionality.
The IP addresses must be agreed upon with the IT department.
RFC1918 defines three specific address areas for private networks. IP addresses within these ranges are not routed:
10.0.0.0 - 10.255.255.255 Subnet mask: 255.0.0.0
172.16.0.0 - 172.31.255.255 Subnet mask: 255.240.0.0
192.168.0.0 - 192.168.255.255 Subnet mask: 255.255.0.0
For IPv6, IP addresses and private address ranges are defined differently. See Ethernet, TCP/IP, MS/TP and BACnet basics (CM110666).
IP address: Host address of the network subscriber.
Subnet mask: Subnet mask of the IP segment in which the device is located. This value must be aligned with the other IP devices.
The subnet mask is required for the identification of broadcast messages and for communication across IP segments. The subnet mask and target IP address enable the transmitting IP device to decide whether the data packet can be delivered directly to the target device or if it must be forwarded via the default gateway.
For IPv6, the subnet mask corresponds to the network prefix. See Ethernet, TCP/IP, MS/TP and BACnet basics (CM110666).
Default gateway: IP address of the IP router. This value is relevant for communication across IP segments.
UDP port number
For BACnet/IP to use UDP, a UDP port number must be defined. Only devices with the same UDP port number can communicate with each other.
Port numbers are divided into the following classes by the IANA (Internet Assigned Numbers Authority):
- Well Known Port Numbers: Fixed port numbers assigned by IANA (0… 1023)
- Registered Port Numbers: Numbers registered with IANA (1024…48151)
- Dynamic and/or Private Ports Dynamically assigned or privately used port numbers (49152…65535)
For BACnet, port number 47808 (0xBAC0) is registered with IANA.
If there are several BACnet internetworks on an IP network, they can be separated by different port numbers. Using several internetworks can be helpful in very large projects, for migration, and to encapsulate sections of a plant with different reliability criteria. Since Desigo CC communicates simultaneously with multiple internetworks, the operation is not restricted.
However, only one port number is registered for BACnet with the IANA. If additional UDP port numbers are required, we recommend the use of port numbers 47809 to 47823 (0xBAC1...0xBACF). This does not comply with IANA regulations. This range is reserved for future applications and should not be used. There is only a very small chance that these ports might be used elsewhere. To avoid clashes, do not use any port numbers from the range of dynamic or private ports. See https://www.iana.org/assignments/port-numbers.
BACnet Broadcast Management Device (BBMD)
The BBMD is required as soon as IP routers are used in a BACnet network. IP routers limit broadcast messages to the local IP segment, that is, they do not allow any broadcast messages to pass through. In order to distribute BACnet broadcast messages across IP segments irrespective of this limitation, a BBMD is required in the relevant IP segments. If a BBMD receives a broadcast message, e.g., within the local IP segment, it transmits this as a unicast message to all other BBMDs. The BBMDs then transmit the received message to their own local IP segments. BACnet refers to this as two-hop distribution:
- Hop: BBMD sends a unicast message to all other BBMDs.
- Hop: They then distribute the message to all BACnet devices in the local IP segment.
One-hop distribution can be implemented with Direct Broadcasts. In this case the BBMD sends a direct broadcast to all remote IP segments. This broadcast is received by all IP bus subscribers in the relevant segment. Not all IP routers support Direct Broadcasts.
IPv6 (BVLLv6) only supports two-hop BBMD. Broadcasts are implemented via IPv6 mutlicasts. See Ethernet, TCP/IP, MS/TP and BACnet basics (CM110666).
BBMDs ensure that broadcast messages are distributed in a BACnet network. They are grouped by BACnet network. A maximum of one BBMD is allowed in any one IP segment.
BACnet network #100 is separated by IP routers. The Internet also contains IP routers. This is why different segments are shown before and after the Internet cloud. BBMDs are required so that BACnet broadcast messages are available in all IP segments.
The BBMD parameters are written to the BBMD or (for Desigo) to the BACnet router during commissioning. The following information is required for each BBMD in the BACnet network:
IP address of the BBMD.
UDP port number of the BBMD.
If the BBMD is to be addressed via direct broadcast (one-hop distribution) the subnet mask of the BBMD must be specified. Since not all IP routers support this mechanism, direct broadcasts are not supported by default. Two-hop-distribution is always possible. The broadcast mask is then 255.255.255.255.
Not required for IPv6.
A foreign device is a (remote) BACnet device in a remote IP segment. It registers with a BBMD in order to send or receive broadcast messages. Registration with a BBMD involves making an entry in its Foreign Device Table (FDT). The registration must be renewed at regular intervals.
The foreign device does not send broadcast messages, but passes them as unicast messages to the BBMD for distribution. The BBMD in turn passes incoming broadcast messages as unicast messages to the foreign devices in its FDT.
In the Desigo system, Desigo CC, XWP/ABT, and PXM30/40/50-E can be operated as foreign devices. IPv6 does not support foreign devices
Examples from the Desigo topology
- IP Segment 1: Desigo CC 1 does not have to be configured as a foreign device, because this IP segment contains a BBMD.
- IP Segment 2: Desigo CC 3 does not have to be configured as foreign device, because this IP segment contains a BBMD.
- IP Segment 3: This segment only contains Desigo CC 2. To enable Desigo CC 2 to receive and send broadcast messages, it must register with a BBMD as a foreign device. It does not matter with which BBMD it registers.
Foreign device parameters
If a BACnet device operates as a foreign device, the IP address and UDP port number of the BBMD must be specified.
IP Address of BBMD
IP address of the BBMD with which the foreign device registers.
UDP Port of BBMD
UDP port number of the BBMD with which the foreign device is registered. The default is 0xBAC0.
The recording interval (Time-To-Live) for Desigo products is set at 300 seconds (= 5 minutes).
PTP data link layer
The PTP Data Link Layer is used for remote management over the telephone line. Unlike LonTalk and IP, PTP does not allow the creation of a network. The PTP connection is always between two half routers, and between two different BACnet networks. Several BACnet networks may be located at each end of the PTP connection. Only one active communication line can exist between any two BACnet networks or between any BACnet devices.
The half-router function is implemented in Desigo CC, XWP/ABT and PX.
PTP connections are only possible between Desigo CC, XWP/ABT und PX. PTP connections between PXs are not permitted.
PX devices which can be reached via PTP always belong to a separate site. With reference to the topology at the beginning of the chapter, the site named Baar must not be combined with the sites named Zug or Cham. Several PXs per site can be used as half routers. When establishing a communication, the best-performing connection is always selected. Redundancy is not allowed, that is, several simultaneously active connections in a given BACnet network are not allowed.
With Desigo CC, a separate, independent, internal BACnet internetwork is created for each Data Link Layer type. Routing between LonTalk, IP or PTP is therefore not possible.
The following parameters are required for each half router:
Local network number
The BACnet network number to which the half router belongs.
With PX, the local network number is the same as the device's own network number.
Desigo CC supports all three different Data Link Layers (IP, LonTalk and PTP). They are handled internally as independent BACnet internetworks. This means that routing between the different Data Link Layers is not possible. Therefore, the local network number can be allocated to IP and/or LonTalk independently of the networks. However the local network number must be unique among all networks which could possibly be reached from Desigo CC via a PTP connection.
If Desigo CC has an additional Data Link Layer (IP and/or LonTalk), the local network number of this network should be used (example in the beginning of the chapter: For Desigo CC 2, the local network number of BACnet network #4 should be adopted).
In Desigo CC with only one PTP connection, the local network number must be in the range 1000 to 1099. (Example: Desigo CC 3 -> #1000).
For the PX half router, the COM port to which a modem or null modem is connected must be specified.
The modem parameters contain individual settings for the relevant modem types. Predefined parameter sets are available for the PX half router.
The following parameters are required for each PTP connection starting from a PX half router:
Remote network number
This network number determines the BACnet network in which the remote partner device is located. In the Desigo system this is the local network number of Desigo CC.
Remote area name
The remote area name stands for a peer-to-peer remote network number of the network containing Desigo CC.
The telephone number for access to the remote device.
The performance index refers to the quality of the router data connection. If multiple PX half-routers are available in a PX site, and if a connection to a remote network is to be established, the router with the best performance index is selected. If no connection is established, the router with the next best performance index automatically tries to connect.
(0= best / 255 = worst connection)
For each PTP connection in Desigo CC, only the telephone number needs to be defined.
Data link layer MS/TP
Data Link Layer Master/Slave Token Passing MS/TP is another protocol variant for BACnet. Desigo supports this variant via a specific router that connects BACnet MS/TP to BACnet/IP.
MS/TP is based on the physical layer EIA-485/RS-485 and supports baud rates up to 76.8 kbps. Up to 256 devices can be connected to one MS/TP segment (in theory, dependent on their unit load).
Addressing MS/TP devices
Each device has its own unique MAC address. The MAC address is one octet long and defined as follows:
- 0-127 reserved for master devices
- 0-254 reserved for slave devices
- 255 reserved for broadcasts
The MAC address can be set via DIP switch (hardware) or related configuration tools (software) for each device.
MS/TP is transmitted via two-core cables as per EIA-485/RS-485. The maximum length of a segment is 1200 meters. 64 devices are allowed on a segment.
Different segments can be interconnected via repeaters to form a larger EIA-485-network. The specific electrical properties, such as polarity, common signal ground, terminating resistances, etc. must be taken into account. The actual, possible network size and maximum transmission rate primarily depend on the network structure. Establishing a network in daisy chain form is best.
Due to relatively difficult, electrical conditions imposed by EIA-485 wiring and limited data transmission capacity, we recommend using BACnet MS/TP only for devices with low data volumes that are geographically far apart.
For devices with larger data volumes and shorter distances to the Desigo automation station, integration in Desigo primarily should be carried out via TX Open or PX Open.
PXG3 is a BACnet router that routes BACnet telegrams between BACnet networks and different data link layers. It is available in two versions:
- PXG3.L: (triangle router) Simultaneous routing between Ethernet/IP, LonTalk, and MS/TP
- PXG3.M: Routing between Ethernet/IP and MS/TP
See BACnet router for BACnet/Ethernet/IP, BACnet/LonTalk, BACnet MS/TP PXG3.L, PXG3.M (CM1N9270).
An individual BACnet IPv6 data link can be used as an option for the router. As a result, the PXG3.M is turned into a triangle router and the PXG3.L to a square router. The router can be configured either via XWP or the integrated web server.
Every BACnet device in the BACnet internetwork can be accessed via its BACnet address.
The BACnet address is defined by the BACnet standard and comprises the following elements:
Network number of the BACnet network in which the device is located. The network number is only parameterized on devices with BACnet router functionality (including half router) and is implicitly valid for all BACnet devices in the BACnet network.
BACnet MAC address
Address specific to the transport protocol. This address is written to the device in the commissioning phase.
BACnet MAC address for:
2 octets, subnet ID und node ID
6 octets, IP address and UDP port
3 octets as virtual MAC address (VMAC)
1 octet, MAC address (master 0-127, slave 0-254, broadcast 255)
BACnet device address
Each BACnet device has a device address. This address is written to the device during the network commissioning process. The BACnet device address is unique within the BACnet internetwork. The term BACnet device address is an in-house term rather than an official BACnet term.
Object identifier of the BACnet device object. The device ID is unique within the BACnet internetwork.
The object name of the BACnet device object. The device name is unique within the BACnet internetwork.
For information about the direct addressing of BACnet references to objects in other networks and media, see Desigo Ethernet, TCP/IP, MS/TP and BACnet (CM110666).