Wrong fuse bits set

I was working with programming the atmega328p and was programming it using the USBasp I just made. I uploaded two programs with a successful upload, but then I mistakenly changed the lower fuse byte from 0XEF to 0XE1. The value 1 refers to a reserved bit and no clock bit in the datasheet. Now after that, my program stopped working and now I don't know how to set that. I have seen the oscillator method but it didn't work for me. Kindly suggest me some technique that will work 100% to reset my fuses back. Kindly help

What about USBasp? You can run command from CLI. Does not work?

Here is the command, just in case:

avrdude -pATmega328P -PUSB –cUSBasp -Ulfuse:w:0xEF:m

You mean by writing 0xE1, you selected "Reserved" option?
image

I think you will need a high-voltage programmer to rescue the chip.


I have this one. Will this work?

I don't know, I've never used one. This ChipMark2 is insanely expensive. It should do the miracles for that price. Maybe you have the user guide. Personally, I would rather buy a new chip.

If ISP programming does not help then parallel programming should, like @amazed suggests.
You wrote you have USBasp. Did you even try it? It would be nice to read some answer at least, if somebody is trying to help. Something like: "I don't care, I want to do this by other way."

Yes, actually I have tried that using an external oscillator at XTAL, and in the first case it worked. I uploaded the blink example but the led was not blinking. Thus I went on changing lock bits. Suddenly my avrdude crashed and my all fuse bits set to one. After that, I tried again and again but didn't work. I used another chip to check if it isn't the issue of the programmer but it wasn't, as the new chip worked well. The oscillator method didn't work this time. Now I want to erase the chip completely to reset. I have to go to some lab for this programmer.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.