Author Options:

ATTiny85 programming error Answered

Hi everyone,
I'm having a bit of trouble with programming an ATTiny85 using an Arduino Uno.  I've previously been able to program them quite easily using the method shown here; http://highlowtech.org/?p=1695   I've tried using both a homemade programming shield and wiring a breadboard, but I get the same error each time;

avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.

I don't know what this means or how to fix it.  I know my wiring is good, the breadboard is at least quadruple checked and I have used the shield many many times before.  Any suggestions or ideas?


I have the same problem. I'm using v1.6.9 IDE and installed 1.0.1 attiny on it via update on the preferences and pasting "https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json" Is there any fix for this?

So what I've found out is that the error basically means that the Arduino doesn't know the Attiny is there at all. I had this issue about three months ago and I haven't messed with the Attiny until yesterday, and it worked just fine. Unfortunately, I can't help you out because I have no idea what I may or may not have changed. I can tell you that I'm using the Arduino v1.6.8 IDE from Arduino.cc (not Arduino.org) with the 1.0.1 attiny. I wish I could be of more help.

Thanks buddy. I've figured out my mistake. I am using Mega 2560 and I was following the pins for Arduino Uno. Mega 2560 uses the pins 50 51 52 53 for uploading the program to attiny85. On the other hand, A. Uno uses pins 10, 11, 12 and 13. :D


2 years ago

Update on the issue; I get the exact same error if the ATTiny85 isn't there at all. It seems to be an error that occurs when the Arduino is programmed, but the auto reset function is blocked (via capacitor). Perhaps it's just not seeing the ATTiny85 chips at all.

I get the same error when I try to upload any sketch while the board is set to ATTiny85, whether or not the capacitor is there.

Do you have the ide tools menu set as programmer - arduino as ISP. If I recall, there were error messages that usually could be ignored. But your problem is that the attiny doesn't get the new sketch uploaded despite error messages? Maybe try to burn the bootloader onto the chip before anything else.

Yeah, I have the programmer set to arduino as isp, I've tried to load the bootloader several times, but I get the same error and the bootloader fails to burn.

What OS and version of the arduino IDE are you using? The latest IDE and depending on whether you got the arduino.cc or the "other arduino" IDE has problems breaking old code.

I only tried the attiny programming a while back using IDE 1.05, win XP and that worked only with the right combination of a lot of things like the correct menu choices settings and changing the config files for slower baud rate. I haven't bothered to go through the pain with my win7 machine. It was pretty experimental and different "attiny cores" that worked only under specific conditions.

I currently have windows 10 and both IDE 1.6.8 from arduino.cc and 1.7.9 from arduino.org. This is the first time I've tried to use them on windows 10, but I have used 1.6.8 on windows XP in the past. I tried both IDEs but got the same error with both.

I'm not sure if that high low tech method is even actively supported. Read through adafruits help forums on their Gemma and regular trinket boards which are attiny85 based. You might find something there. Windows 10 does have some new quirks with USB and unknown stuff making for weirdness in arduino.

I have now tried using 1.6.8 on my old computer running windows XP, as well as tried the arduino IDEs 1.6.1 and 1.0.6, with the same error each time.

If this is a timing error (baud rate), it would be a problem with the UNO, not the host computer. The UNO is the actual programming interface for the Tiny85, yes?

Which isn't saying much, since we really don't know the nature of your problem.

Actually, looking at your link in the original message, it's VERY easy to whack those fuses, just by choosing the wrong option on the "board" menu. The link even warns: Warning: make sure you select “internal” not “external” or your microcontroller will stop working (until you connect an external clock to it). (Their use of bold type).

I.E., those other options change the fuses...


2 years ago

Try a different Tiny85. There's always a chance you mis-programmed the fuses, and now the AVR won't respond.

If that's it, the AVR might have been set to use an external clock source, or not to respond to serial programming.

I've tried two different chips, each one has been programmed through this method many times before. They actually still have the code from the last time I used them.

And you're sure the AVRdude fuse settings are the same as what you used before? Whether they've been programmed previously wouldn't matter if you changed the fuses...

Yeah, I've never messed with the fuses on either of them.