I tried the half day to get my Duemilanove to work as Keyboard.
- Arduino IDE 1.0.1
- start with http://www.practicalarduino.com/projects/virtual-usb-keyboard
- library from http://code.google.com/p/vusb-for-arduino/downloads/list (v0005)
Image of testboard attached.
Sketch compiles fine, but when connected to a computer (tried Linux and WinXP) the device is not seen as Keyboard but “unknown”. Linux gives following as error:
[ 2349.890021] usb 6-1: new low speed USB device using uhci_hcd and address 50 [ 2355.022512] usb 6-1: device descriptor read/64, error -71 [ 2355.250018] usb 6-1: device descriptor read/64, error -71 [ 2355.480018] usb 6-1: new low speed USB device using uhci_hcd and address 51 [ 2355.621259] usb 6-1: device descriptor read/64, error -71 [ 2355.850014] usb 6-1: device descriptor read/64, error -71 [ 2356.082513] usb 6-1: new low speed USB device using uhci_hcd and address 52 [ 2356.500030] usb 6-1: device not accepting address 52, error -71 [ 2356.620016] usb 6-1: new low speed USB device using uhci_hcd and address 53 [ 2357.052508] usb 6-1: device not accepting address 53, error -71 [ 2357.052518] hub 6-0:1.0: unable to enumerate USB device on port 1
So according to Project Log : Arduino USB - ProjectLogArduinoUSB this means that there is not real communication and just the pullup works (see top of page, same error with just the Strip board).
There is also something in the ArduinoNotes.txt which confused me much:
* Note: The pins we use on the PCB (not protoboard) hardware shield are: INT0 == PD2 == IC Pin 4 == Arduino Digital Pin 2 == D+ ---- == PD4 == -------- == Arduino Digital Pin 4 == D- ---- == PD5 == -------- == Arduino Digital Pin 5 == pull-up
But on Project Log : Arduino USB - ProjectLogArduinoUSB the PCB shows 3, 5 and 6. I used the Ports noted in ArduinoNotes.txt which are also in usbconfig.h
So I think I have a problem with the assembly, however I have resembled it 4 times from scratch now and have no idea what to check anymore, I double and triple checked the connections between USB and board, tested several demo PDEs etc. Even tested it on a Diecemila.
Any more ideas? The last posts about that are at least a year old, maybe something is broken?