Boot Bot Arduino Bootload Shield

The Boot Bot Shield lets you burn the arduino boootloader onto a blank Atmega 328 chip. The bootloader is that magic piece of software that turns a mundane chip into the open source programmable miracle known as the arduino. Blank chips cost a few dollars less per chip than bootloaded ones. With the Boot Bot you will have no need for all that pre-bootloaded extravagance. Once completed, this board will allow you to use your arduino as an ISP programmer that can burn the arduino bootloader onto your raw chips!

Arduino Bootload Shield

Update: The Boot Bot has been entered into the Arduino Challenge. Please Vote!

Check out this project and others at Revolt Lab

I have entered this instructable in the Shopbot contest! If I win, I will use the Shopbot to make the armor and turret system for my power wheels mobile rocket launcher!

Step 1: Materials

To make a Boot Bot you will need:

breadboard

wires

atmega 328 chip

(2) 22pf Capacitors

(1) 10k resistor

(1) 16 MHz crystal

perfboard

male headers

28 pin IC socket or (4) 8 pin sockets

Step 2: Breadboard The Circuit

Breadboarding the circuit before you solder a final version could save you hours of frustration if you have a malfunctioning part! To test if our components all work we can follow the official arduino bootloading tutorial First, lay out your breadboard and arduino as shown in the image above. Note that the 10k resistor is connected to power and not to ground. The two capacitors are those 22pf capacitors you have ready. Remember that the notch on the end of the chip indicates the left side. See the second picture above for a closer look at the pin map of the atmega 328.

Arduino Bootload Shield circuit

Now before you follow the rest of the tutorial, finish the breadboard and go to the next step!

Step 3: Program the Arduino

This was the tricky step for me. The Arduino ISP sketch located in the examples section of the arduino drop down menu does not work! Instead you must use this version. This program works great with the duemilanove. If you have an UNO, some very minor changes to the code should get it working.

Find this cluster…

Code:
int error=0;
int pmode=0;

Put this above the cluster…

Code:
int initSent=0;

Find this cluster…

Code:
  switch (ch) {
  case '0': // signon
    empty_reply();
    break;

Change it to this…

Code:
  switch (ch) {
  case '0': // signon
    if(! initSent) empty_reply();
    initSent = 1;
    break;

 

[box color=”#985D00″ bg=”#FFF8CB” font=”verdana” fontsize=”14 ” radius=”20 ” border=”#985D12″ float=”right” head=”Major Components in Project” headbg=”#FFEB70″ headcolor=”#985D00″]breadboard

wires

atmega 328 chip

(2) 22pf Capacitors

(1) 10k resistor[/box]

 

For more detail: Boot Bot Arduino Bootload Shield


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top