Go Down

Topic: Arduino Leonardo - troubles with using as ISP for attiny 85 (Read 1 time) previous topic - next topic

3Qax

Hi,
I want to make DC voltage booster like this. So I need to program my Attiny 85 microcontroller. So... I uploaded ArduinoISP sketch to my Leonardo. Then, after succesfull uploading, I putted 10uF capacitor beetwen RESET pin and Groud of Leonardo. I havn't unmarked  "// #define USE_OLD_STYLE_WIRING" in ArduinoISP sketch so I was suppoused to use ICSP headers and pin 10 as Reset pin. I connected pins right, then selected "Arduino as ISP" as programmer, and selected right Attiny microcontroller. Forget to say: I have correctly installed  Attiny boards by folowing instructions on highlowtech.org. So everything look fine, but when I was trying to upload sketch or burn bootloader, it gives me and error  :'( . Here is how it looks like:
Code: [Select]
Arduino:1.6.4 (Windows 8.1), PÅ‚yta:"ATtiny25/45/85, ATtiny85, Internal 1 MHz"

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58

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

         Copyright (c) 2007-2009 Joerg Wunsch



         System wide configuration file is "C:\Users\kuba\Desktop\arduino-1.6.4\hardware\tools\avr/etc/avrdude.conf"



         Using Port                    : COM6

         Using Programmer              : stk500v1

         Overriding Baud Rate          : 19200

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x03

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x03



avrdude done.  Thank you.

What I have done, but it didn't helped:
  • reuploaded ArduinoISP
  • tried witch Arduino 1.6.9, 1.6.4, 1.0.5
  • doublecheceked every connection
  • mounted LED on pin 8, it was pulsing so Leonardo was working right
  • dissconnected and connected things many times
  • tryed with another PC and laptop
  • replaced Attiny
  • reinstalled drivers
  • restart Adruino and PC
  • tryed diffrent USB ports

Hope for a littlebit of help  8) . You can see my wireing here.

uxomm

To use an Arduino Leonardo as ISP programmer is not easy. The Leonardo is a totally different microcontroller than the UNO and the USB to serial connection sometimes "is a diva" :)
So if you have an UNO, a Nano or Fio use one of these. They can be used as ISP programmers easily.

If you have no other option and you must use the Leonardo, take a look at:
https://petervanhoyweghen.wordpress.com/2012/09/16/arduinoisp-on-the-leonardo/
and
http://forum.arduino.cc/index.php/topic,108270.msg1013284.html#msg1013284

A quote from this site:
Quote
The reason stk500v1 does not work is that upon opening the virtual com port, windows/avrdude do not request to assert the "virtual" DTR and RTS signals. The leonardo refuses to send out data under these conditions so it never writes data back to avrdude. When using the arduino protocol, before starting programming, avrdude will briefly deassert DTR and RTS and assert them again. This would trigger autoreset if you were uploading a sketch to an arduino bootloader. But in this work around, we use the side effect that this leaves DTR/RTS asserted during programming which makes the leonardo talk.
And if you want to program ATtinys more often, get a ("standalone") ISP programmer for a few bucks and it will be "easy programming"  :)
Always decouple electronic circuitry.

3Qax

That's worked for me. Thank you @uxomm. But instead of toutrial I have added following lines to C:\Program Files (x86)\Arduino\hardware\arduino\avr\programmers.txt:
Code: [Select]
arduinoispleo.name=Arduino as ISP (Leonardo)
arduinoispleo.communication=serial
arduinoispleo.program.tool=avrdude
arduinoispleo.protocol=arduino
arduinoispleo.speed=19200
arduinoispleo.program.extra_params=-P{serial.port}

And of course connected to attiny via ICSP headers and pin 10.
Hope that will work for everyone with same trouble as me :)

Go Up