BACnet MS/TP Development Kit

Frequently Asked Questions



Purchase a Kit

Question: Who designed the BACnet MS/TP Development Kit?

Answer: Steve Karg, the same engineer who created the Open Source BACnet Protocol Stack hosted on  Steve's brother Lou and Lou's friend Dan created the original website.

Question: I don't have a Paypal Account, but want to purchase a board. How can I pay?

Answer: We use Paypal to process the orders, and they accept all major credit cards. No Paypal account is required.

Question: It appears that complete schematics and source code will be able to form an excellent foundation for our project.  Is that true?

Answer: Yes, the complete schematics and source code are open source. RS-485 and AVR are easy to develop for hardware - no secrets there!  Steve wanted to provide an embedded platform to demonstrate a BACnet device using his open source BACnet Protocol Stack hosted on  Steve also used cross platform schematic layout and PCB design tool EAGLE CAD from CADsoft for the schematic and PCB design, with a small enough board to qualify for the "Lite" version.

Question: You've chosen Atmel - what a fantastic choice - I use Atmel AVR's everywhere so this will not be a problem.  The problem I am having, due to my limited experience with BACnet, is the other physical layer options for the BACnet interface such as Ethernet, and Lon.  Do you have any experience, advice, options, for supporting these interfaces?  The RS-485 is the primary requirement but we are also hearing that Ethernet and LON are going to be stronger in the future.

Answer: Steve doesn't know much about the BACnet LON interface, and doesn't hear much about any field demand for it while at BACnet committee meetings.  It has been his experience that the popular BACnet datalink layers are BACnet Ethernet, BACnet/IP, and BACnet MS/TP, with BACnet/ZigBee as up and coming.  Steve doesn't see much future in the BACnet ARCNET datalink layer, and only knows of two BACnet vendors that use it.  Some installations are needing BACnet PTP (RS-232), so he might enhance the firmware on the board to include that (when he can find the time!).

Question: Any plans for a development kit that also supports these BACnet options (BACnet/IP, BACnet Ethernet) or other microcontrollers?

Answer: Steve is planning to create an ARM Cortex M3 kit that includes both RS-485 and Ethernet. He wants a platform that he can develop a BACnet router for inclusion in his open source BACnet Protocol Stack.  The beauty of BACnet protocol layering permits routing of the messages to various physical layers that are supported.

Question: What is the purpose of the external SEEPROM (since the AVR already has an internal EEPROM)?

Answer: Personal preference.  Steve has always found the internal EEPROM of most microcontrollers to be slower (longer write wait), less durable (only 100000 write cycles versus one million or more for external SEEPROM) and have other caveats (i.e. gets erased during reprogramming or bootloading), so he normally adds an external SEEPROM on his designs. Fortunately, his designs are not as cost sensitive as some, so it passes most design reviews and meets the cost targets of the marketing

Question: How do I configure the kit to be an MS/TP Slave node or a Master node (what config file to change)? What are the advantages of having several Master nodes with multiple Slave nodes as opposed to only one Master nodes with multiple Slave nodes?

Answer: The MS/TP names are really not descriptive of what they are: a Master node is really a Peer to Peer node, and a Slave node is really just a polled node (Slaves only respond to MS/TP Frame "Data Expecting Reply").

The kit was designed as an MS/TP Master Node.  It could be modified to be an MS/TP slave node (polled from a master), but that feature is not in the source code for the project at this time.  It could be done - since a slave node is just a subset of Master Node features.

Master Nodes are the preferred implementation for BACnet vendors, since a Slave Node cannot be discovered without a Slave Proxy BACnet router, or without configuring static binding in the work stations. The big advantage to having Master nodes is that they are discoverable by client tools, where Slave nodes are not.  Master nodes can respond to WhoIs with I-Am, where Slave nodes cannot.

Question: If there are too many MS/TP Master nodes on a network, wouldn't the AVR CPU consume so much needed time on passing the token?

Answer: Since the Master Node is really a Peer to Peer node, it only passes the token to its neighbor, not to all the other nodes.  The most CPU intensive activity would be a single device on the network with one other device (such as a BACnet MS/TP Router), with Max-Master configured correctly (i.e. 1), and then it is just token passing between two nodes.  When the MS/TP has Max Master set to 127, then the highest number node would poll to see if it can find a neighbor (Poll for Master). 

If you find that you are compute bound during token passing , a device can send a non-standard frame type (i.e. 128) and wait up to 500ms for the reply (which never comes) before passing the token.  However, this kit runs at 18MIPS and has more than enough horsepower to token pass and do lots of other useful things.

Question: Please tell me that you have stock of your standard BACnet developer's Kit? I'm sure I'll be placing an order very soon.

Answer: We normally have BACnet MS/TP Development Kits in stock.  Large orders may require a six week lead time.

Question: Do you have a recommendation for BACnet tools or PC interface for your kit?

Answer: Steve normally uses a BACnet/IP to MS/TP router for BACnet testing accompanied by Wireshark and the demo applications from the BACnet Stack which test the application layer. There is also VTS (BACnet Visual Test Shell) from SourceForge, but most find VTS a bit challenging from an ease of use point of view.

For a low level MS/TP monitor, Steve uses a USB to RS485 converter and the mstpcap demo tool from BACnet Stack demo tools.  There are commercial converters available, such as the USOPTL4 (about $129) or the USB-RS485-WE-1800-BT (about $30) from Digikey, in addition to the Cimetrics U+4 (about $895.00) MS/TP interface.

BACnet/IP to MS/TP Routers can be purchased from Polarsoft (about $695), Cimetrics (about $895.00), and Contemporary Controls (about $299).

There is also commercial BACnet testing software, such as Polarsoft BACbeat or BACnet Quick Test, Cimetrics BACnet Explorer, or Cimetrics BAS-O-Matic, which may help during development.  Chipkin has BACnet software, including a free demo that provides a BACnet Explorer over BACnet MS/TP or BACnet/IP.

On the AVR side, the kit includes standard AVR 2x3 ISP and AVR 2x5 JTAG connectors so that standard Atmel ICE and ISP tools can be used. It also includes FTISP jumpers to allow programming using the FTISP over the USB connection.

Question: Can you help us get a service to validate the sourceforge code that we implement will work with any BACnet building?  How would I accomplish this?

Answer: The normal route for testing BACnet products is BTL (BACnet Testing Labs).  BTL will test your product for BACnet compliance for a fee and issue you a BTL Mark if your device passes the tests.  It usually takes several iterations of testing and fixing to get your product correct unless you have someone test your device prior to submitting.

There are BACnet testing facilities that can provide pre-testing, such as Polarsoft or BACnet Interoperability Testing Services

Question: Where is the BACnet MS/TP Development Kit built and assembled?

Answer: The BACnet Development Kit circuit boards were fabricated by PCB-Pool and assembled and soldered by Steve in his basement with parts from Digikey and Mouser.



*Atmel and ATMega are all registered trademarks of the Atmel Corporation.