I'm envisioning a panel programming jig. In my mind, it consists of a Raspberry Pi, a powered USB hub, and a collection of usbtiny clones each connected to a pogo jig and a target on a panel.

The only question I haven't yet worked out is, when invoking avrdude, I can use -c to tell it to use usbtiny... but how can I tell it which usbtiny I want it to use? The plan is to use a script to go through them all one at a time, and IMHO just attaching a bunch of programmers is easier than trying to come up with a bolt-on to multiplex the SPI bus from one programmer to all the targets.


1 Answer 1


Multiple USBasp or USBtinyISP devices can be identified by their connection information. From the AVRDUDE manual, appendix B, "Troubleshooting":

  • Problem: Multiple USBasp or USBtinyISP programmers connected simultaneously are not found.

    Solution: The USBtinyISP code supports distinguishing multiple programmers based on their bus:device connection tuple that describes their place in the USB hierarchy on a specific host. This tuple can be added to the -P usb option, similar to adding a serial number on other USB-based programmers.

    The actual naming convention for the bus and device names is operating-system dependant; AVRDUDE will print out what it found on the bus when running it with (at least) one -v option. By specifying a string that cannot match any existing device (for example, -P usb:xxx), the scan will list all possible candidate devices found on the bus.


    avrdude -c usbtiny -p atmega8 -P usb:003:025 (Linux)
    avrdude -c usbtiny -p atmega8 -P usb:/dev/usb:/dev/ugen1.3 (FreeBSD 8+)
    avrdude -c usbtiny -p atmega8 \
      -P usb:bus-0:\\.\libusb0-0001--0x1781-0x0c9f (Windows)
  • \$\begingroup\$ Excellent. I'm glad there's a solution. I found lots of doc for avrdude, but not that chunk of the manual. Thanks! \$\endgroup\$
    – nsayer
    Sep 26, 2014 at 20:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.