And I want to add another bug with avrdude (or USBasp). I see it when I work with AT90S2313, it is legacy chip that was replaced with ATtiny2313. I can read flash only once, when I try to read it for second time, I get an error. I have to replug my USBasp programmer and I can read flash again. It is 100% repeatable pattern.
Read flash of AT90S2313, first time, we can read it:
avrdude: set SCK frequency to 187500 Hz
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x588460
avrdude: Expected signature for AT90S2313 is 1E 91 01
The original post was with USBtiny with firmware 1.04. I upgraded USBtiny to 1.07 and I still can observe this problem.
To find USBtiny firmware version:
$ sudo lsusb -v | grep -A2 0x1781
idVendor 0x1781 Multiple Vendors
idProduct 0x0c9f USBtiny
bcdDevice 1.07
And I want to add another bug with avrdude (or USBasp). I see it when I work with AT90S2313, it is legacy chip that was replaced with ATtiny2313. I can read flash only once, when I try to read it for second time, I get an error. I have to replug my USBasp programmer and I can read flash again. It is 100% repeatable pattern.
Read flash of AT90S2313, first time, we can read it:
$ sudo avrdude -c usbasp -p at90s2313 -U flash:r:xx.bin:r -F -B5
avrdude: set SCK frequency to 187500 Hz
avrdude: AVR device initialized and ready to accept instructions
Reading | ####### ####### ####### ####### ####### ####### ####### # | 100% 0.01s
avrdude: Device signature = 0x1e9101
avrdude: reading flash memory:
Reading | ####### ####### ####### ####### ####### ####### ####### # | 100% 8.19s
avrdude: writing output file "xx.bin"
avrdude done. Thank you.
Try again, and we have an error, target doesn't answer:
$ sudo avrdude -c usbasp -p at90s2313 -U flash:r:xx.bin:r -F -B5
avrdude: set SCK frequency to 187500 Hz
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x588460
avrdude: Expected signature for AT90S2313 is 1E 91 01
avrdude done. Thank you.