A beginner’s guide to burning Arduino bootloaders

arduino_bootloader_burner

When it comes to learning about microcontrollers, everyone has to start somewhere. [Lady Ada] recently posted a tutorial on burning the Arduino bootloader to standalone chips for those just getting started with the micro.

The tutorial cites a common situation, where someone is working on a project using an Arduino chip but they don’t want to sacrifice their dev board when just the micro and a few other components would do just fine. A short list of supplies is required, including an Arduino, a proto shield kit, a ZIF socket, and a blank ATmega chip.

The process is probably pretty straightforward and likely familiar to many of you out there. The ZIF socket is soldered to the board and handful of wires are added for powering and programming the new chip. The protoboard is installed on top of the Arduino like any other shield, and using a sketch that [Lady Ada] has made available, the bootloader burning process is a cinch.

It’s a useful tip for newcomers, and definitely a skill that seasoned Arduino users should have under their belts as well.

Comments

  1. fartface says:

    This is a great setup I need to share with friends that are too cheap to buy a real Atm programmer.

    I wonder if they will add it to the official Duino software package

  2. Fritoeata says:

    Brilliant!
    I was wondering about this kind of thing just the other day!
    Thanks LA!

  3. The Cageybee says:

    No need for a custom shield to do it,
    As everyone who tinkers with electronics is likely to have a breadboard, just use that.

  4. Chris says:

    I whipped up one on a homemade PCB. No need to pull out my Arduino board to hook up a shield or rig up a breadboard. Just pop the fresh chip into the target socket, hook up to computer, and burn.

  5. loans says:

    As per the arduinoISP page, (http://arduino.cc/en/Tutorial/ArduinoISP) the Uno cannot be used for this process, a fact that seems to be missing from the writeup.

    • pt says:

      the photos are of the supported arduino(s) – but we made it even more clear with this additional note!

      “…this tutorial, which is based on the ArduinoISP writeup from Arduino.cc does not work with the newest UNO Arduinos. We’ll try to figure out a workaround. Until then, use only Arduinos with Duemilanove/Diecimila/NG-bootloaders”…

    • pt says:

      i take it back! we wanted to test to see what happened with an uno, it does indeed work. we put this note on the tutorial…

      “According to the the ArduinoISP writeup from Arduino.cc, thus does not work with the newest UNO Arduinos. BUT we got it to work just fine, so not sure if the issue was fixed or its a rare error, or what.”

      • adam says:

        I had a project where i was using the 3.3v 8Mhz bootloader and had to burn it to about 8 chips, I just set mine up on a breadboard, i used my UNO to program them, In fact when i was done, we took a drawer full of old atmega8’s and burned the NG bootloader to probably 20chips.

  6. Pete says:

    I recently had the pleasure of burning an arduino bootloader onto an ATMega328. After many tutorials showing workarounds I found out I can just plug the uC into the arduino and connect the arvisp programmer. I guess the zif socket is good for producing “arduino chips”.

  7. xMob says:

    I’ve always programmed my boot loaders using 3 resistors and the parallel port.

    It’s always worked fine for me.

  8. Harald says:

    DOES NOT WORK WITH ARDUINO UNO!

    NOTE: Currently, you cannot use an Arduino Uno as an ISP programmer because the optiboot bootloader does not support this sketch. A revision for this is in progress.

  9. I already have the Adafruit Prototype Shield. I’ll use the breadboard on it instead of a ZIF socket. :)

    Much appreciated for the article. I wanted to learn how to do this. Thanks.

  10. Kai says:

    You can also very easily use a bus pirate and icsp header.

  11. I made a tutorial on how to burn the Bootloader with the AVR MKII ISP, so take a look if you decide to go that route: http://www.youtube.com/watch?v=EsLOMdu50YU&feature=youtu.be

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,382 other followers