this post was submitted on 09 Sep 2024
1595 points (97.4% liked)

Technology

60062 readers
3572 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 87 points 3 months ago (1 children)

LOL, yeah, manufacturers don't follow this at all.

[–] [email protected] 18 points 3 months ago (1 children)

Last I looked, these (and the "blue plastic for USB 3" convention) weren't mandated by the spec. So it's not that they're violating the spec, but that they're optional.

[–] sugar_in_your_tea 17 points 3 months ago (2 children)

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.

[–] [email protected] 5 points 3 months ago (2 children)

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.

[–] sugar_in_your_tea 7 points 3 months ago* (last edited 3 months ago)

Right, which is why it's so important to define tiers.

For example:

  1. basic support (cheap) - gen 2 speeds, charging at 5v 500ma, etc; for peripherals and whatnot
  2. high speed (fast enough) - 5gbps speeds, charging at 5v 500ma, etc; USB drives, regular laptop/desktop ports, etc
  3. fast charging (general purpose) - 5gbps data transfer, fast charging up to 45W (or maybe a little lower) at various voltages; phones, special laptop/desktop ports
  4. specialized PD - gen 2 speeds (faster is optional), fast charging up to 240W at various voltages
  5. specialized data - 40gbps data transfer, charging at 5v 500ma (faster is optional), display out

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.

[–] [email protected] 6 points 3 months ago (1 children)

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.

Not to mention power-only cables to avoid the security issues associated with cables that permit data transfer.

[–] fruitycoder 3 points 3 months ago

"Power-only" meaning no data BEYOND the PD devices themselves because its actually a data protocol to negotiate the power output to the device.

[–] [email protected] 0 points 3 months ago* (last edited 3 months ago) (1 children)

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.

[–] sugar_in_your_tea 3 points 3 months ago

"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.