Skip to content

Connect to a device

pichler edited this page Feb 26, 2017 · 7 revisions

The BACnet driver allows to connect to one or more remote devices (BACnet servers).

Device address

The BACnet device instance number is used as device address. According to the BTL device implementation guidelines, the device instance number is an integer between 0 and 4194302. Optionally, the device address may also contain the host ip address of the device separated from the device instance number by a semicolon:

address := <device instance number>[;<host ip address>]

If the host ip address is not specified, the remote device will be searched using a BACnet WhoIsRequest that will be sent as broadcast. Since this method isn't reliable (devices may not be found) it is recommended to specify the host ip address too.

Settings

The following settings may be applied when connecting to a device:

Property key Description Default value
broadcastIP IP address for sending broadcast messages 255.255.255.255
localBindAddress IP address that will be used for binding the local device 0.0.0.0
devicePort UDP network port of the local and/or remote device instance 0xBAC0
localInstanceNumber the instance number of the local device between 0 and 4194302* auto-increment number starting from 10000
isServer if set to true, the local device is set as server that provides BACnet objects false
writePriority BACnet priority when writing a value between 1 and 16 lowest priority (below 16)
timeSync if set to true, other BACnet devices in the local broadcast domain will be synchronized to the local system time every 24 hours false

* if a local device for the specified local device port already exists, the local device instance number configured in the settings string will be ignored

Time synchronization

Time synchronization can be activated by using the timeSync setting while connecting to a device. If activated, the related local device sends a BACnet time synchronization broadcast message with the local system time at startup and every 24 hours afterwards. This means, all other BACnet devices in the local broadcast domain will be synchronized to the local system time (assuming that they support the time synchronization service).

Time synchronization will be started immediately after connecting to a local or remote device. As different remote devices in a single network are using the same local device, time synchronization starts if the timeSync property is set to true at least in one device configuration. The service will be stopped when the local device gets terminated, thus when all local and remote connections will be closed.