Have you had difficulty using a USB to RS-232 adapter to connect your RS-232 device to a computer? If so, you are not alone. Our customers frequently encounter issues with these adapters. In this article, I’ll briefly discuss the origin of these issues and provide you with some suggestions for successfully handling them.
In the old days of personal computers, one of the primary connections available was the RS-232 serial port. Apart from the parallel port, it was the primary means to connect an external device. The connector was reduced from a 25-pin connector to a 9-pin connector, but RS-232 ports remained present on every computer for many years. Built-in RS-232 ports featured direct mapping to memory and worked at a high priority. Data practically flowed directly to and from the software that was accessing the serial port.
In 1996, the Universal Serial Bus (USB) standard was introduced as a replacement for the serial connector and other connector types that were typically found on the back of computers. The USB provided smaller connectors and more data throughput than the serial and parallel interfaces it replaced.
USB devices have high throughput, but they use a shared data bus. Data is wrapped up and transferred in packets. To handle the packets and move data in and out of the program accessing the USB device, a software driver is needed. The software driver sits between the hardware and the computer program you are using, and it must be installed and working correctly.
With the widespread adoption of USB, most computers sold now do not have an RS-232 port. Therefore, to connect an RS-232 device (such as a CR1000) to a computer, you need to use a USB to RS-232 adapter, such as the 17394 converter.
While USB to RS-232 adapters perform a necessary function, they do have some limitations. For example, there are three types of problems that you may encounter when using a USB to RS-232 adapter:
The most common problem that our customers encounter with a USB to RS-232 adapter is getting the proper driver installed. The driver must correspond to the chip inside the cable—not to the manufacturer of the cable.
For USB to RS-232 chips, there are two primary manufacturers: Prolific and FTDI. Because off-brand chips with poor drivers are unreliable, Campbell Scientific recommends and currently sells a cable using an FTDI chip (part number 17394). We chose this cable because it uses a chip that has a certified driver available on Windows Update. (The older cables were silver in color and did not have a driver available for Windows beyond version 7.)
Tip: Test your USB adapters in the office with your field computer. When you are in the field, your computer won’t have an Internet connection to automatically download and install the driver.
If the driver for your adapter is not automatically installed or cannot be installed from a CD, you will need to identify the chip in your cable and locate the driver on the Internet. Some manufacturers identify on their packaging which chip is used inside their cable. You can also identify a cable’s chip from the Windows Device Manager by following these steps:
USB to RS-232 adapters are commodity pieces of computer equipment. As much as we all wish that everything was as reliable as the CR1000, all adapter cables eventually fail.
Although there are two primary companies that manufacture USB to RS-232 adapter chips, there are many cable manufacturers who offer varying levels of cable quality.
I have seen several cases where old cables could no longer handle 115200 baud, but the cables still worked on low baud rates. There have been many more cases where a USB cable stopped working half-way through a day in the field.
Tip: If your field site is far from your office, take two USB to RS-232 cables with you. Lost time in the field can be a lot more costly than the purchase price of a second cable.
As mentioned previously, USB uses a shared data bus with packetized communication. The packetized communication introduced some latency (data transfer time) that wasn’t present with built-in RS-232 ports. Unfortunately, latency makes a noticeable difference when you download large amounts of data or upload a new operating system.
The driver for FTDI chips allows you to lower the latency time on packets. To do this, you can use the Latency Timer field, which is accessed through the Windows Device Manager. Follow these steps:
In addition to lowering your latency time, I also recommend disabling the Selective Suspend option for your cable. The Selective Suspend option allows Windows to put your hardware to sleep, which can result in corrupt data packets. To disable the Selective Suspend option, clear the checkbox for the Enable Selective Suspend field on the Advanced Settings window for your device.
Note: The Selective Suspend option is already disabled by default in the FTDI driver.
Newer datalogger designs, such as the CR6, feature a native USB connection. Many devices, however, will feature RS-232 connections for years to come, and we’ll need to continue using USB to RS-232 adapter cables. I hope the suggestions I’ve provided help. Feel free to share any USB to RS-232 issues that you have encountered by posting a comment below.