|
USBAsp – AVR USB ProgrammerBy Radu Motisan Posted on May 2nd, 2012 , 8198 Views (Rate 21.18) |
My first AVR programmer for the Atmega8 was a parallel port programmer: Slow, and available only for older computers with a parallel port. Not long after, Thomas Fischl designed his USBasp.

This programmer is based on Thomas Fischl's USBasp design and connects to your computer's USB port. Not only is it quite compact, but the design is really elegent. The USB interface is achieved by using an atmega processor and the rest is done in firmware. For those interested, the firmware source code can be downloaded from the USBasp website.
![]() |
![]() |
![]() |
Some of the features include:
Support for AVRDude from version 5.2 onwards
Allows you to to read or write the microcontroller EEPROM, firmware, fuse bits and lock bits
Support for Linux, Mac OS X and Windows (will work on vista)
5 KB/sec maximum write speed
Software controlled SCK option to support targets with low clock speed (< 1.5MHz)
10 pin ISP interface
It has two leds to indicate power / operation mode. A 5V output can be used to directly supply voltage to the microcontroller it is connected to. The 5V output has overcurrent protection.
Can be used with the following:
AT89S51,AT89S52,AT89S8253,AT89S2051,AT89S4051,
AT86RF401,AT90CAN32,AT90CAN64,AT90CAN128,
AT90PWM2,AT90PWM2B,AT90PWM3,AT90PWM3B,
AT90PWM81,AT90PWM216,AT90PWM316,AT90S1200,
AT90S2313,AT90S2323,AT90S2343,AT90S4414,AT90S4433,
AT90S4434,AT90S8515,AT90S8535,AT90SCR100H,AT90USB82,
AT90USB162,AT90USB646,AT90USB647,AT90USB1286,AT90USB1287,
ATmega8,ATmega8A,ATmega8U2,ATmega8HVA,ATmega16,ATmega16A,
ATmega16HVA,ATmega16HVB,ATmega16M1,ATmega16U2,ATmega16U4,
ATmega32,ATmega32A,ATmega32C1,ATmega32HVB,ATmega32M1,ATmega32U2,
ATmega32U4,ATmega32U6,ATmega48,ATmega48P,ATmega48PA,ATmega64,ATmega64A,
ATmega64C1,ATmega64M1,ATmega88,ATmega88P,ATmega88PA,ATmega103,ATmega128,
ATmega128A,ATmega128RFA1,ATmega161,ATmega162,ATmega163,ATmega164P,ATmega164PA,
ATmega165,ATmega165P,ATmega168,ATmega168P,ATmega168PA,ATmega169,ATmega169P,
ATmega323,ATmega324,ATmega324PA,ATmega325,ATmega325P,ATmega328P,ATmega329,
ATmega329P,ATmega406,ATmega640,ATmega644,ATmega644P,ATmega644PA,ATmega645,
ATmega649,ATmega1280,ATmega1281,ATmega1284P,ATmega2560,ATmega2561,ATmega3250,
ATmega3250P,ATmega3290,ATmega3290P,ATmega6450,ATmega6490,ATmega8515,ATmega8535,
ATtiny10,ATtiny11,ATtiny12,ATtiny13,ATtiny13A,ATtiny15,ATtiny22,ATtiny24,ATtiny24A,
ATtiny25,ATtiny26,ATtiny28,ATtiny43U,ATtiny44,ATtiny44A,ATtiny45,ATtiny48,ATtiny84,
ATtiny85,ATtiny88,ATtiny167,ATtiny261,ATtiny261A,ATtiny461,ATtiny861,ATtiny861A,ATtiny2313,ATtiny2313.
Circuit diagram:

Latest firmware:
usbasp.2011-05-28.tar
Credit goes to Thomas Fischl . Check his website.
|
|
























June 3rd, 2012 at 2:39 pm
Thank you for sharing this! It is really interesting how you can create these kinds of programming controllers. Can I get the name of the person from whom you’ve ordered them?
March 11th, 2013 at 4:10 pm
[...] set the fusebits you can use the same tool you use to write the .hex. In my case, this is my trusty USBAsp USB programmer, that works [...]