I want my Arduino to impersonate USB devices. The built-in USB connector can't be used for that, so you've gotta wire up a second one for this ruse. This isn't terribly well documented anywhere, but several folks have pulled it off, so I know it's possible.
My parts list has grown over a few iterations.
* Arduino Duemilanove (Already have)
* Jumper Wire (Already have)
* USB A-to-B "printer" cable (Already have)
* PCB-mount USB "B" receptacle. (First order)
* Zener Diode 500mW 3.6V (MCM:1N5227B) (First order)
* 68 Ohm and 2k2 Ohm Carbon Resistors (First order)
* One inch square, two-sided breadboards (Second Order)
Okay, step one is to get the USB B receptacle wired up. Right now I've got jumper wire soldered directly on the pins on the bottom. Long-term, you really want this stuck on a breadboard -- and I like the two-sided one-inch-square protoboards from SparkFun. Because I'm a shameless sparkfun fanboy.
Sweet mini breadboards:
http://www.sparkfun.com/commerce/product_info.php?products_id=8814
I found a nice pin-out of the receptacle.
http://portal.fciconnect.com/Comergent//fci/drawing/61729.pdf
But still what you need is a drawing from a side-on kinda diagonal angle to convey it. I don't know why this isn't on the net somewhere.
/Users/gabriel/Desktop/usb-receptacle-pinout.png
Now the first thing to do, is to wire the "vin" Arduino pin to the "+5V" pin on yer USB receptacle. And the second thing to do is to wire the ground pin on the Arduino to the ground pin on the USB receptacle. Then use a USB A-to-B ("printer cable") cable to connect your computer to your custom connector. The arduino should power up and run whatever program you have loaded in it. (Dunno what's loaded? Unplug the custom stuff, plug in the normal port, and load "blink" or somthing.)
Tabs that stayed open all the time
http://www.practicalarduino.com/projects/virtual-usb-keyboard
http://code.rancidbacon.com/ProjectLogArduinoUSB
http://www.accesscomms.com.au/Reference/USB.htm
And Other Stuff I wandered across
http://www.accesscomms.com.au/images/Reference/usb/USB-Cord-Drawing.gif
Here's the AVR rabbit hole I got stuck down:
http://www.obdev.at/products/vusb/powerswitch.html (this is the original "reference" build of AVR)
http://www.krezac.net/avr/yake-en (simply emulates a keyboard.)
http://www.obdev.at/products/vusb/hidkeys.html (This could be promising. Maybe do power switch first, then graduate to this.)
http://imakeprojects.com/Projects/haunted-usb-cable/Gfx/schematic.jpg (schematic from the 'haunted usb cable' prject)
http://imakeprojects.com/Projects/avr-tutorial/ (quick tutorial on tiny 45, getting going fast. looks nice)
http://macetech.com/blog/?q=node/46 (a small caps lock presser, at tiny 45, nice diagram of usb circuit.)