Serial Connections

Serial communication has been around since the early days of computers. Many different "standards" have been defined, and new ones are still to come.
I can't possibly describe all standards here. So I will restrict myself to the most commonly used connections.

Apple Mini DIN-8

Apple has been using Mini DIN-8 plugs for their serial connections for quite some time in the past. Theoretically the Apple interface is superior to the PC interfaces. It can be used with longer cables and higher speeds before running into trouble.

The main difference with normal RS-232 connections is that they use differential pairs for transmission. If one line goes up, the other one goes down. At the receiver's end the signals are not compared to ground level, but to each other. This makes them immune to interference picked up on the line.

Connecting an Apple to a "standard" serial device, like a modem, requires some kind of adapter cable though.
Unfortunately the cables are very expensive, especially the longer ones. Making those cables your self requires good soldering skills because the pins are very close together.

Mini DIN-8 pins
Mini DIN-8


HSKo (short for HandShaKe out) is equivalent to the RTS output with RS-232 and HSKi (short for HandShaKe in) is equivalent to the CTS input. The voltages on TXD+ and RXD+ are positive to TXD- and RXD- respectively during a 'space'. This automatically makes them negative during a 'mark'.

If you want to connect the Apple Serial interface to a normal RS-232 device you must use the TXD- and RXD- for the transmission. TXD+ remains not connected. HSKo and HSKi signals can be used as RTS and CTS respectively.

RS-232 Sub D9

The original RS-232 standard had a lot of signals defined that were rarely ever used for serial communication. Therefore the usual 25 pin connector is far to clumsy. Computers which were equipped with a serial connector usually had the more efficient 9 pin connectors. These serial ports can only be used for asynchronous communication.

DB-9 Male
DB-9 male DTE

DB-9 Female
DB-9 female DCE

1CDInCarrier Detect
2RxDInReceive Data
3TxDOutTransmit Data
4DTROutData Terminal Ready
5GND signal GrouND
6DSRInData Set Ready
7RTSOutRequest To Send
8CTSInClear To Send
9RIInRIng detect

The table above shows the DB-9 connector pin assignments for a DTE device (a computer or terminal). DCE devices have pins 2 and 3 swapped. All other pins remain as shown in the table, with the only difference being the direction of the signals.
Notice that pins 2 and 3 are reversed in comparison with the DB-25 connector pin out!

Normally DTE devices use a male connector, and DCE devices use a female type connector. Connecting both devices together is only a matter of connecting all pins one on one with a cable with a male connector on one end and a female on the other end. If only all manufacturers would comply with this convention.

RS-232 Sub D25

DB-25 Male
DB-25 male DTE

DB-25 Female
DB-25 female DCE

1Shield Cable shield
2TxDOutTransmit Data
3RxDInReceive Data
4RTSOutRequest To Send
5CTSInRequest To Send
6DSRInData Set Ready
8CDInCarrier Detect
15TSCOutTransmit Clock
17RCCInReceive Clock
20DTROutData Terminal Ready
22RIInRIng detect
24AUCOutAuxiliary Clock

Most of the signals on the DB-25 connector have the same properties as with the DB-9 connectors. DB-9 to DB-25 converters connect the pins with equal functions on both ends. The signals for synchronous communication can be ignored when set up for normal asynchronous applications.

Note that the functions for pins 2 and 3 are just opposite to those found on DB-9 connectors! This is not an error (at least it's not my error :-)

Null Modem Cable

Normally a DTE and a DCE device are connected serially via a straight through cable connecting all the pins one on one. But when you want to connect two DTE devices (i.e. two computers) together you need a cross-over cable.
Such a cable is often referred to as a Null Modem Cable because to each side of the cable the other end appears to be a DCE (e.g. a modem). The task of a Null Modem Cable is to connect outputs from one computer to the respective inputs of the other computer. This would be impossible with a straight through cable!

There could be many different reasons why you want to connect two computers together, but usually it is to transfer data between them.

Simple Null Modem Cable

Simple Null Modem Cable

The simplest Null Modem Cable would be one that connects pins 2 and 3 of one end to pins 3 and 2 on the other end. Don't forget that the GND pins should be connected too!
Such a simple Null Modem Cable could work in most situations, but none of the handshake signals can be used.

Half Wired Null Modem Cable

Half Wired Null Modem Cable

Some programs will not be able to communicate if the handshake signals are not connected. You could solve this problem in a simple Null Modem Cable by shorting the pins RTS and CTS on both sides of the cable. The pins DTR, DSR can be shorted together in a similar way.
Such a Null Modem Cable has the advantage that most programs will work correctly, regardless of the handshake settings. At the same time we still only need 3 wires to connect both computers together.
Disadvantage is that we are only fooling the system and the handshake lines can not be used.

Fully Wired Null Modem Cable

Fully Wired Null Modem Cable

The best solution however is a full featured Null Modem Cable. The RTS signal at one end is connected to the CTS pin on the other end, and vice versa. Also the DTR signal from one end is connected to DSR on the other end. Some Null Modem Cables short the pins DSR and CD together on both sides.

A practical solution is creating a Null Modem Plug. That way you can always use standard straight through, so called "mouse extension" cables. And if you have to use it as a Null Modem Cable you can use the Null Modem Plug to handle the cross-over.

Cisco Communication Link Cable

Cisco 74-3383-01 RAV0A

Cisco uses an RJ-45 connector on its switches and routers for terminal control. A special adapter cable is required to configure those devices with a standard terminal program set at 9600 baud, 8 data bits, no parity and one stop bit.
Here you will find the wiring of the communication cable with part number 72-3383-01, REV A0. All non mentioned pins are not connected.