SparkFun Forums 

Where electronics enthusiasts find answers.

For the discussion of Arduino related topics.
By cyrusbuilt
#154066
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
By 0utrider
#155177
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?
By knuckles
#155267
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
By keiichicom
#159213
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;
Code: Select all
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
Code: Select all
burn bootloader
option from the Arduino IDE Tools menu first".)

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.
Code: Select all
 -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).
Code: Select all
-CC:\avrdude\avrdude.conf  -cavrisp -p t45 -P\\.\COM21 -b19200 -v -e -Uflash:w:$(ItemFileName).hex