USB is one of the best things to ever happen to computing. It standardized how we connect all sorts of things to PCs. Before USB there was ALWAYS trouble getting two devices to communicate.

In the bad old days we had DCE devices and DTE devices. For those of you who don’t know the difference between those two was which pin was the transmit pin and which was the receive pin. In one case, and I can’t remember which is which, Pin 2 was transmit and Pin 3 was receive. On the other one it was reversed.

What a nightmare that was. We had 9 pin connectors, 25 pin connectors and the DCE/DTE to fight through. Gender changers. Null modem cables. 25 pin to 9 pin converters. I am starting to shake just thinking about it.

Well, USB has changed all that. Anything targeted to connect to a PC has been USB for a long while now. And USB is really great technology. Here’s 5 things about USB that you might find interesting:

1.       USB is a master slave system with one master and lots and lots of possible slaves (127).

2.       There are three layers to USB Host Controller software. The first reads and writes registers in the USB controller. The second implements the USB protocol. The third provides the device control for the target device

3.       A device that is connected over USB is assigned a COM port within the Windows OS and looks to the application just like one of the old serial ports from the bad old days.

4.       The USB spec includes an Audio Class in which a USB device looks like a sound card. You can get a MIDI interface and an audio interface to a sound manager using USB.

5.       There are products that connect USB to WiFi and to Ethernet.

So what about USB and embedded systems? Well, of course, the first issue is that USB is mostly, if not exclusively, Windows based. And we use PCs on the factory floor but usually for specialized controllers or hefty HMIs. USB can connect devices to these PCs but only if the data doesn’t need to go to a PLC or DCS first.

And that’s the problem that a customer of mine had last week. He was bringing a barcode into a canned software app and needed to move that barcode to both the canned app on the PC and into the PLC for processing. And that was just too much of a stretch for USB technology. There isn’t any device I know of that can be both a USB Host controller (to get the barcode) and multiple USB devices (so it could be sent to two places).

The other problem is that it’s darn hard to connect a USB device to a PLC. But RTA is working on it. Within the next month or so RTA will have a product to move USB data right into the data table of a PLC and other products that move USB data onto various industrial networks.

Hopefully that will make a great technology even better and bring more flexibility and productive to the plant floor. And that’s exactly what we try to do here.