SparkFun Forums 

Where electronics enthusiasts find answers.

Discussions on the software and hardware for Atmel's STK standard.
I have a Sparkfun pocket AVR Programmer. Usually, I use this from Linux with command-line avrdude, and it works fine.
However, now I need to use it from a Windows 8.1 / x64 machine, from the Arduino IDE, and I can't get it recognized.
I downloaded and ran the zadig.exe installer (from an administrator command line window.) When I plugged in the USBtinyISP, it detected the VID/PID, and I selected "install driver."
It seems to install fine, and Windows disconnects and then reconnects the device. However, when I choose "Upload using Programmer" in the Arduino IDE, I still get the error that it can't find the USBtinyISP:
Code: Select all
avrdude: Error: Could not find USBtiny device (0x1781/0xc9f)
FWIW, I'm using arduino-1.06 IDE, because the Arduino products I'm working with don't support the 1.5 IDE.

I'm sure this is some bullsh!t Windows USB driver signing blech going on -- but zadig is supposed to work for Windows 8, right?
How can I make this product actually work with my computer?
After trying a number of things, I found the solution. It turns out, the zadig.exe installer by default installs the WinUSB driver (which is the native Windows 8 way of talking to USB.)
However, avrdude wants to use libusb-win32, which I can choose to install instead. Uninstalling the driver for the programmer, and re-installing the driver as libusb-win32, solved the problem and Arduino IDE / avrdude now finds the device.
I couldn't really find this documented anywhere obvious -- the way I stumbled across it was in a mention about using avrdude on Windows on some other website, where in passing it said "avrdude uses libusb."