Unfortunately, the only sure-fire way of testing if a cable is spec-compliant is to use a dedicated device for testing - something like Advanced Cable Tester, which I believe Benson uses nowadays in his tests.
If you aren't sure if a cable works, check if it's USB-IF certified - this is the best way of knowing if a cable is valid beforehand! The full list is available here and is updated regularly: USB Type-C Cable Certifications.
If it's not USB-IF certified, check if someone (such as Benson) tested it and published the results before.
All that said, here's why it can be difficult to test a cable.
When it comes to USB Type-C to Type-A cables, there are two things to keep in mind:
- Does it have the 56k pull-up?
- Is the cable resistance low enough for it to safely handle the maximum power it can support?
- Is it wired correctly?
The first is (sort-of) easy - as Ali Chen pointed out, you can measure the pull-up resistance and determine if a cable is safe.
The latter two, however, may not be straightforward.
If you're sure the cable uses a correct 56k pull-up resistor, you may be able to check if the voltage drops when the cable is in use, connected to a compliant charger and under load. If it's below 4.5V, throw it away immediately. If it's above that, but below 4.8V under normal load, you don't need to throw it away, but you probably should.
Checking if a cable is wired correctly is a whole different story. An incorrectly wired cable can kill your device - exactly what happened to Benson with a really bad cable. There are many mistakes the manufacturer can make and it's difficult to determine if everything works correctly without a specialized device.
All this, with the exception of 56k pull-up which is legacy cable specific, goes for USB Type-C to Type-C cables as well - they too can be incorrectly wired and the resistance requirements are more strict here, as these cables have to support at least 60W - or, in some cases, for emarked cables, up to 100W - a huge jump compared to legacy USB which only needed to support 2.5W - 15W.
Finally, with all this in mind, an app like Ampere is not a good enough metric of whether a cable is valid - even if we disregard the fact a bad cable can be unsafe to plug into your phone for even a minute, a phone charging is not a good measure of how good a cable is:
- If the cable doesn't have the 56k resistor, the phone may still charge - it will try to draw more power from the charger.
- On some chargers, this will actually work. Many chargers can take a high load, either by design or the manufacturer didn't take the correct safety precautions (a charger should shut down in some form when overloaded, because it's unsafe to run).
- On some chargers, this will cause a voltage drop, but the phone may still charge slowly - which will look a lot like the cable is correct while in reality the charger is overloaded. Different phones are more or less tolerant to lower voltages.
- Not all phones will actually try to draw that much current, even with the 56k resistor in place.
- Ampere only tries to estimate the load based on the difference in charge for a given period of time. For example, a device that's consuming a lot of power at the moment will appear to be charging slowly in Ampere.
2Supposedly, only cables that have been tested to prove compliance with the specs can carry the USB Type-C™ and USB-C™ trademarks. The key may be to not look for inexpensive cables, but to stick with cables from major cable and peripheral manufacturers whose reputation relies on quality. – fixer1234 – 2016-07-14T18:20:06.323
1Sarcastic Answer: Order hundreds of different cables and perform test to verify they comply with the standad. Serious Answer: Read hundreds of amazon reviews by a Google Engineer that did exactly that. Of course you know this already, figured I would provide, a semi-serious comment for fun. – Ramhound – 2016-07-14T18:56:22.113
@Ramhound yes, this is plausible. However said google engineer has written software that works on hardware google designed and they essentially support no matter what, which is a luxury I do not have. On the other hand, my phone might just draw a sensible current, which means I can use whatever cable's on hand. In future one might come across a random cable, and being able to ascertain early in the charge process that its good would be nice. – Journeyman Geek – 2016-07-14T20:38:15.563
Is the software open source? – Ramhound – 2016-07-14T21:32:16.737
Worth pointing out that any cable Leung tested is safe for any device. – Ramhound – 2016-07-14T21:48:15.107
@Ramhound Except the cable that wrecked all his equipment... He tested that one, and it's definitely not safe. – Michael Frank – 2016-07-14T21:48:54.567
@MichaelFrank I meant any cable he tested and verified is within the 3.1 type c specification, my apologizes for a confusing statement – Ramhound – 2016-07-14T21:52:05.763
1@Ramhound there's been cases where they've changed the design of a 'good' cable after review and vice versa. On the other hand, I can't say I've heard of this happening with non nexus phones yet. Trust but verify sounds like a good idea, even with known good cables. – Journeyman Geek – 2016-07-15T00:17:48.340
1@fixer1234 Because people making dodgy cables overseas would never dare to violate trade mark laws... – David C. Bishop – 2016-12-21T07:15:45.637
1@DavidC.Bishop, correct. And you're also not allowed to lie on the Internet. :-) – fixer1234 – 2016-12-21T07:20:00.317