I bought an ATMEGA328-PU (non-pico) and while boot-loading it on a breadboard with arduino I bricked/damaged it.
Schematics is shown in arduino. I do not exactly remember what steps I took to brick it, or is actually bricked or dead.
I use an old computer smps for power supply. Just shorting the green and black wires starts the smps.
But it gives 10-11 volt instead of 12V and 5.56 to 6V instead of 5V. I was trying to boot-load with arduino and using this PSU. I tried to save a few buck and did not use a LM7805. May be higher voltage killed my chip or trying to burn a wrong boot-loader bricked it.
Then I had to buy another at 150 Indian Rupees (nearly 2.347 US Dollar).
After searching a lot I realized I should set the proper fuse bits first and I created two Batch files. Please download the attachments.
After that I modified the boards.txt.
First setting the fuse-bits then burning the boot-loader with this modified board worked fine on the second uC that I had to buy.
Now I need to recover some loss of 150 INR. And only I can do that if I can recover my dead/bricked uC.
I tried a High Voltage Programmer as described in the forum Arduino-based AVR High Voltage Programmer | MightyOhm and also here, both are same though.
I wrote the appropriate fuse bit in the .pde file provided as:
// Desired fuse configuration
#define HFUSE 0xD9 // Default for ATMEGA328-PU
#define LFUSE 0x62
compiled and uploaded the code to the working atmega328-pu using it as the doctor chip. Everything went fine. The red led turned on, I pressed the button, led went off for a while then turned on again.
I thought it is repaired, but not.
Again I tried to set the fuse with the batch file and got the same message:
C:\Users\******\Desktop>avrdude -c stk500v1 -p m328 -P COM3 -b 19200 -U lfuse:
w:0xFF:m -U hfuse:w:0xDE:m -U efuse:w:0x05:m
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.08s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.06s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.08s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
The I added -F parameter to the batch file and got:
C:\Users\********\Desktop>avrdude -F -c stk500v1 -p m328 -P COM3 -b 19200 -U lfu
se:w:0xFF:m -U hfuse:w:0xDE:m -U efuse:w:0x05:m
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.06s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.06s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.08s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
avrdude: Expected signature for ATmega328 is 1E 95 14
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):
Writing | | 0% 0.00s ***faile
d;
Writing | ################################################## | 100% 0.16s
avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:
Reading | ################################################## | 100% 0.03s
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0x00 != 0xff
avrdude: verification error; content mismatch
avrdude: safemode: lfuse changed! Was ff, and is now 0
Would you like this fuse to be changed back? [y/n]
Suddenly I guessed my smps is not supplying 12V, so I took power from white (-5V) as GND and yellow(+12V) as Vcc. Tried again, no hope..
Then I modified the pde file and also renamed the extension to .ino.
Tried again. Observed all the gimmickry of the HVSP. Though it has been repaired.
No. Not at all.
I think HVSP is working because it is following the action sequence of lighting up-glowing off-lighting up again, at the right time.
So my chip may be faulty or dead somehow.
How do I know whether it is dead or locked? Any other resort to recover it with the basic components I have at home?
boards(ATMEGA328-PU).txt (1.14 KB)
hvfusemodified.ino (5.64 KB)
arduinos avr environment.bat.txt (100 Bytes)
setfuse_ATMEGA328dashPU.BAT.txt (100 Bytes)