# Standalone AVR Chip Programmer

## Overview

We previously showed how to [use an Arduino + protoshield + ZIF socket to make a programmer that can burn a lot of Arduino bootloaders](http://learn.adafruit.com/arduino-tips-tricks-and-techniques/arduinoisp "Link: http://learn.adafruit.com/arduino-tips-tricks-and-techniques/arduinoisp"). In our blog comments [a user commented that he had written a stand-alone program for the Arduino called Optiloader](http://www.adafruit.com/blog/2011/08/25/tutorial-arduino-hacks-burning-bootloader-chips-using-an-arduino/ "Link: http://www.adafruit.com/blog/2011/08/25/tutorial-arduino-hacks-burning-bootloader-chips-using-an-arduino/") that is similar and might be worth checking out.

[What Optiloader does is kinda of neat.](http://www.youtube.com/watch?v=YBFUGre0hY4 "Link: http://www.youtube.com/watch?v=YBFUGre0hY4") Instead of having a computer that talks **thru** the Arduino to a chip for programming, instead the **Arduino itself** programs the chip. This means you can program chips without having a computer involved. The good news about this technique is that it is incredibly fast, you can program chips 10x faster than with a computer and without having to type anything in. The only downside is that its very specialized, once you set it up the programmer can only do one chip (in general) with one HEX file. If you want to update it, it can be a little effort to reconfigure.

However, if you are burning a lot of chips, this can be a real blessing. We can program and burn an Arduino bootloader chip in about 5 seconds. Normally with a computer you're talking 40 seconds or so. Another nice thing is that you can make it very clear when a failure has occured. Instead of reading text on a computer screen - a piezo will beep once on success. We've found that audio feedback is way more likely to be noticed than visual feedback.

[We adapted Optiloader to be more flexible - so it can program any AVR with any HEX file.](https://github.com/adafruit/Standalone-Arduino-AVR-ISP-programmer "Link: https://github.com/adafruit/Standalone-Arduino-AVR-ISP-programmer") While you don't _need_ to use an Arduino for this, we have a lot of Arduino's kicking around here so they make a handy base.

http://www.flickr.com/photos/adafruit/6140821773/

This code can be adapted for programming any AVR that can be ISP programmed (this is like 99% of AVRs) but in this example the wiring will be for the Atmega8/48/88/168/328 series and the code will be the Adaboot bootloader. If you have other chips you are programming, check the datasheet for how to wire VCC, Gnd, MISO, MOSI, SCK, RST and XTAL1 (if you need external clocking).

Info: 

- [Next Page](https://learn.adafruit.com/standalone-avr-chip-programmer/assembly.md)

## Related Guides

- [Arduin-o-Phone](https://learn.adafruit.com/arduin-o-phone-arduino-powered-diy-cellphone.md)
- [Adafruit QT Py ESP32-S3](https://learn.adafruit.com/adafruit-qt-py-esp32-s3.md)
- [Wireless Security Camera with the Arduino Yun](https://learn.adafruit.com/wireless-security-camera-arduino-yun.md)
- [Adafruit NeoDriver - I2C to NeoPixel Driver](https://learn.adafruit.com/adafruit-neodriver-i2c-to-neopixel-driver.md)
- [Adafruit Feather RP2040 Adalogger](https://learn.adafruit.com/adafruit-feather-rp2040-adalogger.md)
- [Native MP3 decoding on Arduino](https://learn.adafruit.com/native-mp3-decoding-on-arduino.md)
- [Using LittlevGL with Adafruit Displays](https://learn.adafruit.com/using-littlevgl-with-adafruit-displays.md)
- [Arcade Synth Controller](https://learn.adafruit.com/arcade-synth-controller.md)
- [Adafruit Proto Tripler PiCowbell](https://learn.adafruit.com/adafruit-proto-tripler-picowbell.md)
- [Maker Business & Manufacturing Software - Our Tips & Tricks](https://learn.adafruit.com/maker-business-manufacturing-software-our-tips-and-tricks.md)
- [Adafruit PN532 RFID/NFC Breakout and Shield](https://learn.adafruit.com/adafruit-pn532-rfid-nfc.md)
- [Adafruit RP2040 CAN Bus Feather](https://learn.adafruit.com/adafruit-rp2040-can-bus-feather.md)
- [HalloWing M4 Tombstone](https://learn.adafruit.com/hallowing-tombstone.md)
- [Adafruit Protomatter RGB Matrix Library](https://learn.adafruit.com/adafruit-protomatter-rgb-matrix-library.md)
- [Adafruit AS7343 14-Channel Light / Color Sensor Breakout](https://learn.adafruit.com/adafruit-as7343-14-channel-light-color-sensor-breakout.md)
