Instructables

Repair dead AVR's - Attiny fusebit doctor (HVSP)

Did you make a mistake while programming fusebits, or purposely disabled reset pin (RSTDISBL) or ISP programming (SPIEN)? No need to buy or make inconvenient HV programmer only for unlock couple of Tiny AVR’s. This Attiny fusebit HV doctor will cure your dead tiny microcontrollers, by restoring all fusebits to factory settings – nice and easy. Supports all of the serial high voltage interface AVRs, that is 8-pins: Attiny11, Attiny12, Attiny13, Attiny15, Attiny25, Attiny45, Attiny85, and 14-pins: Attiny24, Attiny44, Attiny84. This is very simple and cheap to make, the brain of device is an Attiny2313 uC, couple of resistors and transistors, and a 5V stabilizer. You need 12V stabilized supply for this. Repair begins after the button START is pressed. Button is active again after 250ms, so pressing it will reset device and start a new repair process.
 
Remove these adsRemove these ads by Signing Up

Step 1: LEDs explanation

Picture of LEDs explanation
LEDs explanation:
green on – patient successfully cured, fusebits repaired. If lockbits are enabled, just verify fusebits with factory ones – and if they ok – light up green.
red on – signature problem, can’t read, no device in socket, or no such signature in database.
green flashing – signature ok, fusebits are wrong. Lockbits enabled, chip erase permission required (read below).
red flashing – signature ok, no lockbits, but for some reason can’t write new fusebits, can’t pass verification after 10 attempts.

Step 2: How it works

Picture of How it works
Device uses the High-Voltage Serial Programming (HVSP) to repair fusebits. First of all patient is switched to HV memory programming, then we read signature and check if it’s supported. Then the chip erase is performed if user allows it. Next the lockbits are read, if they not set, patient receives new fusebits, proper for readed model. After that, fusebits are verified, and if they pass the test – this is end of work. If not, doctor will repeat write-verify cycle 10 times, and give up when no success.
Mic1001 year ago
hello,
thank you very much for fuse
I built the circuit board version 2h
it works perfectly
i wass saved 2 ATtiny2313, 1 ATTINY45, 1 ATmega8 (without terminal mode) just with LED
it helped me a lot,
before I had already tried the method clock 500KHz the input crystal without success.

I use the LED mode because I have not managed to use the terminal mode with any of these microcontrollers.

On your website you give as setting
Terminal settings:
  baudrate: 4800
  parity: none
  databits: 8
  stopbits: 1
  handshake: none
I have an emulator with USB 5-pin RS232
1 TX
1 RX
1 GND
1 +5 V
1 +3.3 V
I connect RX TX and GND pins on the 3 pins of FUSE DOCTOR PCB
it is recognized as COM7 terminal BASCOM AVR but nothing appears on the screen
when I run the reset of the microcontroller while the green LED at the end to let me know that the operation was successful .

what can i do?

Bests regards Mic
manekinen (author) 4 years ago
To everyone who wanted to fix their mega8 and tiny2313 - at least i finished my MEGA DOCTOR for mega family uc's.

Everything is on my site here:
diy.elektroda.eu/atmega-fusebit-doctor-hvpp/#eng (with english descr)

For now it only supports mega16, mega32, and mega8 and these was tested by me. Other uC's will be added as soon as i find some time to do this.

I will submit this on instructables too, but first must add some more uC's and someone must make this to confirm there are no problems.

Best regards,
Manekinen from Poland.


mega_fusebit_doctor_1.jpgterminal-atmega32-fixed.png
Well, thanks dude!! Was What I was looking for!
Hi manekinen,

Is the link for the above project still up?


I messed my ATMega128 fused bit...will this project support 128?

TIA
manekinen (author)  kasamiko4 years ago
Hi.

Server was dead, now its working :)

No M128 at this moment, this is early beta firmware. I try to add more uC's soon, i will give an update :)
sidraa4 years ago
Exist perheps non BETA SOftware, and how is like the fuse setings for 2313
Ivan
manekinen (author)  sidraa4 years ago
Hi, there is no NON-BETA soft. As far as i know, there are problems with attiny15 - so i will try to fix this and give updated soft.

People do not inform me about other problems so i guess everything except this tiny15 is ok - if so, treat next update as non-beta full working :) Without people feedback i can't say that this soft is good or not because i have tested only few of mentioned uC's :)

If you make this circuit and something will be wrong, please contact me and i try to fix the problem :)
Thank You for answer but I still don't know the Fuse bits settings for Atiny2313.
Regards Ivan
Hi , the fusebit for Atiny2313 = lfuse :w: 0x64:m
hfuse:w:0xdf:m
efuse:w:0xff:m
manekinen (author)  sidraa4 years ago
Do you ask about fusebit settings for doctor chip - 2313? See step 4 - everything is described. You must set the internal 4MHz clock, and disable CKDIV8.

That means Low fuse: E2, and High fuse: DF
Ironaxe3 years ago
Hey there. I recently Build this Project to fix a few Attiny45´s.
Everything worked well so far, except for 1 Chip i got.
It keeps showing me the Red LED, except when i put the Jumper to the No Signature Position. Then the Red and Green Led keep flashing alternating.
What could that mean and could it be possible to fix it?
manekinen (author)  Ironaxe3 years ago
Its hard to tell what is wrong, signature may be erased. Use Atmega Fusebit Doctor and check what it sends to the terminal, you can easily repair chips with broken signature with this circuit (ver 2.1x)
aurbo4 years ago
Will NTE159's and NTE123AP work in place of the BC557 and BC547?
manekinen (author) 4 years ago
eyulnt4 years ago
I'm still waiting for ATTiny2313, I have mistake by make the RESET pin became I/O Pin. So my ATTiny2313 get Locked......
insane-364 years ago
 Can this cicuit be used to repair at mega8 microcontrollers.I have bricked one athrough ponyprog programming its RSTDISBL. Or is there some idea to unprogram RSTDISBL so that ponyprog can detect the chip.

Please suggest me some ideas.
manekinen (author) 4 years ago
HI

All other avr microcontrollers uses the high-voltage PARALLEL programming. This is SERIAL, so it works only with these mentioned above.

Actually i'm working on version for atmega family (attiny2313 too) which can repair m8, m16/32, m48/88/168, m128/103/etc, tiny2313, tiny26 and such.

So stay tuned :)

And as you see this is not only schematic matter, but whole HVSP and HVPP are totally different.

If someone will make this device, please reply here or mail to me, whether it works good, or have some bugs, or can't repair some uC from list.
nice HVSP. i like it

someone told (http://yusisukmalia.wordpress.com/2009/12/03/salah-tulis-fusebit-avr-tenang/    see the comment) only connect the sick AVR (XTAL1, XTAL2, GND) pin to the healthy AVR. and restore the fuse.
i have tried, sometimes successfully and sometimes errors.
Xtal1 -> Xtal1
Xtal2 -> Xtal2
GND -> GND
what's wrong ?

i'll try your instructable :)
manekinen (author)  Rendydevara4 years ago
HI

This is true, BUT. It only helps when you set the fusebits as the external clock source, so timer555 or so will generate pulses and you be able to communicate with standard ISP again.

But think what will happen when you set the reset pin as normal I/O or disable ISP communication. Only way to repair fusebits is high-voltage programmer, which not use the ISP and forces reset with 12V and special algorithm :)


Rendydevara4 years ago
could it use for ATtiny2313, ATmega8 ? 
jman 314 years ago
Nice project! Any chance on making one for the Atmega16? I've got one that is bricked that I would like to recover at some point. I could probably figure out the schematic part, but I have no programming experience.