There are few situations where “check your cables” wouldn’t be good advice. Rock climbing? Absolutely. Brake cables? Don’t want those to fail. Going sailing? Yes, though perhaps add “untangle” to that description. When you’re interfacing with development boards, the consequences of a bad cable aren’t generally as severe as the other examples, but problems here can be quite frustrating nonetheless.
But how do you if your cable is a problem? Swapping them out with a known good connection is one way, but this still seems like a bit of a lark, since who’s to say the next one isn’t bad as well? Here are two devices that will give you actual performance data:
Limepulse USB Cable Checker
For a complete USB checking solution, look no further than the USB Cable Checker from Limepulse. This small device lets you plug a USB-A or Type-C in one side, then plug the other Micro-B, Mini-B, or Type-C connector into the other. A series of LEDs then confirm the line connections for each A/B/C combination, allowing you to be confident that there’s a path for data and power transmission. Additionally, if you want to check the resistance between each ground and voltage connector in your cable, there are built-in pads that allow you to hook up a multimeter with alligator clips.
Fried Circuits USB Tester 2.0
Another option seen here is the Friedcircuits USB tester. While it doesn’t give you the same kind of line-by-line detail needed to fully test USB Type-C connectors, if you need to monitor power flow through a cable, this does the job nicely. Electricity flows in via a Micro-USB connection, then exits the device via USB-A, allowing you to measure power output to whatever device you’re using. While this could be useful to measure current consumption from a project, you could also test each cable you have to see how each performs.
Experience is a Tough Teacher
On a personal note, after working with Arduino boards that use full-sized “B” USB connectors, as well as a Nano that used a Mini connector, I decided to experiment with a WeMos D1 mini ESP8266 development board that used a USB micro connector. Try as I might, I couldn’t get it to recognize as a serial device, even after using various ports, a second cable (or so I thought, though most do look the same), and even another computer and a second WeMos. After some frustration, a friend finally tried his cable, which worked perfectly on his computer and mine.
So what’s the lesson here? If something’s not working, a lot of the time it’s something very simple—like a cable. After I got home, I tried yet another cable, which worked, and also purchased what seems to be a high-quality cable in a distinct red color. While it’s nice to have this as a reference, if you truly care about having quality cables, the type of equipment here would be an excellent option to have at your disposal.
On the other hand, if you like to creatively use and/or cut off your USB connections, be sure to see my post about the USB-Helper that can individually cut off different lines. I’ve also previously written about ways to creatively break out the connections, and also some of the more “exotic” solutions.