Go Down

Topic: [SOLVED] Burning Arduino UNO Bootloader with AVR Dragon and AtmelStudio (Read 8825 times) previous topic - next topic


This problem is solved and this post now describes how to burn the Arduino Bootloader onto an ATMega328P with AtmelStudio using an AVR Dragon (or any other ISP).


I want to burn the Arduino UNO Bootloader with an AVR Dragon to an ATMeage328P-PU, but after everything is done I can only use the chip as a Duemilanove Board but not as an UNO.

Here is what I did:
I soldered a ZIF socket to the AVR Dragon and connected it like this:

From the AtmelStuido Help

Also I added a 16MHz Crystal into the same slots of the ZIF socket of PIN 9 and 10 of the IC (otherwise I cannot even read the device signature; If the chip was set to the internal clock this would not be needed).

After this I started AtmelStudio 6 and went to Tools->Device Programming.
There I set the ISP Clock to something low like one MHz (or even less).

Then I went to Fuses (this is probably where things went wrong) I selected the following:

BOOTSZBoot Flash size=256 words start address=$3F00
SUT_CKSELExt. Crystal Osc. 8.0- MHz; ... 16K CK/14 CK + 65 ms

And in the lower tab:



And as the last step I went to memories and selected the bootloader .hex file (arduino-1.0.1\hardware\arduino\bootloaders\atmega\ATmegaBOOT_168_atmega328.hex arduino-1.0.1\hardware\arduino\bootloaders\optiboot\optiboot_atmega328.hex).

OK, everything went fine, but if I go to the Arduino IDE I have to select Tools->Boards->Arduino Duemilanove w/ ATmega 328.

However I want to use it as an Arduino UNO.

Can anyone help me please?

Kind regards,

//edit: Clock Pins are 9 and 10 and not 8 and 9. :smiley-roll-blue:
//edit2: "westfw" provided the solution, so I edited the post so that it can be used as a tutorial.


It really shouldn't matter weither you use it as a due or uno, that specific chip is on both the r3 uno and the due. If your Arduino software on your computer is outdated it may not know that the new uno also uses that chip.

But for your case it really shouldn't matter.


You are burning the wrong .hex file.
To be an UNO, use the hex file in the bootloaders/optiboot directory.


You are burning the wrong .hex file.
To be an UNO, use the hex file in the bootloaders/optiboot directory.

Thanks, this was exactly the problem :). Everything works fine now.

Go Up