USBasp - AVR programmer
USBasp - Open source AVR programmer
Construction
Programmer options
To tinker with any microcontroller, first step is to transfer/program the software to the microcontroller. There are different ways of doing this, listed as below options.
- Silicon manufacturer programmers/debuggers:
- Bootloaders - Special program that reside’s inside microcontroller and handles the programming! I wont be considering bootloaders as of now, this is a task best to be done in future ;)
- Manufacturer demo boards with built in debuggers - ATMEGA328P-XMINI
- Other(Open source) programmers
And the winner is! …… USBasp
The theme of this blog is DIY, so let’s build our own copy of the open source AVR programmer from Thomas Fischl USBasp.
Schematics and features
Below schematic of USBasp programmer is based on original USBasp, However i made few changes to the schematic as described here
- Level translator based on 74125 QUAD buffers.
- Addition of a I2C EEPROM for future standalone operation mode i am planning.
- Addition of a new JP2 jumper to trigger standalone operation.
- Addition of a Jumper JP4 to power the programmer from target board instead of USB connection(Planned to be used in standalone mode to power the programmer)
Modified schematic of USBasp described in this blog can be seen below. If you need a high resolution pdf copy of this schematic, Its available right here USBasp_sch.pdf
Build images
Below you can find build images of programmer i built using only ‘through-hole’ components! I have omitted EEPROM and jumper to trigger standalone operation in the 1st version of the programmer constructed for simplicity :)
Software
You can find the software to be flashed into our shiny new USBasp on Fischl’s website.
Closing notes
!!!Happy tinkering!!! :D