To define an instance range to discover BACnet points from a device within, use the filter function:

Available trees (1).

Connectors.

BACnet Connectors.

Choose an equip

 

 

 

What happens in the background?

Once the tool is executed, the following are implemented:

  • bacnetDevice - A bacnetDevice record is created for each equip(s).
  • bacnetDeviceRef - Each equip gets a bacnetDeviceRef for the corresponding bacnetDevice created.
  • bacnetInstance - This number of property tag is added to BACnetDevice record and points.
  • bacnetMacAddress - This number property tag is added to the bacnetDevice record.
  • bacnetNetwork - This number property tag is added to the bacnetServer ext.
  • bacnetLocalAddress - If included, it adds a string property on the bacnetServer ext.
  • bacnetServerNetworkList() - This function is run upon selecting the tool to see any other BACnet servers in the network.

Discover Troubleshooting

  • Make sure that when running bacnetServerNetworkList(), there are no network conflicts.
  • Run bacnetServerSyncDevices() to make sure everything is synced.
  • Run bacnetServerDeviceList() to get a list of all the available devices.
  • Make sure bacnetServerExt has the following tags:
    • bacnetNetwork (based on #1)
    • bacnetLocalAddress (either 0.0.0.0:47808 or serverIp:47808)
  • After checking and changes were made, restart the service.
  • Try to discover from another device.
  • Make sure there are no firewalls blocking any of the communications. Disable firewall.
    • If disabling firewall works, create a new inbound rule for UDP port 47808. This allows BACnet to broadcast packages on UDP port 47808. This is a network issue, not Desigo Optic . Other devices should now see the IAm response to WhoIs request.
  • If removing bacnetInstances manually through DB Builder, run this query in the Folio App.
  • The tool should now run that in a newer version after 090:
    readAll(bacnetDevice).findAll(x=> bacnetServerDeviceList().colToList("bacnetDeviceRef").index(x->id) == null).finHardDelete