Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/felias-fogg/RescueAVR
An Arduino sketch that is able to do high-voltage programming in order to resurrect bricked AVR MCUs (you need a bit of HW on a breadboard or some special Arduino shields as well)
https://github.com/felias-fogg/RescueAVR
arduino firmware fusebit fusebit-doctor high-voltage-parallel-programmer high-voltage-serial-programmer
Last synced: about 1 month ago
JSON representation
An Arduino sketch that is able to do high-voltage programming in order to resurrect bricked AVR MCUs (you need a bit of HW on a breadboard or some special Arduino shields as well)
- Host: GitHub
- URL: https://github.com/felias-fogg/RescueAVR
- Owner: felias-fogg
- Created: 2013-10-01T11:26:13.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2024-09-10T12:46:07.000Z (4 months ago)
- Last Synced: 2024-09-10T22:56:30.324Z (4 months ago)
- Topics: arduino, firmware, fusebit, fusebit-doctor, high-voltage-parallel-programmer, high-voltage-serial-programmer
- Language: C++
- Homepage: https://arduino-craft-corner.de/index.php/2024/09/07/resurrecting-bricked-avrs/
- Size: 16 MB
- Stars: 42
- Watchers: 7
- Forks: 10
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# RescueAVR
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
![Hit Counter](https://visitor-badge.laobi.icu/badge?page_id=felias-fogg_RescueAVR)
[![Build Status](https://github.com/felias-fogg/RescueAVR/workflows/Build/badge.svg)](https://github.com/felias-fogg/RescuAVR/actions)This sketch can resurrect many classic AVR chips with wrong fuse settings using high-voltage (HV) programming.
Sometimes, you may erroneously set a fuse bit, such as the clock source bit, and then the chip does not respond to ISP programming anymore. In this case, HV programming can help. One can easily reset all fuses to their factory setting, and then ISP programming is possible again. Note that the sketch does not implement a general HV programmer but can only perform some basic tasks, such as fuse setting and erasing the entire chip. Furthermore, you should not apply this technique "in-system" without pre-cautions. HV programming means that you apply 12 V to the RESET pin. So, if you do that "in-system," you should make sure that the RESET line is not connected to the rest of the system (e.g., by a pull-up resistor).
To do HV programming, you need an Arduino Uno, Nano, Pro Mini, Leonardo, or Mega(2560), a breadboard, a PNP/NPN transistor pair, a few resistors, many jumper wires, and an external regulated 12-volt supply. If you are the happy owner of a *RecueAVR shield* for an Arduino Uno/Mega, everything is already included and set up, including the 12 V source. You can build such a shield using the KiCAD design files in the [PCB directory](pcb/) or buy the [PCBs or a kit at Tindie](https://www.tindie.com/products/35748/). The [assembly process](pcb/assembly.md) is straightforward and involves only THT components.
Furthermore, the sketch is also an alternative firmware for [manekinen's Fusebit Doctor](https://web.archive.org/web/20180225102717/http://mdiy.pl/atmega-fusebit-doctor-hvpp/?lang=en). The pin mapping is different between these two versions. When the sketch is compiled for an Arduino Uno, Nano, Pro (Mini), Leonardo, or Mega(2560) in the Arduino IDE, it will use the Arduino Uno pin mapping. Otherwise, it uses the pin mapping for the Fusebit Doctor. One can also force which version is produced by defining the compile-time constants `ARDUINO_MODE` or `FBD_MODE`, respectively.
By now, the sketch covers 131 different MCU types and has been tested on most of the types that are available in DIP packages.
When using the sketch, remember to set the monitor baud rate to 19200 baud (no parity, 1 stop-bit). A [user manual](docs/manual.md) for the sketch is provided in the docs folder.
The sketch uses many of the ideas and code of [MightyOhm's HV Rescue Shield 2](https://mightyohm.com/blog/products/hv-rescue-shield-2-x/) and is inspired by [manekinen's Fusebit Doctor](https://web.archive.org/web/20180225102717/http://mdiy.pl/atmega-fusebit-doctor-hvpp/?lang=en).