Electronic – arduino – Wrong signature from ATMEGA8-16PU after setting fuses with avrdude

arduinoatmegaicsp

I am lost in loading bootloader for Arduino Single Sided on ATMEGA8-16PU.
Here is my problem.

  1. I made the Arduino Single Sided V3

  2. Placed ATMEGA8-16PU in the board and attached it to the Parallel Programmer and attached external 9V battery.

  3. Accessed the controller using avrdude using command line and it returned correct signature 0x1e9307.

  4. I executed this command avrdude -p atmega8 -c dapa -P lpt1 -U lock:w:0xff:m it worked well. Everything was fine till this point and controller returning correct signature.

  5. Then this avrdude -p atmega8 -c dapa -P lpt1 -U hfuse:w:0xca:m -U lfuse:w:0xdf:m and suddenly after execution of this command controller was returning wrong signature 0x000012.

What is wrong? I cannot go further? Why it is returning the wrong signature?

But I noticed something odd, controller was not returning 0xffffff it means it is not bricked, its alive and hence returning signature whatever it is.

Maybe the default baud-rate of programmer is not matching anymore with the baud-rate change in controller for different clock source.

What should I do ?

Best Answer

Looking at:

http://frank.circleofcurrent.com/fusecalc/fusecalc.php?chip=atmega8&LOW=DF&HIGH=CA&EXTENDED=FF&LOCKBIT=FF

I see that you've turned off all of the CKSEL bits, which seems to select "external clock". Supplying a square wave to XTAL1 on your AVR might work.