Originally posted April 25, 2017 by Tommy Goode on the Tiny Cables Medium publication.
Bad cables can be really bad. Google engineer Benson Leung learned that the hard way. Mr. Leung took it upon himself to purchase, test, and review a series of USB Type-C cables and accessories on Amazon, where he found a number of cables that were out-of-spec. Not only that, he found a cable that was so bad that it fried his laptop and test devices. His reviews have caused multiple manufacturers to withdraw and re-design products on sale on Amazon, and likely contributed to Amazon banning manufacturers from selling out-of-spec cables. To me, he is Batman, ridding Gotham (Amazon) of evil-doers and miscreants (poorly-designed cables that could harm innocent devices).
As we embarked on the Tiny Cables journey, I kept Benson’s reviews in mind. I’m the technical half of the team, so I knew it would be my responsibility to make sure the cables we sell were high-quality and safe for our customers’ devices. One way I did that was by building BendyBot to test physical durability. However, Benson’s findings showed me that I should check more than just bend tolerance. I needed to dig in and make sure the cables we’d be ordering followed the USB specifications.
The reason USB Type-C cables have the potential to be dangerous is because newer USB specifications allow them to carry up to 100 watts of power by sending 5A @ 20V over dedicated charging lines. Older USB specs — the ones most commonly used by Type-A and Type-B connectors — only allowed 1.5A @ 5V (though some chargers go up to ~3A @ 5V).
The main issue is not due to the increase in available power or the difference in current supplied, but in the variable charging voltage. Newer USB Power Delivery specs (mostly used over USB Type-C cables) allow the charging voltage to be negotiated from 0V all the way up to 20V. Benson found cables that would not properly reset the charging voltage to 0V after they were unplugged from a device. With these cables, if you plug in a high-draw device, then unplug it and plug in a lower-draw device, you could be supplying 20V to a device that isn’t equipped to handle it.
Additionally, USB Type-C cables designed for legacy port connection (such as USB Type-A or USB Micro-B) have to use specific resistors to signal certain things to connected devices.
When the USB Type-C plug is on the “source” side — the side delivering power — the cable must have a 5.1 kΩ pull-down resistor, which tells the source that the other side is a “sink”, or power consumer. (USB Type-C Spec 18.104.22.168.1)
When the USB Type-C plug is on the “sink” side — the side consuming power — the cable must have a 56 kΩ pull-up resistor, which tells the sink that only “Default USB Power” (500MA) is available. Benson found that some cables were using a different resistor value and “lying” to the sink — which risks the sink drawing too much current and overheating the power source. (USB Type-C Spec 22.214.171.124.2)
So, how do I make sure that the cables we order don’t have these issues? The first — and easiest — step is to check for certifications. The USB Implementor’s Forum (USB-IF) has a voluntary compliance program that manufacturers can use to validate their cables’ adherence to the appropriate specs. However, receiving a certification of compliance can be a lengthy and expensive process. In our case, we are ordering 2 USB Type-C cables that could be certified by the USB-IF — the third USB Type-C cable we’re going to sell has a Lightning connector, which is non-standard (more on that later). One of the cables has already received its certification, but the other has not. In order to validate the not-yet-certified cable, we had to go directly to the vendor.
The vendor checked with their engineer and confirmed that the correct resistor value (5.1 kΩ) was being used in the cable. As an added precaution, I will be double-checking the resistor value myself once the cables are received by our warehouse.
A small aside about Lightning cables: Apple’s Lightning connector is proprietary, and as such, it does not exist anywhere in the USB spec. My understanding is that this means the USB-IF would not test Lightning accessories. However, Apple has their own manufacturer certification program: MFi (Made for iPhone/iPad/iPod — yeah, I’ve no idea why they shortened it either). Our vendor’s manufacturer is on the MFi list, which is readily available on Apple’s website — once you sign an electronic NDA.
After extensive research, I am proud to say that we are ready to stand behind the quality of our cables. We have ensured that they follow the USB spec, so they will work with the widest range of devices possible and avoid causing any damage.
Please note that some concepts have been simplified for the sake of brevity.
Thank you so much to Benson Leung for his many write-ups, explanations, and reviews of USB Type-C accessories. His blog was incredibly helpful to me in this process.
- Benson Leung’s G+ blog — https://plus.google.com/+BensonLeung
- Chromium’s USB Type-C Cable and Adapter Tips and Tricks — https://sites.google.com/a/chromium.org/dev/chromium-os/cable-and-adapter-tips-and-tricks
- USB 3.1 spec — http://www.usb.org/developers/docs/