This is an old revision of the document!



Burning the Firmware on the USBasp Programer


Set Fusebits

# TARGET=atmega8    HFUSE=0xc9  LFUSE=0xef
# TARGET=atmega48   HFUSE=0xdd  LFUSE=0xff
# TARGET=atmega88   HFUSE=0xdd  LFUSE=0xff

Workaround for Atmega8

1. Erase:

$ sudo avrdude  -p atmega8 -c stk500v2 -P /dev/ttyACM0 -e

2. Set Fusebits

$ sudo avrdude  -p atmega8 -c stk500v2 -P /dev/ttyACM0 -U HFUSE:w:0xc9:m
$ sudo avrdude  -p atmega8 -c stk500v2 -P /dev/ttyACM0 -U hfuse:w:0xc9:m

3. Burn the Hex File:

$ sudo avrdude  -p atmega8 -c stk500v2 -P /dev/ttyACM0 -b115200 -U flash:w:usbasp.atmega8.2011-05-28.hex:i

All Comands for the AVRdude

Options:

  1. p <partno> Required. Specify AVR device.
  2. b <baudrate> Override RS-232 baud rate.
  3. B <bitclock> Specify JTAG/STK500v2 bit clock period (us).
  4. C <config-file> Specify location of configuration file.
  5. c <programmer> Specify programmer type.
  6. D Disable auto erase for flash memory
  7. i <delay> ISP Clock Delay [in microseconds]
  8. P <port> Specify connection port.
  9. F Override invalid signature check.
  10. e Perform a chip erase.
  11. O Perform RC oscillator calibration (see AVR053).
  12. U <memtype>:r|w|v:<filename>[:format]

Memory operation specification.

                           Multiple -U options are allowed, each request
                           is performed in the order specified.
-n                         Do not write anything to the device.
-V                         Do not verify.
-u                         Disable safemode, default when running from a script.
-s                         Silent safemode operation, will not ask you if
                           fuses should be changed back.
-t                         Enter terminal mode.
-E <exitspec>[,<exitspec>] List programmer exit specifications.
-x <extended_param>        Pass <extended_param> to programmer.
-y                         Count # erase cycles in EEPROM.
-Y <number>                Initialize erase cycle # in EEPROM.
-v                         Verbose output. -v -v for more.
-q                         Quell progress output. -q -q for less.
-?                         Display this usage.