The Contemporary Controls BASrouter is BTL Listed with both B-RTR and B-BBMD device profiles to ensure seamless integration into BACnet networks. This rugged and compact BACnet multi-network router provides versatile stand-alone routing between BACnet/IP, BACnet Ethernet (ISO 8802-3), and BACnet MS/TP networks. In addition to its field-proven operation, the BASrouter has a number of diagnostic capabilities built into its 3.0 firmware. By pairing the BASrouter’s diagnostic capabilities with a BACnet utility such as the free BACnet Discovery Tool (BDT), you are well-armed to troubleshoot BACnet networks in the field. Two models are available, a metal case DIN-rail mounted and 24 VAC/VDC powered BASrouter for permanent installations, as well as the portable model in a compact plastic case and 5VDC power input, which you can keep in your bag and power with your laptop’s USB port when you need to diagnose and troubleshoot BACnet networks on the go. The BASrouter installation guide contains the essential power and network configuration information needed for a successful installation, but the real world does not always allow for perfect scenarios.

 

TROUBLESHOOTING:

The most basic, and really the first step to troubleshooting your BACnet network using the BASrouter is looking at the Ethernet and MS/TP Receive LED lights on the front of the device. These lights are a good indicator of network activity. A bicolour Ethernet LED glows green for 100 Mbps, and yellow for 10 Mbps, and indicates activity by flashing. MS/TP Receive green LED flashes rapidly when valid MS/TP traffic is received. When flashing continuously and without long interruptions, the MS/TP Receive LED is a good indicator that the MS/TP network is operational. If there are long interruptions in the MS/TP Receive LED, you may have some issues on the MS/TP segment, use the Status page to troubleshoot the segment further.

A good practice (but not required) to ensure no errors are present on the MS/TP segment after installation of devices is to configure the BASrouter MS/TP communication properly, connect it to the  MS/TP segment, and then  power up every MS/TP device on the bus. Log in to the BASrouter web page and click on the Status page. There may be a small number of Network Errors  because the bus needs to stabilize (build the network) when devices are powered up. This does not necessarily mean there are real errors to be concerned about. Simply click the Reset Statistics button to clear these initial Network Errors out and then observe that no new errors are being counted (number in red). If the count does not accumulate rapidly, then the segment is error-free. Nothing is perfect, and neither is MS/TP communications, you may observe a small Network Errors count over long periods of time and this is ok. If you observe that the Network Errors count is rapidly growing, then there certainly are errors on the MS/TP segment and further troubleshooting is required. Even one badly behaved device on the MS/TP segment can cause a collapse in performance (I have some experience with this scenario) because EIA-485 is a shared trunk.

MS/TP Status page – no errors

The Status webpage can be helpful in analyzing the MS/TP network segment the BASrouter is connected to and observe the traffic on the BACnet networks the router is connected to. The Status screen is always operational and keeps tabs of activity, as long as the BASrouter is powered. It consists of MS/TP Device Status table with color-coded blocks for each device, Network Errors count (in red), and router traffic Statistics on BACnet networks to which the BASrouter is connected. The Status page will automatically refresh every 5 seconds with the updated status on networks and devices — so you can observe the network state changes and gain insight into the condition of the BACnet network (as seen by the BASrouter). These statistics are retained over time, unless the BASrouter is powered off or rebooted from the main web page using the Save Changes button, then all Status page parameters are reset.

The Reset Statistics button on the Status page will reset Network Errors count, and traffic Statistics, but retain the MS/TP Device Status
table history. To clear the MS/TP Device Status table, along with all other
Status page parameters, press the Save Changes button on main web page which will effectively reboot the BASrouter. If the unit is powered off, all Status page parameters will also be reset.
_
MS/TP Device Status is a graphical table of the BACnet MS/TP device MAC addresses on the attached EIA-485 physical segment. Devices are identified by their MAC address and colored as:
ONLINE – Green square
OFFLINE – Gray square
ROUTER – Blue square
_
MS/TP Status page – duplicate MAC address
The MS/TP Device Status table will be updated at the same 5-second refresh rate as the Status page. If changes to the network are made while the BASrouter is operating on the network (such as MS/TP device MAC addressing, powering devices on/off, or rewiring the physical segment), it may take 2 or more refresh cycles (10 seconds), or until the bus has stabilized, to update the MS/TP device table properly. If a MAC address is altered while the BASrouter is operating on the network, it will report the device’s old MAC as OFFLINE and its new MAC address as ONLINE in the next refresh cycle (5 seconds). In addition, if network or physical layer changes are made while the BASrouter is operating on the network, the Network Errors count may increment slightly or dramatically (depending on the changes) due to improper communication while the bus is in an unstable condition. Once you think you have stabilized the MS/TP bus, reset all statistics and monitor the network for a period of time to ensure the correct number of devices on the network, ONLINE device status, proper MAC addressing, and that no more network errors are being generated.
_
Network Errors count (number in red) provides an accumulating count of BACnet MS/TP network errors such as: invalid frames, partial frames, bad CRC, wrong data length, or silence timer greater than 100ms. This count will keep incrementing if there are MS/TP network issues present, until the error conditions on the MS/TP bus are resolved. If this number seems to be high, but not continuously incrementing, reset the count and observe if new errors are being generated. If no new errors are being generated over several refresh cycles, it is a good sign that the MS/TP network is in a stable condition.
_
Network errors may have many sources. For example, devices powering up/down or having their configuration changed, bias/termination issues, cabling issues, etc. Considering this, it is best to wire up the physical layer, power on all devices and then use the Reset Statistics button to clear any errors which may have been caused by these initial conditions. After
resetting the Network Errors count, monitor it and make sure that it does not increment. If the Network Errors count does not increment while the BASrouter is operational on the network, no new errors are detected by the BASrouter. If error count is reset with Reset Statistics button, but Network Errors count keeps incrementing, that is a sign that the network isn’t stable and network errors are present on the MS/TP bus.
_
Statistics – BASrouter Traffic
The Statistics portion of the Status page reports the traffic of the various protocols handled by the BASRT-B including the number of messages transmitted and received for each network. Packet counts only increment for protocols in use. B/IP 1 is the primary BACnet/IP UDP port and B/IP 2 is the secondary UDP port. You can test router operation by performing a BACnet/IP or BACnet Ethernet discovery using your PC and the free BACnet Discovery Tool (BDT). When performing a BACnet discovery, the router receives a request (meant for some end device) which is routed to the network of interest (the network the device is located on such as MS/TP) and the response is routed back to the network you initiated the request from (BACnet/IP 1,2, or Ethernet). If you are performing a BACnet discovery on B/IP 1 (image above for example), the In and Out Packets count for both B/IP1 and MSTP networks will increment. Since I have not performed discovery or any communication on B/IP 2 network in my example screenshot, its In and Out Packets are zero. This can help you determine if the router is operational on both BACnet networks of interest.
_
TX PFM Count is the number of Poll For Master messages transmitted by the BASrouter. It is ok to have a very large count in this box because the BASrouter will periodically transmit Poll For Master messages to include masters that could exist in the MAC address range between its own address and the next master’s address. This is part of the BACnet protocol and it is necessary for successful communication when a new MS/TP master device is introduced to the segment.
_
RX PFM Count is the number of Poll For Master messages received by the BASrouter. This number should be very low.
_
TX and RX Token Count count the MS/TP tokens being transmitted and received by the BASrouter. These numbers will continuously increment for as long as there is at least one other master on the segment the BASrouter is exchanging the token with.
_
Invalid Long Frames is the number of frames received which have a length longer than allowed.
_
Next Station is the MS/TP MAC address of the device to which the router will pass the token to next. This value may change if devices leave or enter the MS/TP network segment — or when the router searches for new devices on the network, as per the BACnet MS/TP standard. If this value does not change from the BASrouter’s own MAC address (blue square) while connected to the MS/TP bus, the BASrouter is not able to communicate to any other MS/TP devices on the network.
_
Sole Master has values of Yes or No, by using a method in the BASrouter firmware – Master Node State Machine, we are able to determine if the BASrouter is the only master device on the MS/TP segment as well as identify when another master device enters the network.
_
Routing Status Table

A BACnet networks Routing webpage with a discoverable routing table is useful when setting up or troubleshooting a BACnet network. Multiple networks, possibly employing different physical layer technologies, may be interconnected by BACnet routers to form a BACnet internetwork. The Routing table web page provides a routing table which contains information about the network topology of the surrounding BACnet internetwork such as Destination Network number, Network Type, Connecting Network, and Network Status as well as the Next Router Address. This table will be blank upon powering the BASrouter. Click the Discover Routing Table button at the top to discover other routers on the BACnet network which will send a “Who-Is-Router-To-Network” message and fill the table with the discovered BACnet routers.

_

Further Ethernet network troubleshooting can be performed by using a diagnostic switch such as the Skorpion Diagnostic Switch which can assist in troubleshooting Ethernet networks by allowing a network protocol analyzer such as Wireshark® to attach to an unused port on the switch and observe all traffic on the network. Skorpion Diagnostic Switches retain all the features of an unmanaged switch, but perform like a repeating hub where all received messages are flooded to all other ports. Mounting a diagnostic switch next to your BASrouter allows you to easily perform IP network troubleshooting.

_

The BACnet packet is nested inside a UDP (User Datagram Protocol) which is nested inside an IP protocol packet which is nested inside an Ethernet packet. This nested nature of the network packets means that when you capture using Wireshark, you will have to drill down to the BACnet message in order to see its contents. Using the bvlc (BACnet Virtual Link Control) dissector filter in Wireshark allows you to decode the messages as BACnet messages. The BACnet message itself consists of a few layers. The BACnet service is wrapped up with information about the device – the device address, source network number, and network priority for example are contained inside the NPDU (Network Layer Protocol Data Unit). Once you drill down to the APDU you will see the BACnet packet information. BACnet APDU (Application Layer Protocol Data Units) carries the Application Layer parameters, which simply means the actual BACnet packet.

_

Maximum APDU Length is dependent on the physical layer used, for example the maximum APDU size for BACnet/IP is 1497 octets, but for BACnet MS/TP segments, the maximum APDU size is only 480 octets. This becomes important when routing through different BACnet Data Link Layers and may require some more advanced BACnet router features such as the advanced features found in the high performance BASrouterLX with MS/TP Backbone and Backward Routing.

_

In the Wireshark screenshot below, you can notice the APDU contains the BACnet Service Choice, objectIdentifier and so on. In this case the BACnet service is a readProperty. This can be any other BACnet service such as a writeProperty, etc.

_

Wireshark is a powerful tool and allows you to specify custom filters such as capturing traffic to or from a single known IP address, a range of IP addresses, capture only BACnet traffic, change the UDP port (in case it is not on the standard 47808 port), you can also mark packets of interest and save, display, or print the marked packets.

_

 

Wireshark Cature with BVLC filter

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *