ATtiny85 and AruduinoISP 1.0.3

Okay… yes I know this topic has been covered all over the place and I’ve read every article and form posting I could find and tried every step I read. However, almost every post discusses using the Arduino Uno as an ISP under Arudino v1.0 or v1.0.1.

The issue:

I’m trying to program an ATtiny85 using an Arduino Uno, but I keep getting “avrdude: stk500_getsync(): sync error, resp=0x00”.

Steps taken:

Using Arduino v1.0.3 on Windows 7 w/Arduino Uno R3:

Clicked Tools–> Programmer → AVRISP MkII

Clicked Tools–> Board → Arduino Uno

Clicked File → Examples → ArduinoISP

Clicked File → Upload

Compile and upload succeeds.

Wire up ATtiny85 as described here: http://hlt.media.mit.edu/?p=1706

Checked, double-checked, and triple-checked connections.

Connect 10uF cap to GND and Reset on the Undo

Interesting note (maybe?): When I connected the 5V lead to Vcc on the ATtiny85 as my last step in the wiring process. When I did, the onboard LED on the Uno marked “L” turned off. Dunno exactly what that means.

Uno is connected to a powered USB 2.0 hub.

Clicked Tools → Programmer → Arduino as ISP

Clicked Tools → Board → ATtiny85 (w/ Arduino as ISP)

Clicked File → Examples → 01.Basics → Blink

Changed value of variable “led” to “0”.

Clicked File → Upload Using Programmer

Compile succeeds. On upload I get:

Binary sketch size: 664 bytes (of a 8,192 byte maximum)

avrdude: stk500_getsync(): not in sync: resp=0x00

So I read that you may have burn the bootloader for SoftSerial support, so I did the following:

Clicked Tools → Board → ATtiny85 (internal 8MHz clock)

Clicked Tools → Programmer → Arduino as ISP

Clicked Tools → Burn Bootloader

Result:

Error while burning bootloader.

avrdude: stk500_getsync(): not in sync: resp=0x00

I’m at a loss. I’ve repeated these steps over and over. I’ve even gone into the ArduinoISP sketch to make sure I have delay(20) in the heartbeat() method. It was already there, so for the hell of it, I tried changing it back to delay(40) once. No go.

Here is the verbose output of my last upload of the Blink sketch:

Binary sketch size: 664 bytes (of a 8,192 byte maximum)

C:\Program Files\arduino-1.0.3\hardware/tools/avr/bin/avrdude -CC:\Program Files\arduino-1.0.3\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -pattiny85 -cstk500v1 -P\.\COM3 -b19200 -Uflash:w:C:\Users\CYRUST~1.CYR\AppData\Local\Temp\build1802945968492620001.tmp\Blink.cpp.hex:i

avrdude: Version 5.11, compiled on Sep 2 2011 at 19:38:36

Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is “C:\Program Files\arduino-1.0.3\hardware/tools/avr/etc/avrdude.conf”

Using Port : \.\COM3

Using Programmer : stk500v1

Overriding Baud Rate : 19200

avrdude: Send: 0 [30] [20]

avrdude: Send: 0 [30] [20]

avrdude: Send: 0 [30] [20]

avrdude: Recv:

avrdude: stk500_getsync(): not in sync: resp=0x00

avrdude done. Thank you.

And here is the verbose output of my last bootloader burn:

C:\Program Files\arduino-1.0.3\hardware/tools/avr/bin/avrdude -CC:\Program Files\arduino-1.0.3\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -pattiny85 -cstk500v1 -P\.\COM3 -b19200 -e -Uefuse:w:0xff:m -Uhfuse:w:0xdf:m -Ulfuse:w:0xe2:m

avrdude: Version 5.11, compiled on Sep 2 2011 at 19:38:36

Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is “C:\Program Files\arduino-1.0.3\hardware/tools/avr/etc/avrdude.conf”

Using Port : \.\COM3

Using Programmer : stk500v1

Overriding Baud Rate : 19200

avrdude: Send: 0 [30] [20]

avrdude: Send: 0 [30] [20]

avrdude: Send: 0 [30] [20]

avrdude: Recv:

avrdude: stk500_getsync(): not in sync: resp=0x00

avrdude done. Thank you.

Do I just have a bad tiny??? I’m at a loss. I’ve also used (3) 330 ohm resistors in parallel with GND and Reset on the Uno as an alternative to the 10uF cap for disabling reset. Same result. I’m at a loss and I’ve been beating my head on this for days. Any advice, ideas, help, etc would be greatly appreciated.

Thanks

– Cyrus

I know how your head feels, I had similar error message.

Try these board files instead of the MIT ones. It helped for me.

http://code.google.com/p/arduino-tiny/d … 0-0015.zip

There is also a bug that also appears if your code is more that 4k and your programming it with an arduino, it’s a simple fix.

Papa t

I downloaded the alternative files as suggested, but still get the same error as other users seem to get.

Anyone got any other ideas to help us newbies?

Try the Arduino forum.

i got the same problem using an attiny on a avr isp shield ,used the stuff from Mit as well .

think i may have a libs problem for some reason

but i have never had any luck with the UNO isp for a attiny chip so far and i have tried various ways to do it

the only answer may be an avrispII with atmel studio 6 to be sure

@ Papa t

Hallo!

Your solution works fine. Many thanks.

Greeting

cupressus

For those who are still having trouble:

Here is my setup: Arduino Uno Rev. 3, attiny45 20up., Arduino IDE 1.04.

Prior to uploading arduinoisp to the Arduino, remove the 10uf capacitor between Arduino reset and ground.

After uploading the arduinoisp sketch to the Arduino put the capacitor back in the circuit.

After selecting correct board from Arduino IDE. Flash your attiny with the desired sketch after compiling; Use Upload Using Programmer from Arduino IDE file menu. (note that if you want your attiny45 to operate at 8Mhz you need to choose an 8Mhz board and use ```
burn bootloader


Note that you do not have to use the Arduino ide if you don't want to. I had to use the command line since I had a .hex file generated elsewhere (not from the Arduino ide) Here are the options for avrdude for flashing your attiny from the command line. In this case I am using a attiny45 but the concept is the same. Just use t85 for your part number. If you want a list of part numbers to use with avrdude, use a bad part number after the t e.g. t999, and avrdude will list them for you. Change the path to avrdude.conf to your own path and COM port and baud rate to your own in the lines below.

-CC:\avrdude\avrdude.conf -cavrisp -p t85 -P\.\COM21 -b19200 -v -e -Uflash:w:firmware.hex


And if you are using Atmel studio 6 you can use similar avrdude options when making your external tool for programming your attiny with the Arduino. In this case a variable is used for your resulting firmware file (generated after compiling and linking your code in Atmel Studio 6).

-CC:\avrdude\avrdude.conf -cavrisp -p t45 -P\.\COM21 -b19200 -v -e -Uflash:w:$(ItemFileName).hex