Flashing Bootloader Into Arduino UNO R3

by nicoo in Circuits > Arduino

37234 Views, 31 Favorites, 0 Comments

Flashing Bootloader Into Arduino UNO R3

_MG_1655.JPG
_MG_1657.JPG
_MG_1656.JPG
I bricked my arduino... again. And now I am out of pre-programmed chips. Time to flash bootloaders myself...

Luckily I have a USBtinyISP (v2.0). I had never used it though and I managed to struggle to load a bootloader into my arduino. So, for your (my) reference, here are the steps that allowed me to flash a batch of ATMega328 (and ATMega328p).

For this instructable you will need:
- 1 x arduino board
- 1 x USBtinyISP (pay about 10$ for it on ebay)

References:
http://www.ladyada.net/make/usbtinyisp/download.html
http://www.ladyada.net/make/usbtinyisp/avrdude.html



Command Line Options for Avrdude

_MG_1657.JPG
I performed said steps on a Windows box (running XP), so it is possible to do this on a PC ! The command lines should / must be exactly the same on a Linux box or an OSX box.

The arduino IDE installed on my box is arduino-1.0.1

In a terminal (a DOS prompt), cd into the directory arduino-1.0.1, then run:

hardware/tools/avr/bin/avrdude.exe -C hardware/tools/avr/etc/avrdude.conf -b19200 -c usbtiny -p m328p -v -e -U flash:w:hardware/arduino/bootloaders/optiboot/optiboot_atmega328.hex -U lock:w:0x0F:m -F

where:
  avrdude.conf: configuration file
  usbtiny: type of programmer (USBtiny)
  m328p: type of chip to program (ATMega328p)
  optiboot_atmega328.hex: magic file (bootloader) for Arduino UNO R3
  -F: force (for ATMega328 chips which are the same as ATMega328p for flashing purposes but are different enough so that they don't have the same signature as ATMega328p chips)

Attached is the avrdude output (avrdude.txt), enjoy...


Voila !

Downloads