Having problems programming the SVP-1284

Yet another update:
Switched to avrdude 5.6 and now I can program without the -D option. However I get an error message but the programming seems to work (tried a few different examples). I still see the " cannot get connection status" message but then it proceeds to read the hex file and write it.

avrdude: erasing chip
avrdude: stk500v2_command(): unknown status 0x80
avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: reading input file "test.hex"
avrdude: input file test.hex auto detected as Intel Hex
avrdude: writing flash (3302 bytes):
[deleted the rest]

Another update:
Finally got a verification error on the download. I removed the -D and ran it again to erased the flash. I then put the -D back so avrdude would not fail and was able to program again. Using chip erase is doing something odd that causes the programming to fail.

Update:
I added the -D option to the avrdude command line and now it programs. Not sure why it works, the -D option disables the auto erase. I wonder if I and going to have other issues later???

Hi,

I power-up (vbatt=9v) the board and ran the demo, everything worked include the USB port test. Then I tried loading a simple LED test program using Windows 7, WinAVR-20100110, AVRdude 5.10 and using COM7 which is Pololu Orangutan SVP Programmer.

I get the following message when I run avrdude:

Launching C:\WinAVR-20100110\bin\avrdude -pm1284p -cavrispv2 -PCOM7 -Uflash:w:test.hex:a
Output:

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9705
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: stk500v2_command(): unknown status 0x80
avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status

avrdude done. Thank you.

avrdude finished

The chip did get erased since the demo program no longer runs. I tried several other avrdude programming configurations but no luck.

The blue power led and green usb led are on. The usb led flashes a bit when I run avrdude but no other leds flash (red supposed to?).

The hardware id fro the COM7 is:
USB\VID_1FFB&PID_0087&REV_0102&MI_00
USB\VID_1FFB&PID_0087&MI_00

Looks like there is a 1.02 version of the firmware.

Any ideas?

Mike

I think I found the problem. The default chip erase delay is too short. The current value in avrdude.conf is 9000us and should be 55000us for the ATmega1284P.

I found the solution on this site: mail-archive.com/avrdude-dev … 01966.html

I’ll try this tonight.

Mike

I’m glad I was able to answer your question before you asked it. :smiley:

I filed that bug report in December because I noticed some extra error messages in the output of avrdude when I was programming the Orangutan SVP-324. You can see the full thread here:

savannah.nongnu.org/bugs/?28344

Thank you for reporting this problem to us. I was aware that there was a new version of WinAVR which came out in January but I had not gotten around to trying it.

There are three alternative workarounds for this problem. In order by my preference, they are:

Option 1: In avrdude.conf, change the chip erase delay for the m1284p and m324p both to 55000. This makes avrdude wait longer before giving up on the chip erase operation. The file is located in C:\WinAVR-20100110\bin\ in Windows and /etc/ in Linux.

Option 2: Use avrdude 5.6 (which is included in WinAVR-20090313). This version works fine for the ATmega324p and ATmega1284p despite the incorrect chip erase delay in avrdude.conf, because it was programmed to continue with the flash programming even if the chip erase operation timed out.

Option 3: Whenever you want to program flash with avrdude, first issue a command with the “-e” option to just erase the chip, then issue a command to program the flash using the “-D” option so it doesn’t try to erase the chip again. The first command will time out and give you an error message but nonetheless succeed in erasing the chip. For example:

avrdude -c avrisp2 -P COM5 -p m1284p -e
avrdude -c avrisp2 -P COM5 -p m1284p -U flash:w:lcd1.hex -D

–David Grayson