Greetings - I’m trying to started using my USB AVR Programmer, but either I’m a complete moron, or I’ve already damaged it.
I’m trying to use the programmer to burn some virgin ATtiny44a SOICs with an existing hex file. The file is known to work, I just need to get it written.
I have successfully got WinAVR, AVRStudio, and the Pololu drivers installed. AVRStudio sees the programmer and apparently connects to it. Same for avrdude on the command line. However, I cannot seem to get the writing process to happen.
At this point, I’ve got naked SOICs in a spring-loaded adaptor, but I first tried connecting to an ISP header on-target. I discovered a schematic error there and found that the +12v rail was connected to the ISP VCC line, which is why I’m concerned I may have damaged the programmer. Valid concern?
I would wholeheartedly agree that I fried the programmer except that I’ve also got an Arduino UNO here setup as a programmer, and that isn’t working either, which is causing me to suspect operator error somewhere.
Command I’m trying and results below:
C:\WinAVR-20100110>avrdude -v -c stk500 -P com6 -p t44 -U flash:w:main.hex
avrdude: Version 5.10, compiled on Jan 19 2010 at 10:45:23
Copyright (c) 2000-2005 Brian Dean, [bdmicro.com/](http://www.bdmicro.com/)
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\WinAVR-20100110\bin\avrdude.conf"
Using Port : com6
Using Programmer : stk500
AVR Part : ATtiny44
Chip Erase delay : 4500 us
PAGEL : P00
BS2 : P00
RESET disposition : possible i/o
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 6 4 0 no 256 4 0 4000 4500 0xff 0xff
flash 65 6 32 0 yes 4096 64 64 4500 4500 0xff 0xff
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : STK500V2
Description : Atmel STK500
Programmer Model: STK500
Hardware Version: 15
Firmware Version Master : 2.10
Topcard : Unknown
Vtarget : 4.5 V
SCK period : 1.1 us
Varef : 0.0 V
Oscillator : 3.686 MHz
avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Trying to just read the device ID in AVRstudio, I get the following:
Timestamp: 2012-04-30 21:36:03.812
Severity: ERROR
ComponentId: 20100
StatusCode: 1
ModuleName: TCF (TCF command: Device:startSession failed.)
Failed to enter programming mode. ispEnterProgMode: Error status received: Got 0xc0, expected 0x00
Other things I’ve tried:
In case my SOIC adapter had a problem, I tried using the programmer to upgrade my Arduino Bootrom via the arduino ISP header, similar results.
As mentioned, I’ve tried using the arduino as a programmer, similar results.
Going through so many online tutorials, I’ve been confused about the -c option to avrdude, so I’ve tried many options: stk5000, avrisp, avrisp2, etc.
From looking through a lot of debugging help, it looks like mis-wiring is the common problem here, but I assure you I’ve triple- and quadruple-checked my connections. I’ve probed from the back of the Pololu board all the way to the pins in the SOIC socket to verify all connections are correct and have good contact throughout.
Anything else I’ve missed?