Introduction: ATtiny Programming Shield for Arduino

About: My work combines conductive materials and craft techniques to develop new styles of building electronics that emphasize materiality and process. I create working prototypes to demonstrate the kinds of electron…
This little circuit sits nicely ontop of an Arduino board and lets you quickly plug in an ATtiny chip for programming using the Arduino "language" and IDE to write the code, and the Arduino board as an ISP programmer to upload the code to the tiny chip.

These instructions are also published on our website titled HOW TO GET WHAT YOU WANT.

For instructions on how to use Arduino to program ATtinies, please look at the following links. This Instructable will only explain how to build the programming shield.
Arduino as ISP >>
Arduino board as ATtiny programmer (by Dave Mellis) >>
Programming an ATtiny w/ Arduino 1.0.1 (by Dave Mellis) >>

There is also a really nice Tiny AVR Programmer now available from Sparkfun (designed by Dave Mellis) that does the same thing even more compactly >>

Video of "ATtiny Arduino Shield Programmer" in action

Step 1: Materials and Tools

- Perforated circuit board
- Male and female headers
- Wire
- 10uF capacitor
- Arduino Uno or Duemilanove (with an ATmega328, not an older board with an ATmega168!)
- ATtiny45 or 85

- Cutter knife
- Cutting mat
- File
- Wire cutters and stripper
- Soldering iron
- Helping hand

Step 2: Cut Circuit Board to Shape

Cut a piece of perforated circuit board to size (see illustration) and file the edges.

Step 3: Solder Male Headers

Take two rows of four male headers and solder them to the circuit board, but with the solder connections on the unintended side of the circuit board. So solder them you will need to hold them away from the circuit board a bit so that you can make the solder connection. Once you've got the first pin soldered the rest will be easier.

Video: Soldering headers to perforated circuit board:

Before continuing, make sure the board with headers fit into your Arduino.

Step 4: Disconnect Circuit Traces

Disconnect the line traces as follows (see illustration and video) using a cutter knife

Video: Cutting connection on a perforated circuit board:

Step 5: Solder Female Headers

Insert the female header pins and use an ATtiny chip as reference to make sure you get the spacing right. Then solder.

Step 6: Solder Circuit

Use jumper wire or cut wire to length and strip either end and start to populate the circuit board with wires to make the connections between the pins of the Arduino and the pins of the ATtiny. Use illustration and the following information for reference. Bend wires on bottom side to stop them falling out before you solder them.

Wiring your ISP connection
ATtiny        -----  Arduino
Pin PB2 (SCK)   -----  Pin 13
Pin PB1 (MISO)  -----  Pin 12
Pin PB0 (MOSI)  -----  Pin 11
Pin PB5 (Reset) -----  Pin 10
Plus (VCC)    -----  +5V
Minus (GND)   -----  GND

10uF Capcitor:
Arduino pins: RESET ----||---- GND

<a href=""><img src=""></a>

When you've finished making all the connections illustrated in the diagram (including the capacitor) then you are DONE!

Step 7: Upload Your Program!

Now plug in your Arduino and follow the instructions in the Arduino as ISP post linked to at the top of this page.

Video: Using ATtiny shield to program an ATtiny to play a song
UP! Contest

Participated in the
UP! Contest