ATtiny85 programming

Hello,

I’ve been running into some trouble when trying to program my ATtiny85-20SU. I am using a MEGA 2560 and have read numerous forum posts on proper procedure.

I have thus far downloaded the zip files from damellis, reinstalled both old and new versions of arduino, on two separate computers. Currently running (1.6.12)

Built a second breakout board with larger trace width for the tiny85 leads.

Swapped all cables for new ones, and even went as far as buying a new UNO to try uploading on there. I receive countless error messages, but the one that reoccurs most often is:

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

I’ve double checked connections I’ve wired the board to the UNO as suggested on highlowtech link: High-Low Tech – Arduino board as ATtiny programmer and to the corresponding MEGA MOSI/MISO/SCK connections.

No luck.

I have checked the board/proccessor/clock down to the T every time I tried to upload the sketch. Initially programming the Arduino as an ISP before each run of the Blink sketch.

Any time I try to run the sketch I receive the message above. In one instance the UNO actually did program the tiny85, I cant for the life of me figure out what I had done differently, but the clock was slow. So I tried to burn the bootloader to the internal 8Mhz which resulted in this error message:

avrdude: ser_open(): can’t open device “||.|COM4”: The system cannot find the file specified.

Since then I have had zero luck in programming this board.

The Ports register as COM4 for the UNO, and COM3 for the MEGA.

In addition earlier I was receiving an error message that said:

"Could not find boards.txt in C:users<my name>\Documents\Arduino\hardware\attiny\variants.
WARNING: Error loading hardware folder attiny
No valid hardware definitions found in folder attiny

I’ve made my own hardware file, I’ve downloaded the hardware configuration archive: breadboard-1-6-x.zip form https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard

This is all fairly new to me, my apologized for the lengthy post but I just can’t seem to figure out what wrong and this is suppose to be the easier part of programming. I’m unsure where my error lies.

Help me Arduino Forum Community you’re my only hope!

Attached is a picture of the 85 with larger trace width connected to the MEGA 2560. Above is the original board not connected but thought it’d be worth including.

Just to go over connections

ATtiny85 MEGA 2560 UNO

pin 1 (RESET): 53 (black) 10 RESET
pin 4 (GND): GND (black) GND GND
pin 5 (PWM0): 51 (white) 11 MOSI
pin 6 (PWM1): 50 (yellow) 12 MISO
pin 7 (PWM2): 52 (green) 13 SCK
pin 8 (+V): 5V (red)

10uf polarized capacitor from RESET to GND

When using the MEGA I’ve set MOSI/MISO/SCK to their corresponding pins in the ArduinoISP sketch,
and switched them back when using UNO. I didn’t read that anywhere but thought it might help. When trying to upload the sketch I selected the upload using programmer from the sketch menu, because it seems to have had luck with others.

Again my apologize for the length I just want to go over all that I have attempted in order to trouble shoot this problem quickly.

Lastly, I found a link referring to 3rd party hardware specifications: https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5-3rd-party-Hardware-specification

But truthfully I am unsure how to apply this information and am unsure that is even necessary.

Thank you for your time,
-Jesse

Sorry the image didn’t attach in the last post. File was to big. Attached is the image for the earlier post.
Assistance would be greatly appreciated.

The ArduinoISP sketch uses Pin 10 for Reset on both the UNO and the MEGA. Move your wire from 53 to 10.

Hey John,

Thanks for the response, same error:

avrdude: Device signature = 0x000000 avrdude: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check. Even tried it in A10 for the hell of it.

Could both the chips be bad? I have an attiny45 through pin that results in the same error call though from a different vendor. I will admit I did buy the 85's of eBay, but I've seldom had a bad experiences shopping there when dealing with high rated vendors.

The failure to read the signature is usually caused by a wiring error but it may also be caused by a failure of the target processor's clock to run. This will happen if the chip is set to use a crystal and the crystal is not present. If you have crystal of roughly ten to twenty MHz you can connect it between pins 2 and 3 on the ATtiny to see if that helps.

If you can't find a spare crystal or you try the crystal and still get the "Device signature = 0x000000" error you should get this modified ArduinoISP sketch from adafruit: https://github.com/adafruit/ArduinoISP Go back to Step 1 and upload this version of ArduinoISP to your ISP Arduino. Connect Pin 9 of the ISP Arduino to pin 2 of the ATtiny. That will provide an 8 MHz clock to allow programming without a crystal.

If you try both methods and it still fails with "Device signature = 0x000000" you might have a chip with configuration fuses set to disable serial programming. To fix the fuses you will need something like the HV Rescue Shield 2 from MightyOhm (http://mightyohm.com/blog/products/hv-rescue-shield-2-x/). That uses High Voltage Serial Programming to reset your ATmega/ATtiny configuration fuses to factory defaults. If that doesn't work your ATmega/ATtiny is probably damaged beyond use.

Just for clarification pin 2 refereeing to A1 SCK?

In addition am I making the original connections as well? Or am I intended to burn the bootloader first using this pin 9 to pin 2?

Pin 2, a.k.a. XTAL1 a.k.a. PB3…

pin port pin VCC
1 PB5 PCINT5/RESET/ADC0 8 VCC
2 PB3 PCINT3/XTAL1/CLKIADC3 7 PB2 SCK/USCK/SCL/ADC1/T0/INT0/PCINT2
3 PB4 PCINT4/XTAL2/CLKO/ADC2 6 PB1 MISO/DO/AIN1/PCINT1
4 GND 5 PB0 MOSI/DI/SDA/AIN0/AREF/PCINT0

Yes, all of the other connections remain the same.

I don't have a crystal and will have to order one. I tried the second approach and received this error message:

Programmer Type : STK500 Description : Atmel STK500 Version 1.x firmware Hardware Version: 2 Firmware Version: 1.18 Topcard : Unknown Vtarget : 0.0 V Varef : 0.0 V Oscillator : Off SCK period : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | avrdude: stk500_recv(): programmer is not responding avr_read(): error reading address 0x0000 read operation not supported for memory "signature" avrdude: error reading signature data for part "ATtiny85", rc=-2 avrdude: error reading signature data, rc=-1 avrdude: stk500_disable(): unknown response=0x00

the selected serial port does not exist or your board is not connected avrdude done. Thank you.

Becasue it says the selected serial port does not exist would that suggest that I will need to the HV Rescue Shield 2?

In what instance would someone want the ATtiny85's something other then factory default? Especially a setting that has deactivates the serial ports? Or does this mean that the chips are a bad batch?

Hey John,

So didn't work on the MEGA 2560 But DID work with booth chips on the UNO!

Interested to know why you think it wouldn't work on the MEGA but so relieved its working at all!

THANK YOU,

-Jesse