Undocumented Secrets of Integrating BACnet MSTP

After too many hours of struggling though trial and error, packet sniffing, and lots of various materials found on the Internet, I have uncovered a few very important secrets that were not readily apparent in the official vendor documentation I had available.

The device I was working with:  Trane UC400 BACnet Communications Interface

In general, none of the BACnet configuration software or documentation makes reference to the number of data bits, parity, or stop bits used.  Baud is the only thing that is set.  The problem is that unless you are integrating with something specific to BACnet, you will need to set these parameters.  Here they are:

  • Data bits: 8
  • Parity: none
  • Stop bits: 1

The Trane documentation tells you to connect your communications cable to 4 terminals labeled (-) (+) (-) (+).  For some reason, I took that to mean it was a 4-wire serial system.  BACnet is a RS-485 multidrop system, so it has to be a 2-wire.  I ran jumper wires like in the picture, but now that I think about it, it might work without the jumpers as well.

The last thing that threw me in a loop is that BACnet allows (expects) MULTIPLE masters in their master/slave system.  What?  While slaves are more efficient for bandwidth use, it is OK to have multiple masters.  I read a note that said most vendors require their devices to be a master.  I wound up having to configure my other device (a Redlion DSP) as a master.  So my BACnet network consists of two masters and no slaves.  Go figure.

Screenshot from 2015-04-16 21:11:15

I used two different packet sniffer programs, but the most useful and easiest to use was CAS BACspy, available for free from chipkin.com.  Hopefully, these notes will help save someone a little time in the future!   (find more of my controls articles at sparkygeek.com)

This entry was posted in Industrial Automation and tagged , , , . Bookmark the permalink.

2 Responses to Undocumented Secrets of Integrating BACnet MSTP

  1. Brony says:

    When in doubt, use 8,N,1. It is by far the most common default. But it should have been in the documentation.

  2. Matt says:

    Brian- would you happen to be able to send a copy of your Crimson file? I’m connected with a Red Lion DSP to a Trane BCI-I and am having the hardest time pulling any values out of it in the Watch Window.

Comments are closed.