A BACnet network consists of many devices, each one with its own set of BACnet objects. An application may need only a small subset of devices or BACnet objects for each device. To manage only the devices you need, you can use the device template configuration. As a result it will load and handle only the desired BACnet devices and objects, and the desired functionalities of the device.
The device template configuration is defined in a BACnet adapter-specific JSON config file. Its structure is described via the example of Setting Initial Configuration guide.
There are three use cases in which the BACnet device template configuration is applied:
To filter device functionalities, they need to be described in the JSON config file. The BACnet device will be matched to the device templates. If there is a match, the device representation of the matched device template will be applied and only the described list of BACnet objects will be represented as device items. If there is no device template to match to, device items will be created for all object types supported by the BACnet adapter.
To filter devices, which are automatically added to Device Access after enabling the discoveryAutoAdd property, you have to provide the device templates you want the device to match before adding to the Device Access. If a device matches at least one of the device templates from the JSON config file, then it will be added directly to the Device Access. If it does not match a template, it is added to the list of "in-box" devices. The result property of the BACnetDiscovery functional item is updated too.
If the discoveryAutoAdd property is not set, the device will be added in the usual way without filtering.
Filtering can be applied to the range of devices, searched by the default discovery process, initiated by the BACnetDiscovery.start() operation without arguments. The feature is not supported for the rest of network search operations. You have to provide the device templates as described in the example of Setting Initial Configuration guide. If there is no JSON config file with device templates, by default the adapter sends a single, broadcast WhoIs request in the entire supported BACnet device instance range (0-4194303).