USB-C: the definitive thread

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
The other day, I encountered another one of those "USB-C is such a mess" rants.

Messiness is in the eye of the beholder. But let's look at the facts, and come to some definitive conclusions about those.

The issue is that there is one USB-C connector, but very many different host/device capabilities and a good selection of cable capabilities, too. I think in our circles we can assume that people will be at least somewhat informed about the capabilities of their computers and peripherals, so the issue is whether a cable will support the intended type of use.

The stuff below is what I understand from reading Wikipedia and other sources. I'm sure there are mistakes. Please fix those and put in additions where that's useful.

First, a quick look at USB 1.0 - 2.0 and 3.x.

The original USB connectors (1.0 - 2.0) all have four contacts: two for power (0 and 5 V) and two for data in the form of a differential pair. That means that bits are transmitted as the difference between what's on contact A and what's on contact B (rather than using one signal contact/wire and a common ground).

This can happen at 1.5, 12 or 480 Mbps. (Called "low speed", "full speed" and "high speed".) Communication is half duplex: the host (computer) and peripherals take turns sending and receiving over that single differential pair.

USB 3.x upped the speed to 5 Gbps. For this, it adds another ground contact and four contacts for two additional SuperSpeed differential pairs (a.k.a. "lanes"). This makes USB 3 full duplex: you can send and receive at the same time.

The old USB 1.x/2.0 stuff is also still there and can be used at the same time for something else at the same old low / full / high speed half duplex.

So let's map that functionality to the USB-C connector (Creative Commons attribution):

USB_Type-C_Receptacle_Pinout.png

The power is now spread over 4 ground and 4 "VBUS" contacts (A1 / A12 / B12 / B1 and A4 / A9 / B9 / B4, respectively). I assume this is necessary to be able to carry 5 amps over those tiny contacts, and in USB cables it's just two thicker wires that carry the power.

The original low / full / high speed are on both A6 + A7 and B7 + B6 on the connector end. However, the cable only connects either the A or B pair. CC1 and CC2 are used for capabilities negotiation, either through simple resistors or through a chip in the cable.

So a USB-C cable that can carry power and USB 2.0 high speed data is nice and simple, probably only using four wires just like an old school USB 2.0 cable.

However, USB 3.0 was just invented along with USB-C, so we need to implement the two SuperSpeed lanes for transmit and receive. Just like with the old school half duplex lane, this is done by wiring each differential pair twice. These are TX1+/TX1-, RX2-/RX2+, RX1+/RX1- and TX2-/TX2+ on the sides between the GND and VBUS.

Just like with the legacy differential pair, the two SuperSpeed lanes only have to be wired once in the cable. Depending on the connector rotation at each end, you end up using either the A or B send/receive pairs.

At some point the 5 Gbps SuperSpeed got (optionally) upped to "SuperSpeed USB 10 Gbps USB 3.1 Gen 2" over the existing lanes.

But then: why don't we use a cable that wires all four of the high speed lane connections on the connector side. So this gives two lanes. With 5 Gbps per lane this results in USB 3.1 Gen 1x2 = 10 Gbps. With 10 Gbps per lane you get USB 3.1 Gen 2x2 = 20 Gbps. However, it looks like the dual lane SuperSpeed USB never got any traction in the market, so in practice you get USB 3.1 Gen 1x1 = 5 Gbps or USB 3.1 Gen 2x1 = 10 Gbps.

So for just USB, you need a cable with just the power wires, the correct CC1/CC2 power negotiation stuff, the legacy half duplex lane and one TX and one RX SuperSpeed lane.

But of course USB-C can do so much more than just USB through the use of "alternate modes". I'm sure there are tons more defined, but the two relevant alternate modes are DisplayPort and Thunderbolt.

DisplayPort can use 1, 2 or 4 of the high speed lanes to carry DisplayPort image data. In practice, if you have a recent system, you can get 4K60Hz over two lanes and then you still have two lanes left for SuperSpeed USB. (DisplayPort lanes are all used in the same direction, i.e., from the host to the display.)

However, on older stuff, such as my 2018/2020 Intel Mac Mini and ~ 2020 HP Z27 USB-C capable monitor, you need to use all four high speed lanes to carry DisplayPort to get 4K at 60 Hz. So that leaves legacy low / normal / high speed USB for the monitor's USB ports, or going down to a 30 Hz framerate and then the monitor's USB ports can run at 5 Gbps.

So for DisplayPort, you probably need a cable that wires all four high speed lanes.

The sideband contacts (SBU1 and SBU2) are also intended to be used with alternate modes. I don't know if they're actually required.

Thunderbolt also assumes two lanes in each direction. So you'll also want a fully wired cable for Thunderbolt use. Note that various Thunderbolt versions can reach even higher speeds than 10 Gbps per lane. However, this may be limited to very short cables or "active" cables with chips on each side to manage the cable properties.

I got the impression that it's also possible to run Thunderbolt over just one send and one receive lane rather than two of each, but I could easily be mistaken about that.

Also note that rather than using DisplayPort directly over USB-C as an alternate mode, it's possible to encapsulate DisplayPort inside Thunderbolt and then you reach some level of bandwidth sharing. See Apple's Thunderbolt displays from a decade or so ago.

Conclusions
  1. All USB-C cables can carry 3 amps of current. In most cases that means you get a maximum of 60 W power delivery.
  2. Any type of USB-C to USB-C cable may be 5 amp capable. These cables are usually thicker and stiffer than other cables with the same data capabilities. In most cases this means you get up to 100 W power delivery. The latest stuff can go up to 240 W.
  3. There are probably some power-only USB-C cables. I haven't seen any USB-C to USB-C cables that can't do USB 2.0 speeds, though.
  4. Cables that are primarily meant for power usually only do USB 2.0 speeds.
  5. There are probably USB-C cables that can do USB 3.1 gen 1 or USB 3.1 gen 2 5 or 10 Gbps Superspeed but have no or limited DisplayPort and/or Thunderbolt compatibility. Good luck identifying that limitation, though.
  6. "Thunderbolt" USB-C cables will unlock all USB-C capabilities (although perhaps not 5 amps power delivery).
  7. However, there is nothing special about Thunderbolt-capable USB-C cables: they're just fully wired USB-C cables.
  8. The trickiest thing may be finding USB-C cables that can handle high DisplayPort resolutions at high framerates, as there are multiple ways to achieve that: higher DisplayPort data rate = higher DisplayPort version on two lanes vs an older DisplayPort version/speed over four lanes.
  9. All of this would still be worse without USB-C.
 

cogwheel

Ars Tribunus Angusticlavius
6,691
Subscriptor
USB 3.x upped the speed to 5 Gbps. For this, it adds another ground contact and four contacts for two additional SuperSpeed differential pairs (a.k.a. "lanes"). This makes USB 3 full duplex: you can send and receive at the same time.
A lane is a lane, whether it's half duplex or full duplex. USB 2.0 has one half duplex lane (not that you'd call it a lane since there's only one), USB 3.0 has the USB2 lane plus one full duplex "superspeed" lane. USB-C has two sets of wires for the USB3 lane, to support reversability, and this was further used as two separate full duplex superspeed lanes in USB 3.2 (instead of leaving one always dark). USB-C does not have four half duplex lanes as you're suggesting here - there's no support for using just one differential pair.

CC1 and CC2 are used for capabilities negotiation, either through simple resistors or through a chip in the cable.
Most negotiation isn't done with a chip in the cable, it's done with the device at the other end of the cable.

DisplayPort can use 1, 2 or 4 of the high speed lanes to carry DisplayPort image data. In practice, if you have a recent system, you can get 4K60Hz over two lanes and then you still have two lanes left for SuperSpeed USB. (DisplayPort lanes are all used in the same direction, i.e., from the host to the display.)
DP has four unidirectional lanes, while USB-C has, as noted above, 2 bidirectional lanes. You can't split a USB-C lane, so from USB-C's perspective, DP alt mode uses either one or both superspeed lanes, even if DP leaves one pair in that USB-C lane dark.

The sideband contacts (SBU1 and SBU2) are also intended to be used with alternate modes. I don't know if they're actually required.
For DP alt mode, it is. SBU1/2 are remapped to DP AUX+/-, which are required and used for stuff like EDID.

I got the impression that it's also possible to run Thunderbolt over just one send and one receive lane rather than two of each, but I could easily be mistaken about that.
I've never seen any indication this is true. TB already tunnels superspeed USB over its high-speed connection, so it'd be pointless anyway.

Any type of USB-C to USB-C cable may be 5 amp capable. These cables are usually thicker and stiffer than other cables with the same data capabilities. In most cases this means you get up to 100 W power delivery. The latest stuff can go up to 240 W.
I know what you meant here, but it's a bit confusingly worded. I would say something more like "Any type of USB-C to USB-C cable may be E-marked. Only E-marked cables can support 5 amps."

It's also incorrect now, with USB-PD 3.1. There are now three possibilities for cable types for power alone:
  • Unmarked cables, which can support up to 3 amps at up to 20 volts.
  • SPR E-marked cables, which can support up to 5 amps at 20 volts.
  • EPR E-marked cables, which can support up to 5 amps at 48 volts.

There are probably USB-C cables that can do USB 3.1 gen 1 or USB 3.1 gen 2 5 or 10 Gbps Superspeed but have no or limited DisplayPort and/or Thunderbolt compatibility. Good luck identifying that limitation, though.
Thunderbolt, sure. No DisplayPort compatibility shouldn't be possible, though, unless you're talking about a "Charging" cable, which only connects the USB2, CC, and power pins. Any USB-C cable that actually works at USB 3.2 Gen 1x1 (i.e. the minimum cable spec possible) without needing to be inserted a specific way (which would violate the USB-C spec) should be fine for DP 1.0 through 1.2. DP 1.3 and 2.0 would probably require at least a USB 3.2 Gen 2x1 cable, or possibly better if you wanted to use UHBR 13.5 or 20.

You're right that it isn't feasible to determine whether a cable is actually compliant with the spec just by looking at it, though.

However, there is nothing special about Thunderbolt-capable USB-C cables: they're just fully wired USB-C cables.
I'm not sure this is true. I think that longer and higher speed rated TB cables need to be active cables, so your 3m TB cable isn't just a well-made but otherwise standard USB-C cable. The active part may also mean that it isn't actually a USB-C cable, either, only a TB cable.



It might be worth noting that alt mode is basically only relevant for DisplayPort. TB is a superset, and TB devices are specialist enough that the average TB user can be assumed to already know if they have TB ports on their host machine, so it can be effectively ignored for a primer. HDMI alt mode is dead (and nothing ever used it before it died), and MHL alt mode no-one cares about.

Further USB-C weirdness: a USB-C charging cable still needs the USB2 wires connected and working, but a USB-C charger doesn't need to connect the USB2 wires to anything.
 

Semi On

Senator
89,415
Subscriptor++
Any type of USB-C to USB-C cable may be 5 amp capable. These cables are usually thicker and stiffer than other cables with the same data capabilities. In most cases this means you get up to 100 W power delivery. The latest stuff can go up to 240 W.

Note: that 100W cable has been deprecated. There are only 3A and full EPR cables going forward.

There are probably some power-only USB-C cables. I haven't seen any USB-C to USB-C cables that can't do USB 2.0 speeds, though.

There may be some non-compliant stuff, but the spec requires USB 2.0 at a minimum.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
A lane is a lane, whether it's half duplex or full duplex.
Right. I didn't get my terminology straight here. To me, the usage for roads is most intuitive, where each direction has its own lane. (Hopefully...)

However, that doesn't gel with the "USB 3.1 Gen 2x1" type terminology, so IMO, in the context of full duplex communication we should use "lane" as a combination of both directions. So two differential pairs with USB.

Of course it's nice and confusing that a two-lane USB/Thunderbolt cable will support four-lane DisplayPort...

Most negotiation isn't done with a chip in the cable, it's done with the device at the other end of the cable.

This stuff is hard to research, not helped by the fact that computer operating systems will not tell you anything about these cable capabilities that they detect or negotiate.

From what I understand SPR/EPR is actually in the cable, and it's a communication protocol. I assume there's a little chip in the connectors on each side of the cable.

Something I found strange when I started to venture into USB-C land is that it's quite common for peripherals such as hubs to have a permanently attached USB-C cable. With USB type A I pretty much never encountered that.

I think that in these cases, the configuration negotiation is indeed between the host and the peripheral, and this is presumably easier to implement than the more general case of making the peripheral work with any USB-C cable. (Which, despite the extra cost, would still generally be better because you get to choose a cable of the right length.)

It's also incorrect now, with USB-PD 3.1. There are now three possibilities for cable types for power alone:
  • Unmarked cables, which can support up to 3 amps at up to 20 volts.
  • SPR E-marked cables, which can support up to 5 amps at 20 volts.
  • EPR E-marked cables, which can support up to 5 amps at 48 volts.
There's more fun to be had:

The USB Power Delivery specification revision 3.0 defines an optional Programmable Power Supply (PPS) protocol that allows granular control over VBUS power, allowing a range of 3.3 to 21 V in 20 mV steps to facilitate constant-current or constant-voltage charging.

[TB cables being just regular USB-C cables]

I'm not sure this is true. I think that longer and higher speed rated TB cables need to be active cables, so your 3m TB cable isn't just a well-made but otherwise standard USB-C cable. The active part may also mean that it isn't actually a USB-C cable, either, only a TB cable.
Yes, if you want to do 40 Gbps TB over 3 meters you need an active cable and then it won't do USB 3. But my "regular" USB-C cables that work between my Macs and my 4K monitor that needs four DP lanes will also let me do 20 Gbps TB between my 2016 MacBook Pro and 2018/2020 Mac Mini.

Further USB-C weirdness: a USB-C charging cable still needs the USB2 wires connected and working, but a USB-C charger doesn't need to connect the USB2 wires to anything.
Well, hard to call it a "USB cable" when it won't transport, you know, USB... :rolleyes:

My chargers generally don't have much interesting data to share, so I will forgive them this omission. Although a surprisingly large number of Apple stuff that only uses USB/lightning for charging will still identify itself to a computer, presumably through the USB 1.0 - 2.0 wires.
 

w00key

Ars Praefectus
5,907
Subscriptor
My annoyance now is that I have no idea which cable does what. I have a white C to C cables that come with the Mac charger, that's slow for data but does 60W. I have a newer e-marker 100W cable but need to remember that this is the one for medium power output, like the MBP. And one extra chunky short cable with a CalDigit TB dock that enables it to work at high speed.

And the other many other C to C are mystery. Some are 3.1 capable but charges slowly, most are probably just 3A with slow data.


And there is no fucking way to see / test which one is which afaik, is there an app (phone/pc/macos) for that? At least then I can test and label them all.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
Do you mean that EPR cables are the same as SPR cables, or is this just wishful thinking on the part of the USBIF?
I gather there are tighter specifications for the insulating material and probably much more to deal with the higher voltages safely.

And from the PD 3.2 spec:

This specification mandates that all Revision 3.2 systems fully support Revision 2.0 operation. They must discover the supported Revision used by their Port Partner and any connected Cable Plugs and revert to operation using the lowest common Revision number (see Section 6.2.1.1.5, “Specification Revision”).

This specification defines Extended Messages containing data of up to 260 bytes (see Section 6.2.1.2, “Extended Message Header”). These Messages can be larger than expected by existing PHY HW. To accommodate Revision 2.0 based systems a Chunking mechanism is mandated such that Messages are limited to Revision 2.0 sizes unless it is discovered that both systems support the longer Message lengths.

From that document it looks like EPR is a separate mode that must be negotiated, not a replacement for SPR wholesale. (See chapter 2.7 in the document. But perhaps the other 1100 pages say something different.)
 
Last edited:

cogwheel

Ars Tribunus Angusticlavius
6,691
Subscriptor
This stuff is hard to research, not helped by the fact that computer operating systems will not tell you anything about these cable capabilities that they detect or negotiate.

From what I understand SPR/EPR is actually in the cable, and it's a communication protocol. I assume there's a little chip in the connectors on each side of the cable.
The E-mark chip that identifies a cable as a SPR or EPR cable is in the cable, and is connected to the CC pins. The CC pins are also used for the rest of the PD enumeration/negotiation between the host and device as well, along with the alt mode negotiation, which is what I was referring to when I wrote that most negotiation doesn't involve the cable.

Something I found strange when I started to venture into USB-C land is that it's quite common for peripherals such as hubs to have a permanently attached USB-C cable. With USB type A I pretty much never encountered that.
When a cable is permanently attached, it is permitted to break some USB-C cable rules. For non-USB-C, most of those rules don't even exist because the capabilities they relate to don't exist.

I think that in these cases, the configuration negotiation is indeed between the host and the peripheral, and this is presumably easier to implement than the more general case of making the peripheral work with any USB-C cable. (Which, despite the extra cost, would still generally be better because you get to choose a cable of the right length.)
While it would have been possible, and arguably preferable, to require all separate cables to run all pins through, and all cables capable of supporting 5A, this still wouldn't make every peripheral work with every cable. USB isn't static, and USB 3.2 and USB-PD 3.1 were finalized after USB-C was finalized and added cable requirements not originally needed.

This is yet another optional part of USB-PD that makes USB-C so much fun. It doesn't affect cables, though.

My chargers generally don't have much interesting data to share, so I will forgive them this omission. Although a surprisingly large number of Apple stuff that only uses USB/lightning for charging will still identify itself to a computer, presumably through the USB 1.0 - 2.0 wires.
USB-PD 2.0 and earlier supports USB-A/B connectors, with PD communication over VBUS instead of the not present CC pin. In addition to that, there's still the higher-level USB device enumeration as well. Either one, or both, could be the way Apple does what it does.

I gather there are tighter specifications for the insulating material and probably much more to deal with the higher voltages safely.
I meant that mostly as a prompt for @Semi On to confirm that the USBIF was up to its usual toothless begging. :)
 

Semi On

Senator
89,415
Subscriptor++
Obviously the expensive good ones will mostly be clear and cheap bad ones have a big incentive to be vague, but good luck trying to discern the difference between affordable+capable and too expensive+limited.

While not a good solution, a solution is to shop with the USB-IF's compliance list open in another tab. The compliance list will tell you what a cable can do. I suppose you could take that a step further and label the cable when you get it or throw away any charge-only cables you receive with electronics and only buy full-featured ones.

There are specific logos now intended to make this stuff clearer, but, as @cogwheel points out, the USB-IF doesn't really have any ability to police their marks.
 
  • Like
Reactions: continuum

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
I actually spent some time testing my five USB-C cables and then labeling them with a number... and then misplaced the list that says which cable does what.

For the most part it's thick relatively short cables that do it all vs thin longer ones that are severely limited and one or two that split the difference and do slow data but 5 amp PD.

My HP monitor complains when I use a non-HP cable, though. Even one that otherwise works fine. (And a good cable was included with the monitor so I can't complain about the complaining.)
 

w00key

Ars Praefectus
5,907
Subscriptor
What I don't get is why affordable quality cable makers don't label their products more clearly.
Oh hey, now I look closer the Anker cable has a tiny 100W marking on the connector. Embossed on black so it's barely visible, but at least it's there.

None of the other cables have any marking though so it's still ¯\_(ツ)_/¯ what they support. USB-A at least has semi standardized colors, blue = fast, orange/red = power.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
Well, this thread has clearly put to rest the notion that those rants have any merit.
Hm, some level of dissatisfaction has merit. But rants about how USB-C is a mess? I don't think so. All long-lived ports have the same issue. For instance, HDMI. At least with USB-C it's one port and in most cases it will at least do something useful even if you don't get to enjoy the full capabilities of the hardware involved.

Personally, I've decided to split my USB-C cables in three categories:

  • The long thin ones that do 3 amp power and 480 Mbps data
  • Short ones that do 5 Gbps USB and 20 Gbps Thunderbolt
  • Anything else needs to be recognizeable (like the 5 amp white Apple cable, or by me labeling it)

The power hungriest USB-C device that I have is that 2016 MacBook Pro. It came with an 87 W charger and 5 amp cable. And that's great for times where I want to charge it quickly or the rare occasions when I want to play a GPU-heavy game.

But when I leave the house I take my 29 W charger so any 3 amp cable is sufficient. The 29 W will keep up with most types of on the go use of the laptop and charge it overnight. So no need for 5 amp cables when I'm away from home.

And usually not even 5 Gbps USB. As far as portable devices go, the only one that can make use of that is my latest Nikon camera.
 

w00key

Ars Praefectus
5,907
Subscriptor
HDMI cables are at least pretty clear about their speed class (and w/ethernet) markings. USB cabling is a mess.

And that "5 Gbps" class is actually pretty diverse, there's classic super speed (SS marked, hopefully), SS10 marked (10 Gbps), TB 20 Gbps and TB3 40 Gbps. I learned to only trust the supplied cable with docks, anything else is headache.

Same for high speed DP / HDMI alt mode cables, can't trust random cable to work, must use the one true cable from the monitor. Even ones that should work often don't, limited to for example HDMI 2.0b which means 30hz on > 4K resolution.
 

cogwheel

Ars Tribunus Angusticlavius
6,691
Subscriptor
For instance, HDMI.
Do tell. HDMI is far less of a mess. About the only thing HDMI has that's optional the way 99% of USB-C is optional is ARC, and most TVs clearly label which ports support ARC.

Sure, HDMI has versions, and higher numbers support faster data transfer, but so does USB-C (3.2 Gen NxN anyone?). HDMI has nothing like alt mode, charging cables, Power Delivery (including E-marked cables), etc.

If you merely mean cable speed support, so what? Your OP wasn't purely about cables at all, and every sin of HDMI cables applies to USB-C cables as well.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
Do tell. HDMI is far less of a mess.
Well, less of a mess is still not clean. I keep my AV boxes in a built-in cabinet and then several cables go to my 4K TV. Turns out that despite my best efforts, I wasn't able to purchase an HDMI cable that supports 4:4:4 4K @ 60 Hz. Seriously, I was really looking for a cable that would handle this but was still tricked into buying something that doesn't.

So now when I watch content from my AppleTV 4K on my LG 4K OLED screen, in the default configuration with 4:2:0 4K at 60 or 50 Hz everything is fine. But when switching framerates or screen depth that stupid 🍏📺 4K will revert back to 4:4:4 and then sometimes that works over the bad HDMI cable for prolonged periodes of time and sometimes this means blackouts every few minutes, a few times per minute or even every few seconds. No idea what makes the difference here.

In most cases someone in this situation would just get a new more capable cable (after being SUPER CAREFUL on Amazon or whatever) but this cable goes through a wall and replacing it would be a huge headache because the hole is small and there's other cables already going through it, too.

And don't get me started on gaming systems that kill HDMI CEC.
 

cogwheel

Ars Tribunus Angusticlavius
6,691
Subscriptor
Well, less of a mess is still not clean.
True, but USB-C is unique in having a huge range of functionality, and only about 1% of that functionality being required, with no real progress to marking ports for what they support. At least HDMI ports are usually marked as to whether they support ARC.
 
  • Like
Reactions: phlaym

w00key

Ars Praefectus
5,907
Subscriptor
But when switching framerates or screen depth that stupid 🍏📺 4K will revert back to 4:4:4 and then sometimes that works over the bad HDMI cable for prolonged periodes of time and sometimes this means blackouts every few minutes, a few times per minute or even every few seconds. No idea what makes the difference here.
It's not the cable. A HDMI 2.1 cable is good for anything. HDMI 2.0(b) cables are good for 4K 4:4:4 but only at 8bpc. So HDR / 10bpc pushes it to 4:2:0, and HDR / Dolby Vision content is pretty much default on newer series and movies on Apple TV+, Netflix etc.

You need a port on the TV that speaks 2.1, the output device must be very recent too and if patched through a receiver, also latest model required.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
You need a port on the TV that speaks 2.1, the output device must be very recent too and if patched through a receiver, also latest model required.
Yeah, my 2018 stuff doesn't have any of those, and I'm not about to spend the money to replace any of it. If I really want to solve the problem I need to get a 18 Gbps HDMI cable, but that's too much trouble, too. 4K 24 Hz 4:4:4 or 4K 50/60 Hz 4:2:0 work fine, but Apple will not honor the 4:2:0 setting and let you switch other display parameters. It's one or the other. 999 more cuts.
 

w00key

Ars Praefectus
5,907
Subscriptor
Yeah, my 2018 stuff doesn't have any of those, and I'm not about to spend the money to replace any of it. If I really want to solve the problem I need to get a 18 Gbps HDMI cable, but that's too much trouble, too. 4K 24 Hz 4:4:4 or 4K 50/60 Hz 4:2:0 work fine, but Apple will not honor the 4:2:0 setting and let you switch other display parameters. It's one or the other. 999 more cuts.
HDMI 2.0 is 14.4 Gbps net. There is no 18 Gbps net data rate cable, 18 Gbps is the raw TDMS 8b/10b coding rate. You lose the last 2 bits.


So yeah, you issue is that you don't have enough bandwidth with the current devices, not a cabling issue.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
I believe it's common to refer to HDMI bandwidth based on the raw bitrate. The 14.4 Gbps number is the net video bandwidth. Don't forget the audio. :rimshot:

No, the devices are just fine with an appropriate cable. When I directly connect my AppleTV 4K to my 2018 LG OLED TV with a short "4K60Hz" cable I never have issues.

I pulled the wrong cable through the wall, which apparently creates intermittent issues that cause blackouts at or close to the maximum HDMI 2.0 bandwidth, i.e., 3840x2160 at 50 or 60 Hz and 4:4:4 color encoding.
 

w00key

Ars Praefectus
5,907
Subscriptor
I believe it's common to refer to HDMI bandwidth based on the raw bitrate. The 14.4 Gbps number is the net video bandwidth. Don't forget the audio. :rimshot:

No, the devices are just fine with an appropriate cable. When I directly connect my AppleTV 4K to my 2018 LG OLED TV with a short "4K60Hz" cable I never have issues.

I pulled the wrong cable through the wall, which apparently creates intermittent issues that cause blackouts at or close to the maximum HDMI 2.0 bandwidth, i.e., 3840x2160 at 50 or 60 Hz and 4:4:4 color encoding.
Sure. Just update Wikipedia then if you're certain of it.

1700147219114.png

b: Some of the transmitted bits are used for encoding purposes rather than representing data, so the rate at which video data can be transmitted across the HDMI interface is only a portion of the total bit rate.

TMDS is 8b/10b, 18 / 10 * 8 = 14.4.


And your 10bpc issue:

1700146913716.png



Maybe you got lucky and never played any 10bpc video on the short cable. But it will never work with HDR10 and HDMI 2.0b, whatever cable you use. Dolby Vision HDR is usually 10bit HEVC.

If your 8bpc 4K60 4:4:4 media randomly fails, well, maybe that's indeed on the crappy cable through the wall. Longer runs are touchy and I prefer HDBase-T or fiber for that.
 
Last edited:

cogwheel

Ars Tribunus Angusticlavius
6,691
Subscriptor
Sure. Just update Wikipedia then if you're certain of it.
If you read the article carefully, especially the 2.1 section, you'll discover that HDMI 2.0 @ 14.4Gbps is actually the same signal rate as HDMI 2.1 @ 16Gbps. Both are 18Gbps signal rate, but HDMI 2.1 uses the more efficient FRL encoding instead of the older TDMS encoding. This means that yes, a spec-compliant HDMI 2.0 cable can carry 4K HDR10 4:4:4 uncompressed @ 60Hz using HDMI 2.1.

My guess is that since 4:2:0 is half the data rate of 4:4:4, iljitsch's cable isn't actually 2.0 compliant, and when running in 4:2:0 it's dropping back to HDMI 1.4 signal rates (10.2Gbps, 8.16Gbps data rate).
 

w00key

Ars Praefectus
5,907
Subscriptor
If you read the article carefully, especially the 2.1 section, you'll discover that HDMI 2.0 @ 14.4Gbps is actually the same signal rate as HDMI 2.1 @ 16Gbps. Both are 18Gbps signal rate, but HDMI 2.1 uses the more efficient FRL encoding instead of the older TDMS encoding. This means that yes, a spec-compliant HDMI 2.0 cable can carry 4K HDR10 4:4:4 uncompressed @ 60Hz using HDMI 2.1.

My guess is that since 4:2:0 is half the data rate of 4:4:4, iljitsch's cable isn't actually 2.0 compliant, and when running in 4:2:0 it's dropping back to HDMI 1.4 signal rates (10.2Gbps, 8.16Gbps data rate).
He doesn't have any 2.1 transceivers though, all of the Apple TV box, the TV itself etc are all talking TDMS and not FRL.

If you have 2.1 devices on both ends, maybe this works? But that would require upgrading the TV to a 2022/2023 model and the Apple TV 4K to the second generation (April 2021).
 

continuum

Ars Legatus Legionis
94,897
Moderator
HDMI: make sure it’s a certified cable.

DisplayPort: make sure it’s a certified cable.

USB: make sure it’s a certified cable.

Naturally USB-IF makes that less easy to find define information on but Anker, Cables To Go, and Cable Matters are vendors I usually start with. (this is not intended to be a definitive list, there are so many USB cable makers I doubt anyone can possibly be familiar with all of them).
 

wco81

Ars Legatus Legionis
28,661
My annoyance now is that I have no idea which cable does what. I have a white C to C cables that come with the Mac charger, that's slow for data but does 60W. I have a newer e-marker 100W cable but need to remember that this is the one for medium power output, like the MBP. And one extra chunky short cable with a CalDigit TB dock that enables it to work at high speed.

And the other many other C to C are mystery. Some are 3.1 capable but charges slowly, most are probably just 3A with slow data.


And there is no fucking way to see / test which one is which afaik, is there an app (phone/pc/macos) for that? At least then I can test and label them all.

That's where I found myself. Have a bunch of name brand cables such as Anker cables rated for 65 or 100W PD.

But they all are only good for 480 Mbps speeds. Ridiculous.

I got two short cables with two Samsung SSDs. When I use them on my M1 Pro MBP, the speed in noticeably better. Replace one of them with the Anker and it chokes, takes minutes for 5-10 GB of data transfers, which is not even a full day of shooting RAW files.

It seems most of them are being marketed now, at least on Amazon, for charging specs, not data transfer speeds.

So now I'm looking at getting Thunderbolt cables or at least 10 Gbps USB-C cables, probably maybe not even rated for high PD charging.

Even the pricey Apple MagSafe to USB-C, while capable of fast charge rates, aren't meant for high-speed data transfer.

Now I'm shopping to replace my portable USB-C hub that I've been packing for trips. There are 10 Gbps hubs out there, with both USB-A and USB-C ports. But they have disclaimers like don't plug in SSD or HDD in them unless you plug in a power charger in the pass through to get more reliable data transfers.😞

So do I need to buy a more expensive Thunderbolt hub? Problem isn't just the cost but the bulk and weight isn't great for travel.

Plus my Sony XQD card reader, purchased in 2018, has a USB-A plug but it did come with a USB-A to USB-C adapter. Does that mean it's capable of 10 or even 5 Gbps speeds through the adapter? Seems unlikely.

I don't see myself upgrading my camera (also from 2018) just for CF Express Type B memory cards, which presumably have some kind of USB-C 3.1 or 3.2 data transfer interface.

Edit: This is the XQD memory card reader, which is listed as having a 3.1 Gen 1 interface:


So if I get the right kind of USB-C hub, I should get 5 Gbps transfer speeds, through a USB-A cable?
 

continuum

Ars Legatus Legionis
94,897
Moderator

wco81

Ars Legatus Legionis
28,661
Yes, assuming the rest of the card reader's internals can do so. The USB interface for the card reader itself should do 5Gbps.

So when these hubs say 10 Gbps, it's probably total throughput for all the ports -- they typically have 4 ports, either all USB-A or all USB-C or 2 of each -- probably not per port?

I guess it won't cost too much to test it out. Maybe just use it for transferring media from memory cards, not plug in my SSD through the hub.

However, I do use the hub to do Time Machine backups to a couple of older HDDs which still use the micro USB port on the drive end.
 

continuum

Ars Legatus Legionis
94,897
Moderator
So when these hubs say 10 Gbps, it's probably total throughput for all the ports -- they typically have 4 ports, either all USB-A or all USB-C or 2 of each -- probably not per port?
Each port can theoretically do full line rate, but given you only have so much upstream bandwidth to go around, and who knows how the controller chip connecting all the individual ports is designed for its own internal bandwidth, it's impossible to say how much real-world bandwidth you can get.

In theory (someone please correct me if I'm wrong, been a LONG time since I looked up a spec sheet/diagram on this), if you're sending data between say port 1 and port 2, and these are on the same root hub, you could in theory get full bandwidth between the two. However if the same root hub has three ports (call it port 3) and you are actively transferring data between all three is where I would be very hesitant to say anything.

A controller chip can have more than one root hub as well but now we're getting into lots of permutations and assumptions.
 

iljitsch

Ars Tribunus Angusticlavius
8,472
Subscriptor++
I'm not sure if it's reasonably possible to get USB-C working at 10 Gbps consistently, especially with a hub involved. There are two ways this can work: 2 x 5 Gbps bidirectional lanes, or 1 x 10 Gbps bidirectional lanes. And both of these are not common, AFAIK.

5 Gbps should be easy enough as long as you avoid "charger" cables that don't have any high speed lanes. If you want more, then Thunderbolt will be a better bet, with 20 or even 40 Gbps working pretty consistently.