Null modems... in 2025

Null modems... in 2025

2025, Jun 06    

Null modems and serial cables in 2025…. old school stuff

The old trusted null modem

Null modems in the simplest form is to share ground (GND, pin 5) and swap transmit (TX, pin 3) and receive (RX, pin 2).

Photo of USB serial device with null modem cable made of three wires with some wire showing

Yes it is old, and it has been suggested that I retire it. It has never really been an issue to ignore all the other pins, but then again, I only use it for debugging and initial installation of linux boxes.

The diagram looks like this

Diagram of DB9 to DB9 wiring for the simplest RX-to-TX and TX-to-RX null modem

(By Abisys - Own work, CC BY-SA 3.0, wikipedia)

To test, we have two linux machines with minicom. One is a lenovo think center with a built-in serial port, and the other a workstation which uses the usb device. I enable local echo, and disable hardware flow control (in minicom, it is under ctrl+a o -> 'Serial port setup'). Software flow control is disabled also.

Screenshot of two minicom session talking to each other

Screen shot of a minicom session. ttyS0 is on the server and ttyUSB0 is on the workstation.

It works, when you remember to disable flow control.

Cisco blue cable

It has a fancy name, but we all know which one it is, right?

Photo of usb-to-serial adapter, a blue Cisco RJ45-to-DB9 cable and a crossed RJ45-to-DB9 adapter

(By Abisys - Own work, CC BY-SA 3.0, wikipedia)

Next step is to make the null modem thing again, using a DB9-to-RJ45 connector and a cisco blue cable.

Diagram and pictures showing pinout of both the DB9 and the RJ45 end of a bllue Cisco cable

(from pinoutdiagrams)

Combining it with this diagram

Diagram of pinout from DB9 to SB9 to make a crossed connection

(By Abisys - Own work, CC BY-SA 3.0, wikipedia)

To make it a null modem, the adapter exchanges TX/RX, RTS/CTS and DTR/DSR. This allows for hardware flow control.

This works with the USB version of the blue cable as well.

UTP cable

Replacing the blue cable with a UTP patch cable and a straight adapter,

Photo of usb-to-serial adapter, 1 straight RJ45-to-DB9, 1 crossed RJ45-to-DB9 and a coiled up patch cable

And that works too.

Bootnotes

  • I think I can retire my old null modem now.
  • Honorable mention for background info
  • Maybe the RJ45 pin out is called yost, maybe it is EIA/TIA-561 (not TIA-568 which is for ethernet). Googling didn’t help me much, and my cable works for my purposes. Maybe something weird happens with some specialized equipment. We’ll fix that should the problem arise.