ok i’m guessing it’s a dodgy programmer. shame, cos it worked on lots of other stuff.
can you tell from the below if the fuses were set properly?
C:\\midipal>avrdude -B 100 -V -p m328p -c usbtiny -F -P usb -e -u -U efuse:w:0xfd:m -U hfuse:w:0xd4:m -U lfuse:w:0xff:m -U lock:w:0x2f:m
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.03s
avrdude: Device signature = 0x1e950f
avrdude: erasing chip
avrdude: reading input file "0xfd"
avrdude: writing efuse (1 bytes):
Writing | | 0% 0.00s *****failed;
Writing | ################################################## | 100% 0.11s
avrdude: 1 bytes of efuse written
avrdude: reading input file "0xd4"
avrdude: writing hfuse (1 bytes):
Writing | ################################################## | 100% 0.00s
avrdude: 1 bytes of hfuse written
avrdude: reading input file "0xff"
avrdude: writing lfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude: 1 bytes of lfuse written
avrdude: reading input file "0x2f"
avrdude: writing lock (1 bytes):
Writing | ################################################## | 100% 0.03s
avrdude: 1 bytes of lock written
avrdude done. Thank you.
C:\\midipal>avrdude -B 100 -V -p m328p -c usbtiny -P usb -e -u -U efuse:w:0xfd:m -U hfuse:w:0xd4:m -U lfuse:w:0xff:m -U lock:w:0x2f:m
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.05s
avrdude: Device signature = 0x1e950f
avrdude: erasing chip
avrdude: reading input file "0xfd"
avrdude: writing efuse (1 bytes):
Writing | | 0% 0.00s *****failed;
Writing | ################################################## | 100% 0.11s
avrdude: 1 bytes of efuse written
avrdude: reading input file "0xd4"
avrdude: writing hfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude: 1 bytes of hfuse written
avrdude: reading input file "0xff"
avrdude: writing lfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude: 1 bytes of lfuse written
avrdude: reading input file "0x2f"
avrdude: writing lock (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude: 1 bytes of lock written
avrdude done. Thank you.
C:\\midipal>avrdude -B 1 -V -p m328p -c usbtiny -P usb -U flash:w:midipal_flash_golden.hex:i -U eeprom:w:midipal_eeprom_golden.hex:i -U lock:w:0
x2f:m
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.03s
avrdude: Device signature = 0x1e950f
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: reading input file "midipal_flash_golden.hex"
avrdude: writing flash (32614 bytes):
Writing | ################################################## | 100% 7.48s
avrdude: 32614 bytes of flash written
avrdude: reading input file "midipal_eeprom_golden.hex"
avrdude: writing eeprom (1024 bytes):
Writing | | 0% 0.00s
avrdude: error: usbtiny_send: usb_control_msg: sending control message failed, win error: The I/O operation has been aborted because of either
a thread exit or an application request.
(expected 128, got -116)
avrdude: 8 retries during SPI command
Writing | ################################################## | 100% 5.70s
avrdude: 1024 bytes of eeprom written
avrdude: reading input file "0x2f"
avrdude: writing lock (1 bytes):
Writing | ################################################## | 100% 0.03s
avrdude: 1 bytes of lock written
avrdude: safemode: Fuses OK
avrdude done. Thank you.
C:\\midipal>