this post was submitted on 09 Sep 2024
1594 points (97.4% liked)
Technology
59207 readers
4221 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
And that's the real issue with the USB spec, almost everything is optional. This would be fine if cables were largely interchangeable, but they're not.
What they should have are a handful of very well-defined tiers. Cables should maybe have three (basic, mid-range, high end), and ports can have a couple more.
The problem is that there are too many separate dimensions to define the tiers.
In terms of data signaling speed and latency, you have the basic generations of USB 1.x, 2.0, 3.x, and 4, with Thunderbolt 3 essentially being the same thing as USB4, and Thunderbolt 4 adding on some more minimum requirements.
On top of that, you have USB-PD, which is its own standard for power delivery, including how the devices conduct handshakes over a certified cable.
And then you have the standards for not just raw data speed, but also what other modes are supported, for information to be seamlessly tunneled through the cable and connection in a mode that carries signals other than the data signal spec for USB. Most famously, there's the DisplayPort Alt Mode for driving display data over a USB-C connection with a DP-compatible monitor. But there's also an analog audio mode so that the cable and port passes along analog data to or from microphones or speakers.
Each type of cable, too, carries different physical requirements, which also causes a challenge on how long the cable can be and still work properly. That's why a lot of the cables that support the latest and greatest data and power standards tend to be short. A longer cable might be useful, but could come at the sacrifice of not supporting certain types of functions. I personally have a long cable that supports USB-PD but can't carry thunderbolt data speeds or certain types of signals, but I like it because it's good for plugging in a charger when I'm not that close to an outlet. But I also know it's not a good cable for connecting my external SSD, which would be bottlenecked at USB 2.0 speeds.
So the tiers themselves aren't going to be well defined.
Right, which is why it's so important to define tiers.
For example:
You'd use the same cable for 1-3, and specialized cables for 4 and 5, and those cables would have special markings on the connector. Ports for 3-5 would have unique markings as well. Cables and ports can go beyond those specs if they want.
Just because you can break things into separate groups doesn't mean you should. The goal here shouldn't be to make things easier for manufacturers, but to make things easier for users.
Not to mention power-only cables to avoid the security issues associated with cables that permit data transfer.
"Power-only" meaning no data BEYOND the PD devices themselves because its actually a data protocol to negotiate the power output to the device.
It has to be optional to remain a "Universal" spec.
If it had more requirements, it would be more cumbersome to implement and device manufacturers would come up with completely different, completely incompatible cables and ports (a la Apple's lightning) that would cause you even more headaches.
"Universal" merely means devices with different capabilities can use the same interface. So you can use mice and keyboards (very low bandwidth needs) on the same port as a data hungry drive. That was the major innovation when USB took over for PS/2, parallel port, etc.
Manufacturers can still use low-end components on the client devices, the requirement would merely be that the ports in host devices and cables would meet some minimum specs to be able to meet USB certification. Instead of having a wide variety of possible configurations, force host devices into smaller niches so the marketing is clearer to customers. Devices would still negotiate voltages, data rates, etc as they do now, the only change would be forcing implementations into buckets.