Live data from Hacker News

M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

eclecticlight.co

41–50 of 333 posts

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#41

> In normal testing, 5 Gb/s should yield around 500 MB/s Wow 90% overheads?

5 gigabit/s = 0.625 gigabyte/s = 625 megabyte/s so about 20% overhead... I would not be dissatisfied with 500 MB/s result on a theoretical 625 MB/s bus.

FWIW it's actually 500MB theoretical (ideal), because USB uses a 8/10 encoding[0], until 3.1 Gen 2 which switches to a 128/132 encoding[1].

So you have a 5Gb/s physical signal, then a 25% encoding overhead, for a raw data throughput of 537MB/s.

Once framing and protocol overhead are taken in account, mid-400s effective is probably a good result.

[0] https://en.wikipedia.org/wiki/8b/10b_encoding

[1] https://en.wikipedia.org/wiki/64b/66b_encoding

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#42

Earlier quoted context omitted.

Bits to bytes means dividing by 8.

I'm old enough to remember parity bits and FEC, so I know that the number of bits per data byte might be 8, but the number of bits required to transmit a single byte might be more than 8, and the number of bytes needed to transmit a frame of data might also be higher than the number of bytes of payload within the frame. I know next to nothing about modern serial protocols, but nevertheless as a rule of thumb, and abs…

You're pretty much on the dot: what you're thinking of is 8b/10b encoding (https://en.wikipedia.org/wiki/8b/10b_encoding) and it's exactly what USB uses historically.

Recent standard revision (USB 3.1 Gen 2, as well as USB 3.2 Gen 2x2) switch to a more efficient 128b/132b encoding (https://en.wikipedia.org/wiki/64b/66b_encoding), with ~3% encoding overhead rather than the historical 25.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#43
post #27

Earlier quoted context omitted.

> But the cables should be marked clearly... How about by using different ports? Imagine if instead of playing whack a mole with 4 usb-c ports on my laptop, 2 usb c ports on my monitor and a bag of cables, I could plug a cable that fits into the port it fits into?

> How about by using different ports? That would just be worse: the port being backwards compatible is a feature, being able to plug a 5Gbps device into a 20G-capable-port is a good thing, so is being able to plug a self-powered device into a PD-capable port. The issue is the difficulty of matching the cable with the device (and port) to ensure the upper bounds match. Obviously you could get the highest-rated cables…

> That would just be worse

I disagree. In my cable/charger box I have 4 USB-c chargers with 4 USB-c cables, and they're not interchangeable for all intents and purposes. I've ended up sharpieing what device they belong to rather than reading the specs printed on the back of the charger, because otherwise I end up trickle charging devices (and thankfully I don't use a USB c dock, or I would be in all sorts of hurt.

> The issue is the difficulty of matching the cable with the device (and port) to ensure the upper bounds match.

If that were the only problem then sure I would agree that things are worse, however in the real world manufacturers ship both devices and cables that are missing features, underperform, and are labelled as "USB 3"

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#44
post #11
post #6

USB went from being the universal bus, to just being the universal connector. There are never any guarantees that your device (or cable!) actually supports the operation you’re trying

I'm fine with devices offering different capabilities. But the cables should be marked clearly... I have one of the chinese drawing tablets, which has a convoluted "to USB-C" adapter. Apparently you can also drive it with USB-C directly, however only a manufacturer-provided cable (supershort) fits the port. Noone know what cable you can use alternately...

Huion? I've heard sanded down (so they fit in the port) USB C cables that support DP output works.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#45
post #9

Earlier quoted context omitted.

Just to add for clarity, b is used for bits and B for bytes. Though they are often mixed up. (... and a byte is not always 8 bits)

I believe the byte changed its meaning like many words did in the past. To a lot of younger developers a byte is synonymous with an octet.

I just had to google "is byte always 8 bits" so see that in historical context it wasn't always the case.

But probably for all practical purposes in modern era, we can safely assume it's always 8 bits.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#46

Earlier quoted context omitted.

Bits to bytes means dividing by 8.

Unless you are a disk drive vendor, in which case you insist it's 10.

Why? Assuming a byte being 10 bits instead of 8 bits would actually make the drive capacity lower in terms of bytes (of course not physically but for marketing), which a vendor probably doesn't want.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#47
post #2

My initial suspicion would be the user used bad cables. There's many cables that say they're capable of a speed when they are not in fact capable.

Why bother reading the article when you can just slam out hot takes?

> Cables used included a certified Thunderbolt 4 model, and the USB-C (data) cables provided with the cases. Again, each was verified by establishing SuperSpeed+ 10 Gb/s connections to an Intel Mac.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#48

The inability of the USB standards body to stick to a versioning scheme beggars belief: what in the world could "USB 3.1 Gen 2" possibly mean? Versions are free, why not simply name it "USB 3.2" and make the next one 3.3? "Gen 2" strikes me as the "Essay FINAL (final version 2).docx" of standards revisions.

> what in the world could "USB 3.1 Gen 2" possibly mean? Versions are free, why not simply name it "USB 3.2" and make the next one 3.3? USB 3.1 Gen 1 is the straight rebranding of USB 3.0, USB 3.1 Gen 2 is the "original" 3.1, which is 3.0 updated to a 10Gbps signalling rate (from 5), and a more efficient encoding (128/132, versus 8/10). But wait, there's worse! USB 3.2 Gen 1 is the same thing as USB 3.1 Gen 1 USB 3.2…

> USB 3.1 Gen 1 is the straight rebranding of USB 3.0

Why? To solve what exactly? In a sane world, it'd be major.minor, with nothing appended at the end.

Allowing marketers to take over everything was such a terrible mistake.

At this point I myself just don't differentiate USB versions beyond 3.0. 2.0 is the slow one, 3.0 is the fast one, anything newer is "so fast I won't ever saturate this much bandwidth anyway". Thunderbolt also falls into the last category.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#49
post #11

Earlier quoted context omitted.

I'm fine with devices offering different capabilities. But the cables should be marked clearly... I have one of the chinese drawing tablets, which has a convoluted "to USB-C" adapter. Apparently you can also drive it with USB-C directly, however only a manufacturer-provided cable (supershort) fits the port. Noone know what cable you can use alternately...

Huion? I've heard sanded down (so they fit in the port) USB C cables that support DP output works.

yes. And unfortunately it seems that the "port" extenders you can buy don't support DP and after I bought a seemingly DP-capable cable of AMZ and sanded it down (it didn't work) I stopped.

Re: M1 Thunderbolt ports don’t fully support USB 3.1 Gen 2

#50
post #25

Earlier quoted context omitted.

Same thing happened with HDMI 2.1, all new features were defined as optional so everyone who only supports the 2.0 feature set can claim HDMI 2.1 compliance

There’s gotta be some lobbying or consulting firm hired by manufacturers that’s using the same strategy between the two standards. The consortiums don’t seem to realize that short-term profits are coming at their expense of their brand.

When you're the only game in town, brand doesn't matter so much.
Post reply on HN