Fixing an Arduino Nano's broken USB interface
Just a quick post for anyone who's had problems with v3.0 Arduino Nano's USB not working 100% of the time.
Recently we've been having problems with the connection between opensign and spacebot, which works by piping /dev/ttyUSB0 from another machine over SSH to spacebot. Strangely the tty device would never appear, no matter how many times power to the sign was cycled or how many times the the Arduino reset button was pushed. dmesg had this to say:
[499762.880237] usb 1-3.1: new full-speed USB device number 28 using ehci-pci
[499763.288053] usb 1-3.1: device not accepting address 28, error -32
[499763.376242] usb 1-3.1: new full-speed USB device number 29 using ehci-pci
[499763.784097] usb 1-3.1: device not accepting address 29, error -32
[499763.784241] hub 1-3:1.0: unable to enumerate USB device on port 1
Investigation revealed this thread on the Raspberry Pi forums describing a similar problem. User achrn provided a potential solution: solder together pins 25 & 26 on the DS_FT232RL chip. This ties the TEST pin to GND, which on some v3.0 boards was mistakenly left floating. After solding these pins together on the board and reassembling the opensign, spacebot was again able to connect to it and report the sign's status on IRC and the web service!