Most small computers of recent vintage lack "traditional" RS-232 compatible serial communication ports. This makes the connection of Teletype machines to such computers somewhat difficult. While "USB to serial" converters are widely available, few such devices will operate at the low baud rates required by the mechanical Teletype machines.
We have developed a means for dealing with this annoyance.
The Silicon Laboratories CP2102
The Silicon Laboratories CP2102 chip, which is a single-chip device for bridging USB ports to serial connections in current production, is capable of operating at slow baud rates if suitably configured. Here we are using the Silicon Laboratories CP2102-EB evaluation board, which has a DB-9 connector on one end and a USB connector on the other. This product sells for $29, including board, driver disk, and cables,, but without a case.
Reconfiguring the device for 45 baud.
Plugged into a Windows machine, this device will become a COM4 port. It will not, as delivered, run at 45.45 baud. To do that, it must first be reconfigured. Reconfiguring the device is performed with a program provided by Silicon Laboratories, the CP201x Baud Rate Reconfiguration Utility.
Once you have done this, the device will thereafter use the baud rate you set (45 baud) when asked to operate at 600 baud by an application program. This configures the device itself, not the Windows machine using it. So once that's set, you can use it on other computers, including non-Windows machines.
Notes on using this device
This device is well-behaved on the input buffering side, and will deliver queued characters after a 1ms delay. It is not necessary to change the USB Receive Time Timeout for this device.
The device does have a large output buffer, enough for almost a minute of typing at 45 baud. This can be annoying in interactive applications. Unfortunately, the buffer size does not seem to be a configurable option. We have found it necessary to flush the output buffer when the user wants to input and the Teletype is already typing. On Windows, this is a standard function. The stock USB driver for Linux does not support flushing, so we set the device to a very high baud rate for a fraction of a second to flush queued output.
We've used this device with both a Windows PC and with a Linux EeePC 2G Surf, a very small subnotebook.
Using other devices which contain this part
There are other USB to serial converters on the market which use this part. However, they may "lock" the part during manufacturing so that the parameters cannot be changed as above. The evaluation board is "unlocked', and so the baud rate tables can be changed as desired. If you find a USB to serial port device which uses this chip and which can be configured with the Baud Rate Reconfiguration Utility, please let us know.
June 14, 2011