A while ago I purchase an AVR Dragon and a handfull of ATTINY13As with the intent of learning how to program AVRs without using the Arduino IDE. I was able to accomplish this task easy and had my first “hello world” program running. Everything was good and then I put the AVR Dragon and ATTINYs away and moved on.
Recently I needed to make a simple pulsing circuit to test something I had built. I wanted around a 1kHz square wave. I knew I could accomplish the same thing with a 555 but that would require external circuitry and I wanted something quick and simple. I remembered the ATTINY so I fired up Atmel Studio, wrote a simple program to switch a pin on and off with a delay to get 50% duty cycle at 1kHz. I wire up the ATTINY to the AVR Dragon to program it and then ran into a road block. I could not get the programmer to communicate with the microcontroller. I recheck my connections and tried again a few more times. I placed a ZIF socket on the prototyping area of the AVR Dragon and wired it up to program but still had issues communicating. A while later I found my problem, I had misremembered the wire connections.
I knew if I wanted to use this again I needed to make this process easier. So I created an adapter board in KiCAD to easily program the ATTINY13A. It is simple and easy to use, with only four components; IC socket, switch, and two 6 position headers. Now when I go to program another ATTINY I will not forget how to wire it up and struggle longer then needed. I just stick the ATTINY in the IC socket and attache the breakout board to the AVR Dragon.
Link to schematic: Schematic.pdf
Link to KiCAD Project Files: DragonAVR-Shield.zip