QLab 5TutorialsUnderstanding USB-C

Understanding USB-C

Modern Macs make extensive use of the USB-C connector for interconnecting with external hardware like input devices, storage devices, and displays. This connector has a lot going for it; it’s versatile, durable, symmetrical, and small. Unfortunately, with it comes a great deal of confusion and difficulty. The goal of this tutorial is to provide you with a full working knowledge of the USB-C connector and everything it can do.

Connectors and Protocols

Prior to the invention of USB-C, it was generally true that each type of connector found on a computer were used for one thing only, so you could just look at the connector and know what it was for. This wasn’t always true, but it was true enough to prevent mass confusion. The USB-C connector broke from this tradition rather sharply.

Before USB-C, the term “USB” referred to both a set of physical connector types and to the type of signal that was being used by those connectors. USB-C, on the other hand, is only the name of a connector. There is no protocol or signal called “USB-C.” Had they simply named it the “C” connector, or really any other name, a considerable amount of confusion could have been prevented.

On top of that, the USB-C connector is used for more than one communication protocol, unlike most of its predecessors, and the protocols themselves contain other protocols, like digital Matryoshka dolls.

To un-nest the dolls and make sense of things, we’ll discuss the physical design of the USB-C connector, and the three roles that it fills: USB, Thunderbolt, and USB Power Delivery.

The USB-C Connector design

USB-C connectors have 24 electrical contacts, called “pins.” These pins are connected to wires within the cable, although not all connections are mandatory:

  • Four ground pins which connect to a pair of wires. These are mandatory.
  • Four bus power pins which connect to a pair of wires. These are mandatory.
  • Four low-speed data pins which connect to a pair of wires. These are mandatory.
  • Eight high-speed data pins which connect to four pairs of separately shielded wires. These are optional.
  • Two configuration channel pins which connect to two wires. These are optional.
  • Two sideband use pins which connect to two wires. These are optional.

Any USB-C cable which includes all optional connections is considered a “full-featured” cable. Cables that do not include all optional connections do not have a special name, they are just not full-featured cables.

USB

USB, which stands for Universal Serial Bus, is a set of closely-related standards that are all, basically, ways to send data back and forth between a computer and a device connected to that computer. Ever since it was invented in the late 90s, USB has always embraced the concept of different classes of device, because the essential premise of USB is “you just plug it in, and the machines will figure out what’s supposed to happen next.” This is a worthy goal, and a frankly ambitious one. It works well most of the time; you can plug a mouse, a printer, and a synthesizer into the same computer at the same time, using the exact same type of cable, and pretty much everything works without a hassle.

When the USB-C connector is used for USB, it’s using either USB 3.2 or USB4 (note the deliberately missing space between “USB” and “4”… we don’t make these rules.) These two versions of the USB protocol are similar but not identical.

USB 3.2

USB 3.2 was released in 2017 and supersedes all previous versions of USB. It defined four data transfer modes with confusing names:

  • USB 3.2 Gen 1, called SuperSpeed, is a re-naming of the USB 3.1 Gen 1 protocol, which was itself a re-naming of the USB 3.0 protocol. It transfers data at 5 Gbps1.
  • USB 3.2 Gen 2, called SuperSpeed+, is a re-naming of the USB 3.1 Gen 2 protocol. It transfers data at 10 Gbps.
  • USB 3.2 Gen 1x2, also called SuperSpeed+ also transfers data at 10 Gbps, but uses a different technical process than USB 3.2 Gen 2. Since the human-observable behavior is the same, the “marketing” name is the same.
  • USB 3.2 Gen 2x2, inexplicably also called SuperSpeed+ transfers data at 20 Gbps.

It may be useful to know that while USB 3.2 Gen 1 and USB 3.2 Gen 2 can be used with various types of USB connectors, Gen 1x2 and Gen 2x2 can only be used with USB-C connectors.

Modes with the “x2” in their name use all four high-speed data connections, which means you’ll usually need a full-featured USB-C cable to use them. Modes without the “x2” use only two of the high-speed data connections.

USB4

USB4 was released in 2019 and is much more powerful than USB 3.2, but with great power comes great confusion. The best way to wrap your head around USB4 is to think about it from the perspective of someone planning to build a device that uses USB4. Here is a list of things that person would learn by reading the USB4 specifications:

  • It is based on Thunderbolt 3, but full compatibility with Thunderbolt 3 devices is optional.
  • It supports data transfer at a minimum of 20 Gbps.
  • It allows “tunneling” other protocols (discussed below), some of which must be supported and some of which are optional.
  • It allows “alternate modes” (discussed below), some of which must be supported and some of which are optional.
  • It can be single-lane (requiring use of two of the high-speed data pairs) or dual-lane (requiring all four high-speed data pairs.)
  • It always and only uses USB-C connectors.

There are two data transfer modes that are mandatory for all USB4 devices:

  • Legacy USB which has a maximum speed of 480 Mbps. Because of this, you can theoretically plug any USB device ever made into a USB4 port on a computer, and as long as the computer has the appropriate software to talk to the device, it will work.
  • Tunneled USB 3.2 Gen 2. Again, we’ll get to tunneling in a minute.

There are at least twelve other modes that USB4 devices may support, but don’t have to:

  • USB4 20 Gbps
  • USB4 40 Gbps
  • Host-to-Host communication
  • Tunneled USB 3.2 Gen 2x2
  • Tunneled DisplayPort
  • Tunneled PCI Express
  • DisplayPort Alternate Mode
  • Mobile High-Definition Link Alternate Mode
  • HDMI Alternate Mode
  • Thunderbolt Alternate Mode
  • VirtualLink Alternate Mode

USB4 hosts (i.e. computers) must support at least Host-to-Host communication and DisplayPort Alternate Mode. USB4 docks and hubs must support at least Tunneled PCI Express and Thunderbolt Alternate Mode.

Clear as mud, right?

Tunnels and Alternates

Tunneling, in this context, is the nesting protocol-within-protocol that was mentioned above. When one protocol allows tunneling of another, the data that belongs to the “inner” protocol is encapsulated into data packets belonging to the “outer” protocol and sent along with any other data that the outer protocol is sending. When the encapsulated packets get to the other end of the connection, they are de-capsulated and reassembled to re-form the stream of data that entered the tunnel. Tunneling can increase the average speed of transmission because it does not require switching the connection back and forth between modes, although tunneling usually has a lower absolute speed since it necessarily does not use the full bandwidth of the connection.

Alternate modes, by contrast, achieve the same end result as tunneling (allowing more than one type of communication along a single connection) but instead of the inner/outer protocol concept, they electrically switch one or more of the high-speed data pairs for dedicated use by the alternate mode. As a result, using an alternate mode necessarily reduces the amount of bandwidth available for a regular data connection, since some of that bandwidth is being dedicated to the alternate mode connection. In exchange, they have the highest possible potential speed.

Alternate Modes

The USB specification allows for any number of alternate modes in theory, but there are only five that exist as of the writing of this manual:

  • DisplayPort Alternate Mode which can support DisplayPort 1.2 or higher. This mode can use one, two, or all four of the high-speed data pairs depending upon the version of DisplayPort being used and the resolution and frame rate of the display being connected. If all four pairs are used, then only the low-speed (USB 2-speed) data pair remains available for non-video data transfer. This mode also uses the sideband pins for the DisplayPort Aux channel, which transmits EDID and other metadata associated with the DisplayPort connection.
  • Mobile High-Definition Link (MHL) Alternate Mode which is a kind of awkward middle child of multimedia that can be thought of as basically “HDMI using different connectors.” It behaves very similarly to DisplayPort Alternate Mode, using one, two, or four high-speed data pairs plus the two sideband pins, but the technical details of the video signal that it uses are different.
  • HDMI Alternate Mode which behaves very similarly to the above two modes. HDMI and MHL use the same video signal but different metadata and sideband signals. HDMI Alternate Mode also co-opts one of the bus power pins to provide 5V power which is part of the HDMI spec.
  • Thunderbolt Alternate Mode which allows the USB-C port to use USB or Thunderbolt as needed. Additionally, a dock or hub which supports this mode can provide up to three downstream Thunderbolt 3 ports, each of which independently switches data modes and alternate modes based on the devices connected to that port. Needless to say, a dock or hub of this kind must be connected upstream to a USB-C device that supports this mode, and must use a full-featured cable or a Thunderbolt-branded cable.
  • VirtualLink Alternate Mode which was developed to support virtual reality headsets but which, like most virtual reality technology, failed to catch on and is effectively dead. As of August 2020, the consortium that developed this standard disbanded. This mode is being listed here only in the interest of completeness, and you should not expect to ever need to know anything about it.

Thunderbolt

Thunderbolt is similar to USB on its face; it’s a way to connect devices to a computer. Thunderbolt has a fundamental conceptual difference, however, which might feel technical and vague at first, but which is essential to unraveling the mysteries of the USB-C connector.

As you may be expecting at this point, Thunderbolt is not really a protocol in and of itself; rather, it’s a set of hardware that combines two preexisting protocols plus a supply of electrical power into a single cable. The two protocols that it combines are PCI Express and DisplayPort which can each be described briefly, mercifully:

  • PCI Express (or PCIe) is a very old but well-maintained standard for passing data to and from a computer’s CPU at very high speeds. Cards in a desktop computer usually use PCIe, and the fundamental workings of PCIe are built into most modern CPUs at the hardware level. The main limitation of PCIe is that it only works over very short distances.
  • DisplayPort is a modern digital video interconnection standard which provides a direct connection between a display and the GPU inside a computer, like VGA and DVI did before it. You can think of it as “HDMI, but specifically for computers.” HDMI is more often seen built into computers because HDMI cables are cheap and ubiquitous, and HDMI inputs are found on TV and projectors everywhere, so the DisplayPort connector has become somewhat less common. Nevertheless, the digital signal used by that connector lives on within USB4 and Thunderbolt.

Thunderbolt allows high-bandwidth devices which previously could only be built as PCIe cards and installed in desktop computers to be built as portable stand-alone devices powered by the same cable that provides the data connection.

Thunderbolt version 1 and version 2 used the Mini DisplayPort connector. Thunderbolt version 3 and version 4 use the USB-C connector only.

Thunderbolt 3 specifies:

  • Up to four lanes of PCIe 3.0 data transfer totaling 32.4 Gbps
  • Up to eight lanes of DisplayPort 1.2 or 1.4 data totaling 32.4 Gbps
  • A total capacity of 40 Gbps
  • 15 watts of power delivery
  • Prioritization of video data over general data

Thunderbolt ports on a device are connected to the internal circuitry of that device through a Thunderbolt controller chip. Controllers come in three forms: a double port controller, a single port controller, and a low power controller.

If a Thunderbolt connection is made between a computer and a non-display device, like a hard disk or an audio interface, then the full 40 Gbps is available to the data connection. If a display is connected to the same Thunderbolt controller, however, the amount of bandwidth available for general data is limited to whatever’s left over after the display gets what it needs. Note that these limitations are per-controller, not per-port.

USB Power Delivery

Finally, USB-C connectors are used by the USB Power Delivery standard, which requires hosts to supply a minimum of 1.5 amps at 5 volts DC per physical port.

Hosts can optionally (of course there are options) supply higher amperages and voltages as well, all the way up to 5 amps at 48 volts (240 watts).

The Power Delivery specification includes a system of signaling and physical wiring which prevents devices from receiving more power than they are designed for. This is accomplished by always supplying the base amperage and voltage, and only raising the amount of supplied power if the device requests it.

Accessory Modes

Separately from the three main uses of the USB-C connector, there are also two “accessory modes” which are supported directly by the USB-C hardware design and which do not involve software at all:

  • Debug Accessory Mode is employed by using specific resistor values to connect the configuration channel pins to either the power pins or ground pins. This is generally only used for testing and development purposes.
  • Audio Adapter Accessory Mode is employed by grounding both configuration channel pins. In this mode, no data connection is possible at all, and the low speed data and sideband pins are used for headphone and microphone connections. This is how small, inexpensive USB-C to headset adapters work.

USB4 and Thunderbolt 4

Any device which supports all optional USB4 functionality is, officially, a Thunderbolt 4 device. Since one of the USB4 options is Thunderbolt Alternate Mode, which is Thunderbolt 3, the definition of Thunderbolt 4 is therefore: Thunderbolt 3 + USB4.

One of the stated goals of the convergence of USB4 and Thunderbolt was to reduce confusion. It is left to the reader to decide whether this goal has been met, or even approached.

Conclusion

If your head is spinning by this point, you are not alone. One connector is used for multiple protocols, each of which contains other protocols, many of which include multiple different ways to achieve the exact same results using either identical protocols implemented in different ways, or different protocols whose differences are necessarily invisible to the end user. It is mind-boggling. In the hopes of assembling some order out of this chaos, the following recommendations can be used:

  • If you’re using a Thunderbolt-branded device, only use a Thunderbolt-branded cable with it.
  • Only use “full-featured” USB-C cables (ones which connect wires to every pin) when connecting USB 3.2 or USB4 devices that have substantial data needs like high-channel-count audio interfaces or anything to do with video.
  • To keep life simple, consider only keeping Thunderbolt and/or full-featured USB4-branded USB-C cables around at all; they will always work with everything.
  • Evenly distribute high-bandwidth devices across ports belonging to separate controllers.
  • Avoid putting high-resolution displays on the same controller as non-video devices with high bandwidth requirements.

When shopping for docks or hubs:

  • Prefer USB4 or Thunderbolt 4 branded docks or hubs since they’ll have the best feature set and performance.
  • Accept Thunderbolt 3 docks or hubs as long as you don’t want or need to connect a wide variety of USB-C devices downstream of the dock or hub.
  • Accept other USB-C docks or hubs as long as you’re not using them for performance-critical applications.

When shopping for video adapters (DisplayPort, HDMI, MHL, DVI, or VGA):

  • Prefer Thunderbolt video adapters, since these will necessarily properly support DisplayPort at high bandwidth.
  • Accept video adapters that specifically mention using Alternate Modes.
  • Do not use video adapters that require drivers or other software to be installed.

When shopping for ethernet adapters:

  • Prefer Thunderbolt ethernet adapters or USB4 adapters that specifically mention PCIe Alternate Mode, since these will connect via PCIe which is the same technology that a built-in ethernet port would use.
  • Accept 2.5G or 10G USB4 ethernet adapters, since these higher-bandwidth adapters almost certainly require PCIe Alternate Mode.
  • Thoroughly test any other ethernet adapters before using them in a show-critical situation.

  1. Gbps stands for gigabits or billion (1,000,000,000 or 109) bits per second. Why is speed expressed in bits when file sizes are expressed in bytes? The reason is that while there are typically 8 bits to a byte in file storage, data transfer protocols can use different numbers of bits to make up a byte, and have different quantities of overhead that eat up portions of the total capacity. Measuring data transfer protocols in bits, not bytes, per second makes it easier to compare any two protocols accurately, even though it makes it harder to understand how long it will take to transfer a file of a known size.

Still have a question?

Our support team is always happy to help.

Business Hours
M-F 9am-7pm (ET)
Current time at our headquarters