Summary of Making a USB based AVR Programmer using ATMEGA8 Microcontroller
The author initially used a parallel port DAPA programmer to program ATMEGA chips before discovering the USBasp. This project details building an inexpensive, fast USB-based AVR programmer using an ATMEGA8 microcontroller. The setup allowed for easy laptop programming and portability for competitions, eventually replacing the need for the older desktop and serial/parallel methods.
Parts used in the USB based AVR Programmer:
- ATMEGA8 chip
- Breadboard
- Parallel port DB25 connector
- USB cable
- ATMEGA8 Microcontroller (for USBasp build)
Around time when I was beginning to learn about microcontrollers. I had exchanged my laptop with a senior at college for his desktop – that’s because the only way I knew how to program an ATMEGA chip was through either a serial port or a parallel port. USB programmers were not available widely and were generally thought to be expensive. The programming setup using a parallel port was very simple. I followed the DAPA programmer for my needs for some time. Here is a pic of the setup – ATMEGA8 chip on breadboard (pinouts matched against the one shown in above link). A parallel port DB25 connector and a USB cable that just to get 5V and GND quick and dirtly without any batteries and voltage regulators:
Over the time I learned about an inexpensive way of making a USB based AVR programmer called USBasp. It’s faster, cheaper and has the convenience of letting you program AVRs from laptops. Here is a pic of the first USBasp programmer that I built, and promptly got my laptop back (in the link you can see more designs):
Plugging it into the laptop and seeing it get recognized was pure fun! Having it work right also meant that you could get it to a competition venue easily, in case you had to program the microcontroller again.
For more detail: Making a USB based AVR Programmer using ATMEGA8 Microcontroller
- Why did the author exchange their laptop for a desktop?
The only known way to program an ATMEGA chip at that time was through a serial or parallel port because USB programmers were not widely available. - What type of programmer did the author use initially?
The author followed the DAPA programmer design for their initial needs using a parallel port setup. - How was power provided in the initial parallel port setup?
A USB cable was used to get 5V and GND quickly without batteries or voltage regulators. - What is the name of the new programmer built later?
The author built an inexpensive USB based AVR programmer called USBasp. - What are the advantages of the USBasp over the parallel port method?
The USBasp is faster, cheaper, and allows programming AVRs directly from laptops. - Can the USBasp programmer be used at competition venues?
Yes, having it work correctly meant it could be easily taken to a competition venue to program microcontrollers again. - What specific microcontroller was used to build the USBasp?
The project uses an ATMEGA8 Microcontroller to create the USB based AVR programmer.

