When the Nexus 5X and 6P first launched, they were the first major smartphones to include a USB-C connector. That meant new cables and accessories needed to be produced, but not all of them were USB-C compliant cables. Some drew more power than they ought to have done, thanks to the use of lower-spec resistors. Here at Mobile Fun, we test all of our USB-C to USB-A cables to ensure that they meet the standard and they’re safe to use.
Here’s how we do that testing.
We connect a USB-C device (such as the Nexus 5X) to the USB-A port of a laptop, using the cable that we’re currently testing. We check the power draw time using the Android Development Bridge (ADB), which allows us to run commands on our Nexus 5X remotely and see the results. The command we use for the 5X is this:
adb shell "cat /sys/bus/i2c/drivers/fusb301/*/fclientcur"
We can also run the command directly on the phone, which is just:
cat /sys/bus/i2c/drivers/fusb301/*/fclientcur
If we see that the cable is drawing more power than is safe (for example, we get a reading of 3000 when connected to a laptop’s USB port), then we know the cable doesn’t meet the USB-C standards and isn’t suitable for sale. In contrast, a reading of 0 or 1500 would be expected from a USB-C compliant cable.
The idea is the same for the Nexus 6P, although the command is different. For ADB, we use:
adb shell "cat /sys/class/typec/typec_device/current_detect"
On the phone itself, we use:
cat /sys/class/typec/typec_device/current_detect
If we get a value of 0 or 1, we’re happy; if we get a value of 2, it means the phone is charging at 3A, which is not suitable for a USB-A cable attached to a laptop’s port.
Using this method, we can ensure we only stock USB-C compliant cables. Interesting stuff, huh? You can run the same tests with ADB installed, or shell access on our Nexus 5X or 6P. Let us know what you find!
Need a safe USB-C cable? Check the link below!
Any questions? Let us know in the comments!