8

There are a number of bi-directional communication port standards in which cables are used to connect two identical ports, and usually those connect each pin of one port to the same pin of the other port. For example Ethernet (8P8C) and RS-232 (DB-25/DE-9).

In order to establish agreement on the direction of communication, there are conventions in place that some devices shall use certain pins for transmitting, while others use those same pins for receiving, and vice versa. If you want to connect two devices which use the same pins for transmission, you need a special kind of cable (called a null-modem cable in the case of RS-232 or a crossover cable in the case of Ethernet). Now you have two kinds of cables, and you have to remember not to use the wrong kind of cable with the wrong kind of device or bad things will happen (although modern Ethernet equipment usually includes extra circuitry to sort that out).

It seems like it would have saved people a lot of trouble if all devices always used the same ‘transmit’ pins for transmitting, the same ‘receive’ pins for receiving, and all cables were crossover cables. But this is not how those standards have been designed. Why is that?

8
  • 4
    I heartily recommend "The RS-232 Solution" (1984, Sybex) by Joe Campbell for an in-depth look: archive.org/details/The_RS-232_Solution_by_Joe_Campbell/mode/…
    – Jim Nelson
    Commented Feb 11, 2022 at 23:17
  • 8
    Re connect two identical ports. This is not the case for RS-232. The socketry is the same, but that's about all, except in the degenerate "data only" case.
    – dave
    Commented Feb 11, 2022 at 23:17
  • 1
    I would like to note that it is in principle possible to use the geometry of connectors to make cross-over the default: looking at the connector from the opposite side will interchange what is left and what is right. By this principle roads that are used to interconnect places are invariably cross-over: in both directions one same side (left or right) is used for transmitting and the other one for receiving. (And of course the is no global agreement about which of the two conventions to use.) Commented Feb 12, 2022 at 8:50
  • @another-dave and even the socketry often distinguishes both sides (DTE/DCE) by using a male socket for one and a female socket for the other.
    – dirkt
    Commented Feb 12, 2022 at 10:05
  • 4
    @MarcvanLeeuwen - there is universal agreement on which side of the road to drive on. Well, except for the heretics who prefer the other side. Like many other standards out there…
    – Jon Custer
    Commented Feb 12, 2022 at 15:58

7 Answers 7

20

RS-232 is a special case. The original purpose of RS-232 was to connect a computer or computer terminal (a.k.a., "Data Terminal Equipment" or "DTE") to a modem (a.k.a., "Data Communication Equipment" or "DCE"). Any other use, such as directly connecting a computer terminal to a computer, was off-label.

In light of that original use-case, the reason why we call an RS-232 crossover cable a "Null Modem" makes some sense: Instead of connecting the terminal to a modem to a telephone line to another modem to the computer, we can eliminate the two modems and the phone line with a "null" modem.

6
  • 2
    Apart from data, there is signaling. Some null modems do RTS/CTS loopback for each station, for example. You don't want this in real-modem use, so if you eliminate the need for a null modem, now you need special cables.
    – dave
    Commented Feb 11, 2022 at 23:07
  • @another-dave: On a PC serial card, the three output wires have matching input counterparts (TX/RX, CTS/RTS, and DTR/DSR) but there are also two input wires for model signalling without such counterparts (DCD and RI) and it's unclear what a crossover cable should do with those.
    – supercat
    Commented Feb 11, 2022 at 23:40
  • 6
    The DEC H312A null modem (from memory, a box about 4" x 2" x 0.3") was basically a couple of DB25 connectors with breakout panels. You could wire them up any way you wanted. And often had to.
    – dave
    Commented Feb 12, 2022 at 2:10
  • 2
    @supercat DCD should be asserted on both sides (it existed to detect whether the phone line was connected, basically). Commented Feb 12, 2022 at 7:32
  • 4
    @WillCrawford Another convention is to connect DTR of one side to both DSR and DCD on the other side. That's the way I prefer most and didn't yet fail on me with any PC-to-PC transfer software I tried to use. I understand that connecting one output to two inputs might violate RS232 impedance specifications, but in practice it doesn't seem to be a problem. Commented Feb 13, 2022 at 18:13
14

Answering this for all kinds of connections is simply way too broad. But there are three basic facts:

  1. Connected devices have specific functions.
  2. Connecting devices of the same function is an exception.
  3. Straight cables are less effort/lower cost.

RS232 as the mother of all (modern) serial makes a good example. Typical uses are communication setup, or peripheral devices. For example on remote lines:

enter image description here

(Picture taken from Wikipedia Article about Data terminal equipment)

By wiring DTE and DCE accordingly a simple straight cable can be used. No need for any specially wired cable.

The same is true for peripherals, like connecting a computer to

  • a printer,
  • a tape reader,
  • a tape punch,
  • a keyboard

or any other of countless kinds.

In addition, when it cones to communication interfaces it is not just about switching RX and TX: there are, depending on the protocol used, up to 20 lines that have to be wired accordingly. Many in a way specific to the device.

By offloading this task to each device, having it internally wired as needed, again a simple straight cable can be used.

The only case were a crossover cable is needed is when two devices of the same type, usually DTE, are to be connected without a communication line in between - hence the name Null-Modem - as the cable nullifies the insertion of a modem line.

While this may seem nowadays almost a default task - like when experimenting with some single-board machine - it was the extreme exception when these interfaces were standardized. And it stayed that for most of the time since then.

Equally importantly, null-modem cables often do not just cross TX/RX lines, but as well shortcut some additional signals to emulate modem response. This makes them even more special to the situation and unfit to be used in any other setup.

The same works with LAN cabling. The moment we went to point to point connections, instead of a bus (yellow cable), straight cables became the simplest solution. Lowest priced, least chance of false application. It's always device to switch (or hub) and so on. Again the pitfalls of cabling get internalised and cost reduced.

The usage of 'twisted' cable is again restricted to very special situations, like coupling two PCs or patch connections in a data center.

In the end, it's been the same even since telephone days - here also cables were straight, connecting between two distinct sides. The unusual case of connecting two sets without an exchange in between did require a crossover cable.

And that's the basic issue: with an exchange in between, all changing happens there, so the cable can be simple and straight.

3
  • We used to call point to point LAN cables "crossover cables". The only time I ever heard "twisted" was in the context of twisted pair.
    – JeremyP
    Commented Feb 15, 2022 at 17:59
  • How unusual would it have been to have a pair of teletypes at different parts of a facility, with a current-loop connection between them rather than a modem?
    – supercat
    Commented Nov 7, 2023 at 16:25
  • @supercat that would have been the standard setup - except, they would be most likely connected to an exchange. Having just two would be extreme unusual.
    – Raffzahn
    Commented Nov 7, 2023 at 22:42
5

Data communications connector standards are specified for the majority use case of interconnecting different types of equipment :

  • Terminal / printer / computer (DTE) <-> modem (DCE) for RS-232
  • Computer (MDI) <-> hub / switch (MDI-X) for 10BaseT and successors

It's simpler (and therefore cheaper) at the patch-cable factory to have the same pinout on both ends (a straight-through cable). This also allows the use of flat ribbon cable (quite common in the 1980s when speeds were relatively low).

Rolled cables (complete reversal) were introduced AFAIK with the almost flat (but in fact D-shaped) twisted-pair telephone cables with RJ11/RJ12 or RJ45 connectors where the sheath strain relief gripped poorly on the flat side. This configuration was used for RS-232 on Sun terminals and Cisco routers, among others. The idea made less sense for the D connector of RS-232 and was not adopted for 10Base-T.

"Bad things" should never happen when using the wrong cable and connecting two transmit pins together with this type of communications standard - the connection will simply not work.

Your system of identical connectors and twisted cables actually applies to fibre-optic transceivers - GBIC and X2 with duplex SC connectors and SFP with duplex LC connectors. Most duplex fibre patch cables I've bought over the years have been crossover and so could be used to connect switch <-> switch or server <-> switch. On the other hand, switch <-> building cabling <-> switch requires one straight cable and one crossover cable if the building cabling is staight through.

1
  • Belated credit to @RobinHammond for first mentioning rolled cables which are probably in scope.
    – grahamj42
    Commented Feb 17, 2022 at 11:40
4

For example Ethernet (8P8C)

Original 10BASE5 Ethernet used a long coaxial cable with vampire taps to connect a complete subnet.

When this switched to star-topology with hubs with 10BASE-T, there was a single twisted pair for each direction, and a clear distinction between the hub side and the computer side, just like for RS232 with DCE/DTE. That's why straight-through cabling was used (and you needed special crossover cables to connect two computers, which was a rare case).

The current solution with modern ethernet with multiple twisted pairs for one connection is to negotiate transmit and receive pairs as part of the general speed negotiation that is necessary anyhow. That's why today it doesn't matter if you use straight-through or crossover cables.

3

Fundamentally, it traces back to how the components are asymmetric, right down to how components in your block diagram (whether ICs or clusters of more discrete components) are easier and cheaper to build in a controller-controlled configuration than a shared bus with multiple speakers.

The question isn't "Why aren't these always crossover cables?", but "Why did they use the same connector on both ends of an electrically asymmetric connection?"

RS232 was originally for connecting peripherals to the devices they serve, but it was also designed for runs between rooms, being traditionally capable of 50ft. and anecdotally capable of up to 1000 ft. with the right cables and transceivers. You don't want to be re-wiring your building or rebuilding your cable ends when your needs change.

Likewise, 10Base-T Ethernet was a long-distance (100m) technology designed in a context where, if you've got the money for network hardware involving a hub, you're going to do it for more than the two PCs you could do with a null modem cable, so you might as well make the common case the one that's simple to wire.

...and, at the time, this was equipment where you were expected to have professionals installing everything and desktop PCs wouldn't get moved around much.

In the early days, networking was expensive, but also an aftermarket add-on rather than a vertically integrated thing like IBM's mainframe offerings, so cost-savings were an important competitive edge.

I was quite young at the time, but I vaguely remember the rule being that, if you didn't need the added features, you went with a 10Base-2 "thinnet" bus to save on the cost of a hub... and those were symmetrical as long as they were properly terminated.

4
  • 1
    "I'm assuming they're male on both ends because it's cheaper to injection-mould a crimp-on male modular jack" Not really. They were defined before there were injection mould and crimp on connectors. It's way more simple: Straight connecting cables can be plugged in either way. No need to care for using the right side - like with USB. DTE to DCE is cable wise symmetric, all complicated routing is done internally, were it has to be done anyway. Same strategy as with host interface cables (noone likes having a cable the wrong way after crawling 10m in raised floor).
    – Raffzahn
    Commented Feb 14, 2022 at 2:07
  • Ahh. Makes sense. I forgot to consider the short-run/long-run distinction.
    – ssokolow
    Commented Feb 14, 2022 at 14:13
  • RS-232 was not originally designed for long runs. Earlier versions of the standard specified a maximum cable length (about 15 m, I believe), and later versions changed this to a minimum capacitance that the drive circuit must tolerate, but that still left it in the 15-25 m range. Longer runs were and are definitely outside the standard, though of course it's quite possible to design drivers that exceed the standard and can handle longer runs.
    – cjs
    Commented May 29, 2023 at 21:38
  • @cjs Good point. I'll change that to "runs between rooms", since I was thinking of "short" as "within the vicinity of a single PC". (i.e. The kind of "same distance as between a PC and its keyboard/mouse/monitor" distances you'd expect of an external modem, but not a serial terminal.)
    – ssokolow
    Commented May 30, 2023 at 4:17
1

It has been done that way; the Macintosh serial cables for printers and modems and such were all crossover types. The problems start when one describes the pinout of a cable; is the pin #3 TXD- because it plugs into the TXD- socket on the computer, or is it RXD- because it communicates with the RXD- socket on the printer?

Then there's share-the-printer switches, where three or four computers share a printer, and the switch doesn't swap the signals, so the computer-switch cable does one switch, the switch-printer cable does another... big mistake. Finally, there's the 'I need an extension cable' conundrum: the extension should be a non-swap cable, of course. And the female-female coupling should be a swap coupling, unless it were used with a system that didn't employ the swap (because not all uses of the connector were for Macintosh serial signals).

As soon as nonswap wiring was practical, the vendors reduced their inventory and heaved a sigh of relief at the lack of confused and angry customers...

1
  • A real-world example of where the default was to have crossover cables was SCART, where, e.g., pin 1 (audio output R) would be wired to pin 2 (audio input R) on the other end of the cable. Chasing down the various problems related to that might also give some insight.
    – cjs
    Commented Feb 17, 2022 at 12:24
0

Additionally, there is such a thing as a roll-over cable, careful layout of an 8P8C cable can allow complete reversal of the conductors to achieve null-modem functionality. This allowed a null modem to be made from a ribbon cable by crimping the ends in the same orientation. The ends facing out-wards, thus 180° rotated.

SUN's SunFire V1xx series had these for their console/LOM port.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .