Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

USB-C is a train-wreck for those of us who work in electronics design.

USB-C's chipset support isn't all that good, it seems like. With USB 3 type A, you pretty-much just run your USB lines to the ports on your CPU. Simple, straightforward. Manufacturers are happy to do it, because it's dirt cheap and requires nothing except the connectors and maybe some ESD protection.

USB-C is a different beast entirely. Just to use the USB 3 lanes, you need to put down a high-speed mux just to deal with both connector orientations.

Want to support USB Power delivery (transmitting or receiving)? That'll be another set of chips to put onto the board. Plus software to deal with the PD negotiation.

Want to support Displayport? That'll be _another_ mux chip. Plus more software to advertise the functionality.

The cables are also much harder to manufacture, and this is reflected in their average price after you chop off one or two outliers.

Is your item a USB host? A device? Does it accept or provide power over USB? Does it support Displayport? Thunderbolt? Analog audio? Something else entirely? There's no way to know from looking at the connector. And no standardized markings that I've ever seen.



I'm completely ok with it being complicated to design and cost 10 euros more if it delivers.

And despite all its flaws, USBC does. It's small. It's reversible. I can charge all my devices on it: my samsung tablet, my oneplus phone, my logitech mouse, my jabra headphones, my switch and my XPS 13 laptop, which I can also dock to my screen/ethernet. It's amazing.

So yes, I had to take the time to find the proper cable, and I bought a few before finding brands I can trust to work with all my machines... and not fry them.

It sucks, but it will improve with time, like it did with early USB and HDMI (too many people forgot how terrible THAT was). It already has, in fact, improved a lot, and it will keep it up.

Meanwhile, I have only one cable and one dongle in my bag that do everything. I don't even have to get them out most of the time.

This is imperfect. This needs fixing.

But this is better than what we had before. Way better.


There's also a middle-ground that would have made people happier across the spectrum. Standard power cable, for phone, laptop, etc. Standard data cable, for your ereader, camera. Standard video-audio cable.

I think it's a good principle to have that if the engineers suffer, that will run downhill on consumers too. I think every engineer can find examples of that.


I like plugging my laptop into the USB-C hub at home, and that giving me keyboard, mouse, display, ethernet and power without having to plug in multiple cables.


USB-C allows me to hook up my laptop with one cable. Your middle-ground standard wouldn't.


I probably misused the "across the spectrum" idiom. What I meant is that it would make developers much happier than USB-C and it would make consumers much happier than USB 3. My idea was that it's a more wholesome situation than content consumer and frustrated developer.


As a consumer I want one cable to do all of it. Sure, like anything else, it will be difficult and slow progress to get there. As developer you sould see it as challenge.


It's good that you know your ideal user-experience (developers are aware of it too), but the trade-offs will depend on what's happening on the developer's end, so dismissing developer difficulties is not conducive to a good consumer experience.

Developer difficulty is a symptom of a more systemic problem, and it will usually affect the end-user through: higher-cost, lower-reliability, accumulation of technical debt, and/or resource-inefficiency.


Not dismissing, I understand it is a hard problem. I'm simply saying that is the developer job to solve the issue.

Similar thing happen in web development, there are tons of device, screen size, javascript framework, browser, os, all come with its own quirks. Is it suck ? Yes it is but it is my job as as a competent developer to manage all those complexity and solve the issue. From the user prescriptive, all they need to know is the site is working with whatever device they use, that is the goal.


Yes, but because of "the suck" of web it's in some ways in a dismal state and that affects users. We can have only a small number of browsers that are well maintained; browsing is resource-intensive; web is extremely inaccessible to people with disabilities; web is notorious for security problems; fingerprinting can be seen as a side-effect of bad design; web requires a lot of man-hours to develop and maintain, like you mentioned; etc. The list seems endless.


Sure you I wish that the state is in whatever it is that I prefer but thats unrealistic. As developer you have to be ready with whatever state you are in.

Sure, If there are only small number of browser or all of my user is not disabled, I would prefer that and my job will be easier but that is not realistic.

I have to be ready with whatever situation I've been dealt with. As developer my job is to solve problem and manage complexity. As a developer dealing with complex and hard problem is given.

In the end is the developer job to handle those issue so that in the perspective of the user, everything just works.

If I can't do that then I'm a failed developer.


I can sympathize with wanting to solve as many problems as possible and as well as possible and to provide a great user experience; however, our ability as devs is necessarily limited and that should be accounted for. Both the developer and the user are in this together.


Good thing that developer/engineer are specifically trained for problem solving and managing complexity.


Where I work many people have a docking station with a USB-C plug and a power plug molded into one connector. One cable to plug in, can safety deliver more power than USB-C can alone. With a bit of work engineers could have standardized an expandable cable. You have your basic USB-c cable with one fast (display port?) lane, one usb-3 data lane, the - basic cable in the article, enough for phones and light use. Then the larger connector that can supply more power for laptops and has a few more high speed data lanes for more monitors. It is a bit of work to make the connector work for either mode, but it is a solvable problem.


What happens when you get a laptop with a slightly different port arrangement? Just throw out all the old docks? Seems like quite a solution from a manufacturer's perspective!


The reality is every time someone gets a new laptop they get a new docking station. Docking stations seem to last about 3 years. It is very nice when traveling to get to a remote office and hear "Joe is out this week, you can use his office - he even has a docking station that will fit your laptop". However it is questionable if his docking station will fit your laptop.

If connector N (usb-c or whatever) has enough bandwidth and a standard connector it would be really nice if we could give everybody that docking station. Even if we have to upgrade docking stations every few years, so long as I can mix and match I'd be happy.


And the manufacturers would have never agreed on which ones to use. Starting with the zoo of power connections out there.

It's a miracle I can charge my Dell XPS15 laptop using the work-provided Apple USB-C charger. Really.


It's just a question of regulation. I was under the impression, correct me if I'm wrong, that USB-C is the result of regulation as well.


Looking into it, it was more of a campaign. Letters of intent, etc. And it was only for mobile phone chargers.


I'm soon switching a lot of things to USB-C. What brands of cables would you recommend ?


I just use a MacBook charger and usb-c cable, even if i don't have any apple devices.

The reason is that I move a lot and forget my chargers one or twice a year in a customer office, a hotel or at the airport.

The MacBook pro charger is very expensive, but charges everything I have and I can buy it pretty much everywhere, including at the last minute in an airport.

It's also rated "best cable on the planet" by Nathan K: https://docs.google.com/spreadsheets/d/1vnpEXfo2HCGADdd9G2x9...

Any cable recommended by Benson Leung or Nathan K will do, anyway.

A good compilation of those: https://www.reddit.com/r/GooglePixel/wiki/officialguide/usbc...


Anker. They're consistently reliable, and accessories are their whole business, so a problem would hurt their reputation a lot more than one of the big hardware companies.


Well, if you look at the spreadsheet linked below https://docs.google.com/spreadsheets/d/1vnpEXfo2HCGADdd9G2x9... Anker did have one model of cable that was recalled because it was dangerous :)


Another vote for Anker, they're consistently better quality than the other "random character name" brands found on Amazon.


I cast another vote for Anker.

Also, for USB-C to USB-B, DJ Tech Tools' Chroma Cables [0] are very good.

[0] https://store.djtechtools.com/products/chroma-cables-usb-c


something with Kevlar in it like powerline.


What's worse, while there are spec sheets with examples for the mux chips, good luck finding a datasheet with a full example including USB-C PD in source and sink capability, DisplayPort, Thunderbolt and "classic" USB. And don't get me started on Thunderbolt controllers themselves, Intel doesn't even release datasheets for these.

I get that Intel may want to prevent people selling Thunderbolt stuff without certification etc. but this shitty behavior really sucks for advanced tinkerers willing to get their hands dirty on some modern technology.

If someone does have an application example that includes all necessary chips including an USB3 controller, a Thunderbolt controller, a MUX chip for DisplayPort and a decent PD controller supporting source and sink operation mode, I'd be happy about any hints.

Oh and if someone from the Raspberry Pi foundation reads this, please for the love of everything that's holy update the Compute Module and expose PCI-E there!


Why should customers care about making electronics designers happy?

Customers have wanted to charge, transfer data, and transfer display information on one cable. That’s what we want, and you can see that many folks are willing to pay for it.

Everything dealing with electronics is complicated and expensive until one day it isn’t.


One could see this as a push to incentivize the development of a very configurable analog front end for device to device communication. If it were intentional, that is.


Standardized markings to indicate capabilities would be a big upgrade from the status quo.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: