Control Solutions is your source for LonWorks I/O.

Finding an RS-485 USB Dongle that works

What works, what doesn't and why?

We don't really know why some USB to serial devices don't work, we just know lots of people have had trouble with that. We don't claim to be experts in that area. What we provide here is simply examples of hardware we found that do work.

The first hurdle to get over is getting a COM port that works on your PC. If you are lucky enough to have a real COM port with a DB9 connector right on the PC, you are better than half way there. If not, find a USB dongle that works, and make sure your COM port works before calling Control Solutions for support. We can't help you if your PC isn't talking.

Once you get past the RS232 COM port hurdle, the next hurdle is converting that to RS485. There are lots of converters out there, and many of them don't work properly for protocols such as Modbus, and especially for BACnet. The biggest problem is that they do not properly handle timing of transmit enable. If you are combining USB to serial conversion with 485 conversion, the additional problem is that some USB drivers to not comply with the strict timing requirements of the protocols we are using.

The configuration software tools provided by Control Solutions are such that you should always be able to establish basic communications as long as the COM port is configured correctly and the port and converter are working. You do not need to do any configuration of the Control Solutions device to get it to respond as a slave device. It may not do what you want until configured, but it will always communicate as a slave at least while in configuration mode. Refer to online user guides for specifics about the device you are using.

Installation of the "Dongle Kit"

The hardware we present here is simply one example that we know does work. We have tried a few that don't. We do not claim this to be the only workable solution, but you are on your own to verify proper functionality of other solutions. If you do not know for sure your dongle hardware works properly with the protocol in question, Control Solutions support will not be able to help you with the Control Solutions product.

Skip to step 2 if your PC has a DB9 standard COM port on it.

1. Install the Dynex DX-UBDB9 USB to RS232 dongle using the CD and instructions that come with the dongle. Windows XP should go through the "Found new hardware" routine twice for the one dongle. When done, check your system's device manager to see what com port it ended up on. It will usually be COM5 or higher.

2. Connect the XP485-9E to your COM port. Follow the instructions for setting the baud rate on the XP485-9E. It is an intelligent device with its own baud rate setting. If you are preparing for BACnet MS/TP the default will be 9600 baud. If you are preparing for Modbus RTU or firmware update, the default will be 19,200 baud. You can use your PC's HyperTerminal program to talk to the XP495-9E for setting its baud rate. (The only command you need to use is B for Baud rate. Enter "B4" for 9600 or "B5" for 19200.)

3. Wire the RS485 devices. Connect TX+ to NET+ and TX- to NET- between devices. Connect "shield" on the XP485-9E to COM or GND on the Control Solutions device. Now start the Control Solutions configuration software applicable for the device you are connecting to. Follow its instructions regarding first steps to initiate communications.

Dongle Diagnostics

The LEDs on the XP485 indicate the following: Yellow is on any time power is on. Red flashes any time data is received from the PC. Green flashes any time data is received from the RS485 device.

Connecting Modbus: Assuming you are in configuration mode and/or the device is a slave. the red LED should flicker each time you click the Read button in the configuration tool. If baud rates are in agreement, you should also see the green LED flash.

Connecting BACnet: You always start by clicking the Init Stack button (with proper COM port and baud rate selected). This begins the process of passing the token back and forth between the PC and the BACnet device on the RS485 line. Because the token is passed every few milliseconds, data traffic will be virtually continuous, and a successful connection will have both the red and green LEDs appearing to be on solid rather then flashing.

Dongle Source Information

The Dynex DX-UBDB9 USB to serial RS-232 adapter is available at any well stocked computer retailer. We happened to find ours at Best Buy.

The XP485-9E RS-232 to RS-485 adapter is available from Integrity Instruments at www.rs-485.com. The power supply is sold separately so be sure to order both items.

You can get a kit containing both of these from Control Solutions on the Gateways online catalog page. We do not make money on these, we simply package them at cost plus a $25 handling fee for the convenience of anybody that doesn't have time to go shopping. The kit includes (1) DX-UBDB9, (1) XP485-9E, and (1) PS9J power supply.

USB to RS-485 Adapter - All-in-one unit

We finally found a single dongle that goes right from USB to RS-485. It does have the Prolific chip set, which means it will work with MS/TP as well as Modbus RTU. The only down side is that it does not have LED indicators. You can order the HXSP-2108G on our Gateways online catalog page.

Improving Performance with Prolific Chip Set and MS/TP

BACnet MS/TP is some of the most demanding character processing you can impose on Windows. Getting the best out of your USB to serial dongle (if using the Prolific chip set) requires modifying the default driver settings. Locate your USB serial port in the device manager.

Double click the USB-to-Serial Comm Port.

Click on the Advanced tab.

Uncheck the Use FIFO box. You do not want FIFO's used with MS/TP. They are capable of buffering the token long enough to miss the token use timeout, in which case your laptop appears to have dropped the token. The laptop didn't drop it - the USB adapter stole it for a while.

One more detail - laptops vary, but some will not correctly wake up again if allowed to go to sleep with the USB to serial dongle still plugged in. Unplug it before putting the laptop to sleep.