Using HABL on Atmega8 The makefile must be edited, by default it will compile for atmega88. Find: MCU=atmega88 Change it to: MCU=atmega8 Then run: make clean make Programming cable http://www.site.uottawa.ca/~jdesa066/avr_getting_started4.html I had to add support for my programmer cable in "C:\WinAVR\bin\avrdude.conf". ----------------------------------------------cut---------------------------------------------- programmer id = "dapa"; desc = "Programming Cable, http://linuxfocus.org/English/November2004/article352.shtml"; type = par; reset = 16; sck = 1; mosi = 2; miso = 11; ; ----------------------------------------------cut---------------------------------------------- High fuse byte For boot loader reset. BOOTRST shall be 0 For boot loader size 512 words: BOOTSZ1 shall be 0 BOOTSZ0 shall be 1 All other fuse bits as default. So high fuse byte for atmega8 shall be in bin 11011010, in hex: 0xDA Write one byte 0xDA in a file called 0xDA.bin then: avrdude.exe -p m8 -c dapa -U hfuse:w:0xDA.bin:r -u Low fuse byte To use 8MHz internal clock CKSEL3..0 shall be 0100. All other fuse bits as default. So low fuse byte shall be in binary 11100100, in hex e4 Write one byte 0xE4 in a file called 0xE4.bin then: avrdude.exe -p m8 -c dapa -U lfuse:w:0xE4.bin:r -u If external 8 MHz Osc is available use 0xEE instead. Downloading the program tro flash write avrdude.exe -p m8 -c dapa -U flash:w:habl.hex If an external OSC is used and it is not 8 MHz. Then baudrate might not be the expected 19200. With a 16 MHz external oscilator it gives 38400 and the "3 sec" time when habl waits for 5 esc is only 1.5 seconds.