ATtiny Programming Shield for Arduino

57,444

478

32

Published

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 electr...
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 >> http://www.kobakant.at/DIY/?p=3742
Arduino board as ATtiny programmer (by Dave Mellis) >> http://hlt.media.mit.edu/?p=1706
Programming an ATtiny w/ Arduino 1.0.1 (by Dave Mellis) >> http://hlt.media.mit.edu/?p=1695

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 >> https://www.sparkfun.com/products/11460

Video of "ATtiny Arduino Shield Programmer" in action

Step 1: Materials and Tools

Materials
- 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

Tools
- 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="http://hlt.media.mit.edu/?p=1706"><img src="http://farm9.staticflickr.com/8344/8191599432_3e2508f44d.jpg"></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

8 People Made This Project!

Recommendations

  • Water Contest

    Water Contest
  • Creative Misuse Contest

    Creative Misuse Contest
  • Oil Contest

    Oil Contest

32 Discussions

Hello,

This project is awesome! Can it be used to program all Attiny 85 sketches?

I made it. Thanks

temp_380201826.jpg

To help you if you are lost with the pins :

https://learn.sparkfun.com/tutorials/tiny-avr-programmer-hookup-guide/attiny85-use-hints

aaaaaaaa.png

Does the capacitor really need to be 10uF? Or will 1uF also work, because I only have 1uF capacitors.

3 replies

I heard in Hackable.fr that you can use biger capacitor but not smaler uF

Ive never used a capacitor when programming the ATtiny85, I just wired it wire 4 wire to the Arduino Uno and programmed via ArduinoISP. What's the capacitor for?

I guess it's to disable the auto reset of the Arduino, it's connected betwin pin RST(reset) and GND(ground),
Hackable.fr says "so that the arduino is ready to transmit the data that the computer is sending and does not reset before the transmission... "
I never use this one too, I don't understand ...

Thanks for the excellent Instructible!

I did add a NC switch in Vcc in order to reboot the ATTiny85 on the fly. Works great! Thanks again!

back2.jpgfront2.jpg

Taken from the author's website:

Burn Bootloader

To set the clock speed of your ATtiny to be faster (8Mhz) than the default 1 MHz.

- Select “ATtiny45 (8 MHz)” from the “Tools > Board” menu

- Select “Arduino as ISP“ from the “Tools > Programmer” menu

- Select “Burn Bootloader” from the “Tools” menu

So yes you can buy some ATtiny85 anywhere, you will be able to burn the bootloader with this programming shied here :)

This does not burn Bootloader (source: hackable.fr ) but does set some ""fuse"" to the desired value

Have we somehow skipped the part where the second set of four parallel female jumpers on each side of the Tiny are added? It's trivial to do, but...

Thanks for the info.

temp_-1840137770.jpg

interesting work thank you

how did you programmed music on the ATtiny ?

Are there any schematics? Can you upload them?

Can anyone explain to me what an ATtiny actually is. I'm just in my first year computerscience and haven't seen these.

1 reply