Parallel Port Adapter Designs

Last Update: February 2, 2003


The Hardware

The parallel port isn't quite the ideal vehicle for talking Control-A1, Control-A1 II, Control-S or any other protocol designed for consumer audio and video electronics. That being said the linux parallel port driver available for download on this site requires a small hardware adapter to work it's magic.

This driver does an end run around the hardware and as a result only works on relatively fast machines. The slowest platform we have seen operate with a reasonable error rate was an Intel 486 DX/33 ( the 3.0 driver may perform better, but due to the logistical unpleasantness of getting a 2.4.x kernel on a 486, no effort has been made to test the theory ). On the 486/DX33 about 90-95% of the data came through good. The driving factor seems to be the core bus speed. A 25 MHz bus is too slow, a 33 MHz seems ok, and a 50 or faster works quite well. This of course means virtually all but the earliest of pentium class machines will work flawlessly. For a detailed description of exactly how data is transmitted on the Control-A1/Control-A1 II bus or using Control-S interfaces, visit the encoding page. Currently development is done on an Intel Celeron 500 and the error rate is less than 0.002% ( 1 bit in 2,000,000 missed). With the aid of some error correction this rate can be further reduced in higher level applications.

Starting simple. If all you need is a Control-A1/Control-A1 II (aka slink) interface, this will get you there. The credit for this design goes to another S-Link experimenter named Mike Muise. His wiring diagram is presented below along with some pictures of a finished adapter. You need not concern yourself with matching the parts in the diagram exactly. The box shown for example actually contains a 4.2k resistor and a 2N3904 transistor rather than the parts shown in the diagram. Basicly you need a small signal NPN transistor and a resistor somewhere in the 1-5k ohm range. The parts can be purchased at a local Radio Shack for about $15. After that all you need is limited skill with a soldering iron and a 1/8" mono (Male-Male) audio cable.



If you want to get a little more elaborate and add support for Control-S devices, the following design may suit you better. Strictly speaking, the Control-S interface is somewhat risky since there is no isolation in this design to prevent inadvertent back current. However, that being said (Insert all disclaimers here. Use at your own risk etc.), most hardware with Control-S interface jacks should have isolation circuits and therefore one isn't strictly necessary required at our end. Also this is the simplest possible design for adding Control-S support. This design is supported by the latest version of the device driver. Strictly speaking the connections to pins 12, 13 and 15 (in red) are optional since they are only used for loop-back debug purposes and may not even be consistently supported in future versions of the device driver. As usual ground connections are to the ring of the 1/8" phono jacks and signal is at the tip. The earlier adapter can be adapted to this new design simply by adding more wires and jacks and is completely compatible. Also, you need only add as many Control-S jacks as you have need for. Just remember that Control-S is essentially wired IR remote. So each device needs it's own connection.



This new design allows control of a single Control-A1/Control-A1 II device chain as well as up to seven Control-S devices. Refer to the Control-S / IR Command Reference for information about how to send Control-S commands using the slink driver and this new parallel port adapter. -Jeff


Back to S-Link Main Page