AVR_Rescue_board.png (26366Bytes)
AVR_Rescue_shield.png (30007Bytes)
hvfuse.pde (4296Bytes)
HVRescue_Shield11.pde (12138Bytes)
hv_rescue.pde (1983Bytes)
HVRescue_Shield.brd (30899Bytes)
HVRescue_Shield.sch (121237Bytes)
Summary
This blog post contains my build of a "HV Rescue Shield" by MightyOhm. The High-Voltage Rescue Shield is a high-voltage programming shield that fits on an Arduino. The Rescue Shield works on 28-pin ATMEGA ICs and on 20-pin ATTINY2313 ICs. My use/instructions for now only concern resetting the LFUSE (clock fuse) so that the IC can be used with a 16MHz crystal.
Introduction
I bricked my $3 µC IC on my first attempt at programming. Recently I found some DIY AVR HV programmers that could be made from stuff in my lab.
EagleCAD Schematic/Board and Arduino Code (.pde file)
The rescue shield can be built on a single-sided board if a few jumpers are used on the top side:
https://www.robotshop.com/letsmakerobots/files/AVR_Rescue_board.png
https://www.robotshop.com/letsmakerobots/files/AVR_Rescue_shield.png
The official v2 code: https://www.robotshop.com/letsmakerobots/files/HVRescue_Shield11.pde
Comments: The official version 2.0 is available in EagleCAD, but uses a voltage booster IC. I don't have those in my lab, so I'm using a transistor.
Code: I played around with the version 1 Arduino code, and the version 2 Arduino code. The version 1 worked with a transistor and external High-Voltage source, but the version 2 supports ATTINY2313. Clearly I need to merge the versions or at least be certain that the versions will work together.
The original v1 code (not for ATTINY2313): https://www.robotshop.com/letsmakerobots/files/hvfuse.pde
My sequence in development to reset the LFUSE to 0xFF (16-20MHz XTAL): https://www.robotshop.com/letsmakerobots/files/hv_rescue.pde
Results: The HV Shield PCB has been fabricated on the Valkyrie-clone CNC; the PCB has not been soldered nor tested. My soldering iron's last tip turned to dust so I cannot complete the shield for at least another day.
Other AVR ICs: A Russian fellow built an ATTINY HV Programmer ("Fuse Doctor") for other ATTINY chips, but not ATTINY2313. In the Fuse Doctor, an ATTINY2313 µC is used as the programmer brain instead of using an Arduino for that task.