help writing to AT90S2313 with uisp via AVR-PG1B ?

has anyone had any luck doing this? i can read the flash and eeprom and fuses via this command:

$ uisp -dprog=dasa2 -dserial=/dev/ttyS0 --download --segment=flash --rd_fuses

when i try to write, it looks like it succeeds, but then a subsequent read still shows all 'FF’s

my write command looks like this:

$ uisp -dprog=dasa2 -dserial=/dev/ttyS0 --upload if=test.hex --segment=flash -v=3 -dno-poll

which results in:

Atmel AVR ATtiny2313 is found.

Page Write Disabled

FLASH Write Delay (t_wd_flash): 11111 us

EEPROM Write Delay (t_wd_eeprom): 11111 us

Uploading: flash

(total 128 bytes transferred in 1.60 s (80 bytes/s)

sure looks like success to me, but if i then read again, nothing has changed.

ideas?

thanks!

–Rob*

btw, this is to program an ATTINY2313-20PI on an AVR-IO-B dev board via the ICSP port.

also, if i add --verify to the uisp line, it fails to verify on every single byte:

$ uisp -dprog=dasa2 -dserial=/dev/ttyS0 --erase --upload if=test.srec --verify -v=3 -dno-poll

Reset inactive time (t_reset) 1000 us

AVR Direct Parallel Access succeeded after 0 retries.

Vendor Code: 0x1e

Part Family: 0x91

Part Number: 0x0a

Atmel AVR ATtiny2313 is found.

Page Write Disabled

FLASH Write Delay (t_wd_flash): 11111 us

EEPROM Write Delay (t_wd_eeprom): 11111 us

Erasing device …

Reinitializing device

AVR Direct Parallel Access succeeded after 0 retries.

Vendor Code: 0x1e

Part Family: 0x91

Part Number: 0x0a

Atmel AVR ATtiny2313 is found.

Page Write Disabled

FLASH Write Delay (t_wd_flash): 11111 us

EEPROM Write Delay (t_wd_eeprom): 11111 us

Uploading: flash

(total 128 bytes transferred in 1.60 s (80 bytes/s)

Verifying: flash

#flash error at address 0x0: file=0x0a, mem=0xff

flash error at address 0x1: file=0xc0, mem=0xff

flash error at address 0x2: file=0x22, mem=0xff

flash error at address 0x3: file=0xc0, mem=0xff

flash error at address 0x4: file=0x21, mem=0xff

flash error at address 0x5: file=0xc0, mem=0xff

what ended up working for me was AVRdude – here’s my command:

avrdude -c ponyser -p t2313 -P /dev/ttyS0 -e -U flash:w:test.srec

avrdude: AVR device initialized and ready to accept instructions

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

avrdude: Device signature = 0x1e910a

avrdude: current erase-rewrite cycle count is -70259761 (if being tracked)

avrdude: erasing chip

avrdude: reading input file “test.srec”

avrdude: input file test.srec auto detected as Motorola S-Record

avrdude: writing flash (128 bytes):

Writing | ################################################## | 100% 0.08s

avrdude: 128 bytes of flash written

avrdude: verifying flash memory against test.srec:

avrdude: load data flash data from input file test.srec:

avrdude: input file test.srec auto detected as Motorola S-Record

avrdude: input file test.srec contains 128 bytes

avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.06s

avrdude: verifying …

avrdude: 128 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done. Thank you.