Repair Dead AVR's - Attiny Fusebit Doctor (HVSP)

Introduction: 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.

Step 1: 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

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.

Step 3: Jumper Setting

You can find two jumpers on board:
chip erase – permit to erase whole flash memory. If lockbits are enabled, there is no possibility to set new fusebits. And there is only one way to disable lockbits – by erasing whole flash. Jumper close – permission to erase flash
unknown signature – it happens very rare, but it happens, that uC has erased signature. Signature, calibration bytes, and other data are not permanently stored in uC structure and they can be accidentally erased due to power supply spikes during programming or power cycling. Generally signature will be read as FF FF FF, but chip will work good, flash can be readed and written. If signature will not match to one from doctor database (FF FF FF or 00 00 00 too), closing this jumper will write a universal fusebits pack which will mess oscillator options and such, but will repair functionality of reset (disable RSTDISBL) and ISP programming (enable SPIEN). Microcontroller will be possible to further repair on SPI normal programmer. DO NOT use this option with Attiny11 or Attiny15.

Step 4: Download

Fusebits: internal 4MHz clock not divided by 8. Will be good to select the “fast rising power” too.

ATTENTION: FIRMWARE IN BETA VERSION. I was not able to test all of the mentioned uC’s, so if something is going bad, please contact me and i immediately make corrections in code.

DOWNLOAD eagle 5.4.0 project files, PDF & PNG schematic and PCB’s

and

HEX & BIN beta firmware.

Project site: AVR Attiny Fusebit Doctor (HVSP) - check for code update

Coming soon: AVR Atmega Fusebit Doctor (HVPP)

Be the First to Share

    Recommendations

    • Big and Small Contest

      Big and Small Contest
    • Game Design: Student Design Challenge

      Game Design: Student Design Challenge
    • Make It Bridge

      Make It Bridge

    24 Comments

    0
    jagathselvan
    jagathselvan

    2 years ago

    can I try with the steps out to cure the ATMEG640 with a universal programmer, any thoughts on this. And I'm holding a ASIX Presto (hope it as HVPS in it).

    0
    AdamT165
    AdamT165

    Question 5 years ago

    Can I use an atmega 328p instead of attiny2313?

    0
    Josehf Murchison
    Josehf Murchison

    Answer 5 years ago

    Well it wont plug and play the atmega 328p is 28 pins and the attiny 2313 is 20 pins. But if you are asking if you wire the circuit board for atmega 328p will it do the same job, then yes. Just search programming attiny with arduino uno.

    0
    Mic100
    Mic100

    10 years ago on Introduction

    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

    I use the LED mode with out terminal is very fast and simple .
    Or for difficult cases, I use the BASECOM AVR Terminal with that 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

    When you want using the serial terminal to connect RX TX and GND pins on the 3 pins of FUSE DOCTOR PCB

    Be careful you have to cross the RX wires goes on TX of the Doctor card and TX goes on RX for it be recognized on BASCOM AVR Termnal


    Bests regards Mic

    0
    manekinen
    manekinen

    12 years ago on Introduction

    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
    0
    jjpl2001
    jjpl2001

    Reply 10 years ago on Introduction

    Well, thanks dude!! Was What I was looking for!

    0
    kasamiko
    kasamiko

    Reply 12 years ago on Introduction

    Hi manekinen,

    Is the link for the above project still up?


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

    TIA

    0
    manekinen
    manekinen

    Reply 12 years ago on Introduction

    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 :)

    0
    sidraa
    sidraa

    12 years ago on Introduction

    Exist perheps non BETA SOftware, and how is like the fuse setings for 2313
    Ivan

    0
    manekinen
    manekinen

    Reply 12 years ago on Introduction

    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 :)

    0
    sidraa
    sidraa

    Reply 12 years ago on Introduction

    Thank You for answer but I still don't know the Fuse bits settings for Atiny2313.
    Regards Ivan

    0
    chaserled
    chaserled

    Reply 11 years ago on Introduction

    Hi , the fusebit for Atiny2313 = lfuse :w: 0x64:m
    hfuse:w:0xdf:m
    efuse:w:0xff:m

    0
    manekinen
    manekinen

    Reply 12 years ago on Introduction

    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

    0
    Ironaxe
    Ironaxe

    11 years ago on Introduction

    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?

    0
    manekinen
    manekinen

    Reply 11 years ago on Introduction

    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)

    0
    aurbo
    aurbo

    12 years ago on Introduction

    Will NTE159's and NTE123AP work in place of the BC557 and BC547?

    0
    eyulnt
    eyulnt

    12 years ago on Introduction

    I'm still waiting for ATTiny2313, I have mistake by make the RESET pin became I/O Pin. So my ATTiny2313 get Locked......

    0
    insane-36
    insane-36

    13 years ago on Introduction

     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.

    0
    manekinen
    manekinen

    13 years ago on Introduction

    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.