Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. VPN – Broadcast discover does not work over VPN. Only unicast (specifying specific IP in the Custom Broadcast Address field) discover works. The user could also manually add the connectors with their proper info.

  2. Ping – Next would be to try and ping the device to see if there is a response from it. If no response is returned, then it’s not discoverable as it can't be found on the network, you would need to contact your IT department to help figure that out. If it does respond, then it could be a firewall issue. Follow the next step for that. Here is a website on how to be able to ping a device: https://www.mediacollege.com/internet/troubleshooter/ping.html .

  3. Firewall/Rules – If the device did respond to the ping, then the user can try disabling the firewall to see if they could then discover their devices. If the user still can't discover the devices, then it is likely some other network issue and would require IT department assistance. If they are discoverable, then the user can leave the firewall off or create some rules that would allow BACnet packets to be transmitted over the network because they are being blocked with the firewall on. 

    1. To add Inbound and Outbound rules to allow BACnet traffic over the network, do the below:

      1. Open your firewall advanced security settings window

      2. Click on Inbound Rules to create a new rule

      3. Select Port for type of rule

      4. Then select UDP to apply the rule to that

      5. For the specific ports, enter the standard BACnet port of "47808"

      6. Then select to allow connection to apply for all types

      7. Then give it a name like "BACnet" or something you want so that you know what it’s for

      8. Then repeat for Outbound Rules

      9. After that, the user should be able to re-enable the firewall and BACnet ports should be open for traffic

  4. Multiple BACnet Instances – In the BACnet world, you can't have multiple BACnet IP instances running at the same time on the same machine without multiple network interface cards (NIC) configured on the machine to handle that. This means that you can't have 2 FIN instances or FIN and some other BACnet client running on the same machine using BACnet IP. You would have to stop the other instance using BACnet IP and then try discovering.

  5. Network Number – Can’t discover devices from a specific network (or not able to communicate with the devices from a specific network)? Chances are that the device network number is conflicting with a FIN network number. All the networks should be unique in a BACnet network. FIN uses 2 network numbers for the Client and Server (can be found in the BACnet Global Config window), no matter whether Server is enabled or not. Double check the network numbers on the devices with FIN and confirm there are no conflicts here.

    1. BACnet Server Network Number - by default in the UI it is 65531, but in the BBS Stack directory, it is 4. You can enable BACnet Server ext to change it, but once disabled it changes it to the same as the client in the directory. You would need to modify the file directly.
      The path to it is something like this but with your version: C:\Program Files (x86)\FIN Stack\FIN Stack v5.1.1.110\lib\java\ext\BBS_LIB\system.
      The file you want to open is bbs.conf (prefer an advanced notepad such as notepad++) and look towards the bottom for line 73 or 101. It should be the Dnet property and modify the one that isn’t the client network number.

  6. Discover Settings – Sometimes it can be as simple as invalid discover settings. Below are various discover settings to check.

    1. If devices are on a different port other than the standard 47808, use the Custom Broadcast Address field to include the custom port because the default uses port 47808.

      1. Examples: 255.255.255.255:47809, 10.10.10.255:47809, 10.10.10.107:47809 etc.

    2. Make sure Start and End Instance Numbers are a valid range for the device(s) being discovered. Make sure it is between 0 (start) and 4194303 (end).
      Note: To send a global broadcast as an unconstrained “Who Is”, set both the Instance Number Start and End to -1. This will send a broadcast without the low/high instance limits. When the BBMD receives these global broadcast requests, it will then forward it to it’s peer BBMDs.

    3. Make sure the Network number is valid and within 0 and 65535.

  7. BACnet Route – If connecting through VPN and if the network number is 0. The bacnetRoute tag will need to be added to the BACnet connector in order for it to communicate and for the connector to know where the device lives. The reason is because VPN does not support broadcast messages such as who-is and i-am. The bacnetRoute tag is a string type and its value is the router IP address and it goes on the connector. This tag adds router IP entry in router table in stack. Generally router table is updated automatically when I-Am-Router-To-Network or I-am BACnet request comes to FIN. In case we don't receive those requests then we can manually add router IP using bacnetRoute tag. At least one device from the device network should have the bacnetRoute tag. Below is a query that can be used to automatically add these.

    Code Block
    readAll(bacnetConn).findAll(conn => conn["uri"].toStr.contains("dnet=")).map(conn => conn.merge({bacnetRoute: conn->uri.uriHost})).unique("bacnetRoute").toRecList.map(conn => conn.diff({bacnetRoute: conn->bacnetRoute})).commit
  8. Logs – To check the logs, go to Host -> Debug -> Log to see if there is an error that appears when trying to discover, then check below if it is listed and follow the steps on how to resolve it.

  9. BACnet Extensions – Make sure related BACnet extensions are enabled such as FIN BACnet, BACnet, and BACnet Server (if used).

  10. BACnet Server – Using FIN as a BACnet Server on a BBMD environment? Might need to register FIN as a Foreign Device to be able to discover it over the network.

    1. Using Niagara to discover the FIN devices in this type of scenario? Make sure to set the MAC address to 1 and MAC Address Style to MSTP/Other.

  11. BBMD and FD After FIN restarts BBMD/FD configurations will be lost and the user will need to reconfigure them again manually or with some script.

    1. Changing any BACnet Global Config properties will automatically re-initialize the BBS Stack.

  12. Local Bind Address – Next thing would be to try changing the local bind address from the wildcard 0.0.0.0 (default) to the server IP hosting FIN in the BACnet Global Config settings window so that the FIN BACnet client knows who is doing the broadcasting. Without specifying this, it could mean that the FIN BACnet client could not bind to the local address due to another channel configured to use the same IP and port.

...