News for hackers. Stuff that matters.
Re:USB4 Specification by jayd16 on Tuesday September 03, 2019 @07:34PM (#20872468)
>Fundamentally, "one port and protocol to rule them all" is probably just a bad idea

I disagree. The situations are:

1)ports are the same, protocol match : works

2)ports are the same, protocol mismatch : won't work, some user confusion

3)ports are different, protocol match : could work but won't without an adapter

4)ports are different, protocol mismatch : won't work. Adapters might exist but those won't work either.

I'd much rather deal with situation 2 over 3 and 4. Display adapters already have situations where you can get adapters to cobble together DVI and VGA ports but still fail to get a proper connection, so its not really a fix anyway.

The USB foundation should just come up with better branding around what kinds of things a port supports. No reason we can't have a thunderbolt icon next on a USB port. Its strictly better than a new physical port, IMO.

Re:USB4 Specification by gumby on Tuesday September 03, 2019 @07:53PM (#20872593)
You forgot the case 5) ports match, some protocols match, port works at much reduced capability.

This is great for backwards compatibility, but can confuse users. You could have a TB3 drive attached to a TB3 computer by a USB cable with type C connectors that only operates at USB 2 speeds. It will silently fall back to a very slow transfer.

I don't know how the committee could have done much better though; this kind of fallback is important. Some mandated labeling would have helped a lot though.

Re:USB4 Specification by hazeii on Wednesday September 04, 2019 @02:41AM (#20874578)
Indeed, I've just had exactly this case with a high speed USB3 camera. Tested it on 2 PC's and a Pi4 both direct and via a USB3.1 hub and it just wouldn't deliver the theoretical frame rate. Finally turned out the 'premium' USB C cables we were using are actualy only USB2.

From pictures on Amazon [0], a lot of cables being advertised as Type C USB3 are actually missing the 'SS' labelling, despite being advertised as 'Superspeed' (i.e. 5Gbps) in the description.

[0] https://www.amazon.co.uk/Anker-PowerLine-Durability-Devices-... - in this case, it currently provides a link "There is a newer version of this item" which links to a USB2 version(!).

Re:USB4 Specification by pas on Wednesday September 04, 2019 @05:37AM (#20875473)
All of this is software UX problem. I plug something in that something should tell me what kind of connection it established, is it any good, etc. Try the fast ones opportunistically and tell me when it has to fall back. That's it. If it works I'll know anyway.

Even a simple micro-USB on phones needed a pop-up to select what functionality the user wants to activate (charging, file transfer, host mode, debugging).

The problem is not new, but most software makers are stubborn miscreants that hate good UX (simplicity, discoverability, accessibility / introspectability, extendability). They usually champion one aspect to the total detriment of the others - eg GNOME3, phone OSes.

Re:USB4 Specification by magduf on Wednesday September 04, 2019 @01:13PM (#20879257)
The problem is they think users are too stupid to understand that much information and detail. And for the most part, they're right: users are very stupid.
Re:USB4 Specification by fanf2 on Thursday September 05, 2019 @03:25AM (#20884579)
Hiding information from them won’t help them to become less confused.
Re:USB4 Specification by magduf on Thursday September 05, 2019 @08:32AM (#20885964)
Tell that to the UI "experts".
Re:USB4 Specification by bobbyi_settv on Tuesday September 03, 2019 @10:15PM (#20873383)
> It will silently fall back to a very slow transfer.

Why would it be silent? The computer would hopefully show a small notification that the transfer is happening slower than it would with a newer cable

Re:USB4 Specification by gumby on Wednesday September 04, 2019 @01:37AM (#20874313)
With the older cable it wouldn't even know what the other side could be capable of.
Re:USB4 Specification by zaarn on Wednesday September 04, 2019 @02:49AM (#20874613)
That's actually untrue because for USB2 vs USB3 my computers already showed notifications that the USB2 cable is slower than necessary. The computer KNOWS the other device, it has a driver for it, and the driver can say "this device is capable of more".
Re:USB4 Specification by labawi on Wednesday September 04, 2019 @04:18AM (#20875066)
Sometimes yes, other times it might be possible in another way, but a lot of drivers are generic and don't have an exhaustive list of all devices in existence. Devices only need to be identified as a certain (generic) type.
Re:USB4 Specification by zaarn on Wednesday September 04, 2019 @04:27AM (#20875110)
It's still certainly possible for a device to report it's capabilities and plenty of devices seem to correctly do it already.
Re:USB4 Specification by cesarb on Wednesday September 04, 2019 @08:21AM (#20876419)
It would know, the wSpeedsSupported field on the device tells the host which speeds the device is capable of.
Re:USB4 Specification by em-bee on Wednesday September 04, 2019 @08:53AM (#20876689)
but it could at least report the capacity of the cable. that's still useful when you get a badly advertised cable that you thought could do more, or worse, got a fake cable.
Re:USB4 Specification by sroussey on Wednesday September 04, 2019 @01:11AM (#20874177)
This. Apple does something similar if you try to pull too much power
Re:USB4 Specification by gumby on Wednesday September 04, 2019 @01:37AM (#20874311)
Only in the power case -- how can it know that you didn't intend to use USB 1? It wouldn't be able to tell what the other side is capable of in that case, hence the fallback.
Re:USB4 Specification by bonzini on Wednesday September 04, 2019 @02:45AM (#20874597)
It could know via USB descriptors, and match the device capabilities from the descriptors against what the cable allows.
Re:USB4 Specification by egypturnash on Wednesday September 04, 2019 @01:27AM (#20874256)
Does any computer actually do such a thing?
Re:USB4 Specification by jboles on Wednesday September 04, 2019 @01:58AM (#20874406)
Windows 7 did for USB2 devices plugged into a USB1 port: https://www.makeuseof.com/tag/usb-speederror/

If the computer can identify the device’s capabilities (using some kind of bus command, I’m not very familiar with the USB protocol) separately from speed testing the cable+device combination, no reason why it couldn’t work for USB 2/3/4.

Of course, this approach relies on the device accurately reporting its capabilities, which may not be the case for the more cheap-and-cheerful gadgets.

Re:USB4 Specification by Kipters on Wednesday September 04, 2019 @03:48AM (#20874904)
Windows 8 (and perhaps 10, can't remember) alerted me when I used a USB 3 thumbdrive in a USB 2 port
Re:USB4 Specification by organsnyder on Wednesday September 04, 2019 @09:28AM (#20876981)
Windows 10 shows a notification whenever my USB-C portable monitor is using USB video (via the monitor's DisplayLink chip) rather than DisplayPort.
Re:USB4 Specification by k__ on Tuesday September 03, 2019 @07:57PM (#20872621)
Just try to get some quick charge with third-party equipment going these days. It's a lottery.
Re:USB4 Specification by Stratoscope on Tuesday September 03, 2019 @08:26PM (#20872776)
> No reason we can't have a thunderbolt icon next on a USB port.

In fact, my ThinkPad X1 Yoga has two USB-C ports with Thunderbolt icons next to them. They support USB 3.1 Type-C Gen 2 with Thunderbolt 3 (including DisplayPort).

Re:USB4 Specification by suvelx on Wednesday September 04, 2019 @04:16AM (#20875050)
How many DisplayPort channels do each ports support?

How many PCI-E lanes does each port get?

Do the ports share the channels/lanes?

Do they both support Power Delivery? How many Watts does the thinkpad need to charge?

Even with 'clear' labelling, it can still be a crapshot as to the full capabilities of the device.

Re:USB4 Specification by Stratoscope on Wednesday September 04, 2019 @04:59AM (#20875290)
Well, this is where we get the phrase "Plug and Pray", isn't it! ;-)

Right now I have an Uptab Mini-DisplayPort adapter in one port, and a StarTech full size DisplayPort adapter in the other. The Uptab adapter has its own USB-C input for power, so that is where the power supply is connected.

The mini and full size DisplayPorts are each connected to a 4K monitor, and I use all three - the two externals and the ThinkPad's WQHD. This all works great when the Uptab is in the rearmost USB-C port and the StarTech is in the other port. But if I switch the two around, one of the monitors goes into low resolution mode!

This kludgy configuration is just because these were the adapters I had on hand. There are a number of adapters that plug into a USB-C port and give you two mini-DisplayPort outputs - I have been meaning to try one out.

Re:USB4 Specification by flyingfences on Wednesday September 04, 2019 @08:43AM (#20876608)
> They support USB 3.1 Type-C Gen 2 with Thunderbolt 3 (including DisplayPort)

And therein lies the problem.

Used to be, we could call a USB port a USB port. Everybody knew that if the computer had the port, it could work with the peripheral; if the computer didn't have the port, it would not work with the peripheral. If the peripheral required different functionality then it required a different port that was equally straightforward and obvious.

Now, it's all supposed to run over USB - at least, over some USB. Consumers go out and buy a device and then are confused when it doesn't work. They know their computer has a USB port, but that's not enough. The port no longer represents a definite protocol, or even a definite power supply capacity. Are they supposed to check to see whether each of their USB ports says "USB 3.1 Type-C Gen 2 with Thunderbolt 3 (including DisplayPort)" next to it (which it doesn't)?

Re:USB4 Specification by chrisweekly on Tuesday September 03, 2019 @07:49PM (#20872572)
Pardon my ignorance, but isn't (2) really dangerous when it comes to things like power delivery?
Re:USB4 Specification by mortenjorck on Tuesday September 03, 2019 @09:10PM (#20873064)
It would be if the different protocols didn’t have the same baseline power specifications and require negotiation between controllers to supply anything else. This is generally the case across everything sharing the type-C connector, though occasionally you will see a company make the terrible decision of trying to pass off their out-of-spec implementation as a “proprietary port,” as Nintendo did with the Switch.
Re:USB4 Specification by rkangel on Wednesday September 04, 2019 @11:14AM (#20877916)
Is there something special about the USB-C connector on the Switch?
Re:USB4 Specification by Miraste on Wednesday September 04, 2019 @05:05PM (#20881408)
Re:USB4 Specification by Dylan16807 on Friday September 13, 2019 @06:38AM (#20960825)
There were some slightly off-spec things in current draw but none of that is relevant to the article you linked.

That pin is supposed to use data signals of less than two volts. The nyko charger uses nine volts. The switch has no over-voltage protection on that pin, and breaks at more than six volts.

The part about a slightly thinner plug isn't relevant at all.

Re:USB4 Specification by spancap on Tuesday September 03, 2019 @08:04PM (#20872667)
(2) has killed people, such as the patient who was electrocuted in 1986 due to an IV pump power supply using the same connector as EKG leads. (Casey, "Set Phasers On Stun" 2nd edition, pp.177-180)
Re:USB4 Specification by hannasanarion on Tuesday September 03, 2019 @11:39PM (#20873797)
USB doesn't automatically deliver maximum power to whatever is plugged into it. The client device has to ask for it. The default 5v 500mA isn't going to hurt anybody.
Re:USB4 Specification by gsich on Wednesday September 04, 2019 @08:33AM (#20876524)
Neither is 5V 2A, but that's more to skin resistance that's really high at such low voltages.
Re:USB4 Specification by magduf on Wednesday September 04, 2019 @01:17PM (#20879305)
5V at 1000A is completely safe too. The only thing that matters with electrical safety is voltage, and anything under 50V is generally safe for humans, all because of skin resistance.
Re:USB4 Specification by izacus on Wednesday September 04, 2019 @04:09AM (#20875012)
No, because power delivery is negotiated from a safe USB1 type base levels. If the device doesn't request it, it won't get delivered.

The only outliers are moronic implementations like Nintendo, where they ask for capabilities, receive the charger capabilities and then just start pulling power at hardcoded levels even if the charger doesn't specify it supports those power levels. But there's nothing you can do against that - you even with different port shape, a broken implementation can still fry your device.

Re:USB4 Specification by chrisweekly on Friday September 06, 2019 @08:59AM (#20895190)
You started with "no" (ie, it's safe)... then ended with "can still fry your device".

I infer your point: the shape of the connector in theory is decoupled from risks in power delivery... but in reality the prevalence of cheap knockoffs and "moronic implementations" makes me question the wisdom of combining [potentially dangerous levels of] power delivery with data transfer.

Re:USB4 Specification by sschueller on Wednesday September 04, 2019 @01:29PM (#20879428)
Didn't the charger from the Pixel not implement this correctly and send full power down the line even if a device can't handle it?
Re:USB4 Specification by ProZsolt on Thursday September 05, 2019 @03:45AM (#20884665)
The Pixel charger was fine AFAIK. The Nexus 5x and 6P had rogue chargers
Re:USB4 Specification by hunter2_ on Tuesday September 03, 2019 @08:00PM (#20872636)
There's nothing dangerous about drawing less current than is available, or a device trying to upgrade voltage and/or current from a base level (5V 500mA) but being disappointed when the source can't oblige.
Re:USB4 Specification by thaumasiotes on Tuesday September 03, 2019 @11:43PM (#20873821)
> 4)ports are different, protocol mismatch : won't work. Adapters might exist but those won't work either.

Why would adapters necessarily not work in this case? It looks like you're claiming that translating one protocol to another is always impossible, but that can't actually be the idea... right?

Re:USB4 Specification by johncolanduoni on Wednesday September 04, 2019 @02:01AM (#20874418)
Most of these kind of adapters (usb-c/usb-a, dvi-d/hdmi) don’t actually do any protocol conversion, they merely take advantage of fallback/cross-compatibility that the endpoints actually implement and rearrange some wires. Adapter that need to do something more complicated (like dvi-d to vga) have to be powered. And in some cases like USB 3 to thunderbolt or DisplayPort it’s simply impossible for the host controller to provide the necessary IO. Thunderbolt expects to provide a full PCIe interface to the CPU that doesn’t fit within how USB 3 controllers communicate with your CPU. DisplayPort requires a connection to your graphics adapter, which is also not under the USB 3 controller’s purview.
Re:USB4 Specification by jayd16 on Wednesday September 04, 2019 @12:03AM (#20873899)
That would be case 3...
Re:USB4 Specification by thaumasiotes on Wednesday September 04, 2019 @12:08AM (#20873919)
No, in case 3 there's a protocol match. In case 4 there isn't. I'm asking why an adapter is supposedly unable to deal with a protocol mismatch. Dealing with mismatch is the whole idea of an "adapter".
Re:USB4 Specification by jayd16 on Wednesday September 04, 2019 @03:47AM (#20874899)
If an adapter exists we can categorize it as case 3 for the sake of this discussion. I think you're needlessly hung up on the word protocol when that really doesn't matter.
Re:USB4 Specification by thaumasiotes on Wednesday September 04, 2019 @02:08PM (#20879846)
> I think you're needlessly hung up on the word protocol when that really doesn't matter.

In that case, you've described two situations:

1. Ports are the same.

2. Ports are different.

This doesn't seem like a particularly fruitful analysis.

Re:USB4 Specification by infogulch on Wednesday September 04, 2019 @12:33AM (#20874017)
"could work but won't without an adapter"

The adapter is the downside. And there's no guarantee that the perfectly suitable adapter actually exists.

Re:USB4 Specification by unixhero on Wednesday September 04, 2019 @01:34AM (#20874293)
Isn't that too late. They aren't going to publish any new specs after this.