- Created on Saturday, 24 March 2012 15:25
- Last Updated on Tuesday, 10 April 2012 04:51
Economic theory has taught us about the dangers of pricing a product too cheap, as it could put off prospective buyers, or at least make them weary. So what is one to think when this USB 2.0 to TTL UART serial converter module retails, in some quarters, online for less than it costs to buy the chip that it is populated with? Undaunted by this slight anomaly I decided to minimise the risk and invest in the cheapest converter I could find and low and behold what a cracking investment it turned out to be.
Debug Analysis Tool
It would be great if all of our hardware, firmware (FPGAs) and software projects were planned, coded and worked first time. However, in reality they rarely do and inevitably we all need a “little” bit of help in the form of a debug analysis tool. It is at this stage, when all hope appears lost and that sinking feeling of despair begins to loom, that a USB to serial converter can make its grand entrance. Although no project deadline was on the horizon when I decided to buy one, its extremely low price attracted me to it with the same, but not identical, ferocity that Gollum was attracted to the ring.
This great little debug tool is priced anywhere from between £1.79 to £4.99 from that online megastore and probably other places too. Quite thankfully this device wasn’t needed in an emergency, as it took over 5 weeks to arrive. When what arrived did arrive, it was the aforementioned converter accompanied by a 4 x 1-pin dual female wire cable, wrapped in bubble wrap, in a nondescript envelope. A two-pin jumper was conveniently placed across the RX and TX pins, a kind of paupers loopback device.
No instructions, whatsoever, were included as part of the package. However, one can’t complain, it's like going to a restaurant and ordering a meal, you can either have the meal thrown at you for a quid or two, or have it served on a golden plate, with all the trimmings, for a price. Either way a meal is a meal, the decision on how you receive it is yours! The only price to pay, if one opts for the more economical choice, is a reasonable learning curve.
Virtual COM Port Device Drivers
The USB 2.0 to TTL UART, 6pin CP2102 module, serial converter is based upon the CP2102 USB to UART bridge from Silicon Laboratories. Thankfully, the CP2102 is a popular and well documented device, with the appropriate virtual com port device drivers being available for most of the usual computer platform suspects. Virtual com port device drivers are required for a USB device to masquerade as a serial device. It offers the advantage that already existing serial port software and programming libraries can be used with a USB device.
When the device is plugged into a PC’s USB port an annoying red LED indicates that the hardware is powered on. Installing the device drivers on Windows Vista, quite mercifully, only took an hour or two, as I kept on going round in circles. Finally, after downloading the device driver software directly from Silicon Lab's website, I managed to get the device recognised as com port 16, (COM16), as can be seen in the figure above.
Quite erroneously, as it was getting rather late in the day, I thought that it would be quicker to test the device on a Windows platform rather than on a LINUX one. However, I have now seen the error of my ways and promised myself to treat LINUX with more respect in the future, should I have to make a similar decision again. To test that the device works, Putty configured in serial mode, was used in conjunction with the poor man’s loopback device. The echoed response can be seen in the diagram below.
The CP2102 UART to USB Bridge
A cursory glance at the CP2102’s datasheet informs you that the PCB footprint of the CP2102 is the MLP-28 package, with a 0.5mm pitch and 0.23mm pad widths. Being so small, the potential difficulty one could face when attempting to hand solder the CP2102, for use on a DIY project, becomes apparent . It makes one feel more appreciative of the price at which this product is being sold at.
The CP2102 is a fully compliant, full-speed, device with an integrated transceiver and on-chip matching resistors. It also has an onboard 3.3V voltage regulator, which can supply a maximum current of 100 mA. The board itself consists of the CP2102, 3 resistors, two capacitors and 2 LEDs, as can be seen in the Figure above. The connectors are a Type A connector on the USB side and 6 x 1 single way socket on the other. This suggests, quite correctly, that only a limited number of the available pins are connected between the socket and the CP2102.
The only RS232 signals that the 6 x 1 way socket connects to are the TXD, asynchronous data output (UART transmit) pin and the RXD, asynchronous data input (UART receive) pin. The optionally specified avalanche transient voltage suppression diodes, used for ESD protection, do not appear to have been used.
User devices are expected to interface to this device using the LVTTL voltage logic level standard as, can be seen in the Figure above. Finally, the device supports the data formats and Baud rates shown in the Table below.
A DE0 Nano Serial Communications Protocol This project demonstrates the USB to UART serial converter module being used as a bridge between Altera's DE0 Nano FPGA development board and a personal computer.
The conclusion is, well, it works! Although, this device can be purchased at ridiculously low prices, it does not appear that quality has been compromised, if that is at all possible. A true test of this device will be when it is put to work on one of the many upcoming projects. However, so far so good, it gets the thumbs up.