Home » Projects » AVReflash


AVReflash is an application to reprogram an AVR through it's bootloader. And I've also included a bootloader that should work on most all bootloader-capable AVRs. The bootloader will work as long as you modify the RxChar() and TxChar() function to work with the interface you have. The functions must remain inline, however. So far, the atMeaga128 and the atMega64 have been tested.
The idea and part of the protocol originated from MegaLoad. However, as the author was unwilling to release the source code to the public, I went ahead and wrote my own bootloader and recoding app.

The code is being presented here for people to play with. I keep saying I will enhance the code and clean it up, but it doesn't look like it's going to happen anytime soon, so I might as well throw it out there.


The source for the bootloader can be freely copied and used as long as you acknowledge me as the author. The source for the bootloader programmer, avreflash, is protected under the GPL.


I am also including various header files that will be released with future versions of avr-gcc, just in case you aren't using a contemporary version of avr-gcc. Finally, let me know what you think and if you make any enhancements, or add support for various other input methods, please let me know.

To Avoid Headaches:
Make sure your fuse bits are set correctly. Make sure your BOOTLOADER_START is set correctly. Check the Makefile for some examples.

How To Use

  1. avreflash
    download, uncompress, make install
  2. bootloader
    download, uncompress, play with makefile, make, upload. If you have a jtag-ice with avarice, use 'make upload' to upload. No docs yet, but it should be fairly easy to follow.


bootloader - Reza Naima <reza@reza.net>
avreflash - Reza Naima <reza@reza.net>, Jake McGuire <jake@boom.net>


Look at the top of this page.