This is how I upload sketches from my computer (windows 7) to an arduino uno board attached to a remote linux host (Debian 7).
On the linux host:
- Install usbip package
- Load kernel modules usbip_host and usbip_core
- As root, launch usbipd (use -d for debugging)
- Find your arduino board with lsusb :
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 002: ID 046d:c313 Logitech, Inc. Internet 350 Keyboard
Bus 007 Device 004: ID 2341:0043 Arduino SA Uno R3 (CDC ACM)
- Export the usb bus (arduino device is 7-4, so the bus is 7-1)
usbip bind -b 7-1
On Windows:
- Install Arduino IDE, with the drivers
- Download and extract usbip for windows.
- For Wheezy, you need a modified binary with the correct version number, i took mine on https://skydrive.live.com/?cid=ffef4635c(..), found on https://blogs.williamhuang.org/?p=6
- For Squeeze, download from USBIP web site
- Connect to the remote device
usbip -a archipel 7-1
- Let windows install the drivers
- Use Device Manager to find the COM port corresponding to « Arduino UNO »
- Select the correct COM port in Arduino IDE
- Enjoy !