Go Down

Topic: Arduino Uno Bootloader (Read 749 times) previous topic - next topic

Valdrisen

Arduino Uno Rev 3
Windows Vista

The board is working nice, I love it!  I made the assumption I could buy a new ATmega328 chip and program it directly on the Uno board.  Just take the original chip out and put a new one in and run the Bootlegger program and the new chip would be ready for uploading sketches.  I tried this and got an error message about serial connection.

I've researched the Forum and the Arduino help areas and found nothing that answers the specific question:  Can a new ATmega328 chip be set up as I've described above?

If the asnwer is no, is there another board that I can purchase that will do this for me?

Thanks for any help you can give me on this.  Pj

johnwasser

When it arrives from the factory the ATmega328p is set to use the internal 8 MHz RC clock with an initial clock divider of 8 to give a 1 MHz system clock.  It also doesn't have an Arduino bootloader.  To make it run in your Arduino UNO like the chip it came with you have to 1) set the fuses to use a 16 MHz external clock, and 2) put the Arduino UNO bootloader into memory.  Both of those are done when you select Tools->Burn Bootloader.  Unfortunately the Burn Bootloader process needs an ISP or "Programmer".

If you have a second Arduino UNO you can use it as an ISP device or you can buy one for under $5 (search eBay for "USBasp").  I recommend the USBasp.  You will also need a 10-pin to 6-pin adapter because the USBasp has a 10-pin cable and the Arduino UNO has a 6-pin connector.
Send Bitcoin tips to: 1L3CTDoTgrXNA5WyF77uWqt4gUdye9mezN
Send Litecoin tips to : LVtpaq6JgJAZwvnVq3ftVeHafWkcpmuR1e

simplex

You can program a new atmega328 microcontroller, with any code you want, by using an Arduino Uno as ISP programmer.
Read this tutorial: http://pdp11.byethost12.com/AVR/ArduinoAsProgrammer.htm
If your atmega328 runs at 8 MHz, internal oscillator, simply do not attach the Crystal.

Go Up