Arduino Nano -- cute, but sensitive about USB cables
I just got an Arduino
Nano. Cute little thing -- I'm looking forward to
using it in portable projects. But I had one problem when first plugging
it in. It was getting power just fine, and blinking its LED -- but it
wasn't showing up as a USB serial port in Linux. dmesg said things like:
usb 1-3.4: new full speed USB device number 7 using ehci_hcd usb 1-3.4: device descriptor read/64, error -32 usb 1-3.4: device descriptor read/64, error -32with several different device numbers each time, and an occasional
unable to enumerate USB device on port 4
thrown in.
A web search found a few other people seeing this problem on Linux or Linux-based devices, with some people saying that pressing the RESET button multiple times helps. It didn't for me. What solved the problem for me was switching cables. The mini-USB cable I'd been using -- which has worked fine for other purposes, including programming other Arduinos through an FTDI Friend -- apparently was missing something the Nano needs for downloading. With a different cable, dmesg showed a much more civilized
usb 1-3.4: new full speed USB device number 20 using ehci_hcd ftdi_sio 1-3.4:1.0: FTDI USB Serial Device converter detected usb 1-3.4: Detected FT232RL usb 1-3.4: Number of endpoints 2 usb 1-3.4: Endpoint 1 MaxPacketSize 64 usb 1-3.4: Endpoint 2 MaxPacketSize 64 usb 1-3.4: Setting MaxPacketSize 64 usb 1-3.4: FTDI USB Serial Device converter now attached to ttyUSB0
What was wrong with the cable? I did some testing with a multimeter versus a pinout diagram. Didn't get a definitive answer, but I did find that on the cable that doesn't work for the Nano, it was hard to get a solid connection on the D- (#2) pin inside the Type A connector. But since that's the connector that goes to the computer end (in my case, a powered hub), if it wasn't making good contact, I would expect it to show up everywhere, not just with the Nano. Maybe the Nano is more sensitive to a good solid D- connection than other devices.
I'm not really convinced. But Arduino's Troubleshooting Guide suggests: "Try a different USB cable; sometimes they don't work." So I guess they don't know what's special about some cables either.
So if your Arduino Nano doesn't initially connect properly, don't panic. Try a few different cables (everybody has about a zillion mini-USB cables lying around, right? If not, here, have five of mine). The Nano is happily composing random chiptunes as I write this.
[ 16:24 Feb 16, 2012 More hardware | permalink to this entry | ]