Burning Bootloader to Arduino Mega with Arduino Uno

Arduino Mega board is one of Arduino-based AVR microcontroller variants. It’s powered by ATMega 2560 microcontroller. One advantage of this board is more memory space availability than their 'brothers' such as Arduino Uno, Nano or Pro Mini.  It has Flash memory 4 Kb, SRAM (dynamic memory) 256 Kb and EEPROM 1 Kb, more than enough for embedded system J. So if someday you see a warning in debug window of Arduino IDE stating dynamic memory is already close to 100%, this means that you should immediately upgrade to the Arduino Mega.

If you buy a new Arduino Mega board, it should have been built in bootloader. But if you're unlucky (buy new but still blank) or malfunction, don’t worry, you can perform steps below to recovery your Arduino Mega. The steps below actually aims to burn (re-upload) new bootloader to Arduino Mega so it can functional again. Of course, it would be success if there is no physical damage (hardware) in your Arduino Mega.

Tools & Materials

Well, we started ‘How to Burning Bootloader to Arduino Mega using Arduino Uno’ tutorial with setting up necessary equipments and materials, such as:
1. Arduino Mega, as target board
2. Arduino Uno, as bootloader programmer to the target (also called Arduino ISP)
3. Female to female jumper cables (5 pcs)
4. Jumper cables female to male (1 pc)


If all tools and materials are ready, connect Arduino Mega and Uno board as shown below via ICSP port.

Step by step Burning Bootloader to Arduino Mega using Arduino Uno

Next, run your Arduino IDE then open 'Arduino ISP' sketch on File-Example-ArduinoISP menu. Watch out, do not be mistaken select COM port (check at Tools-Port, then choose Arduino Uno port instead of Arduino Mega port). Find heartbeat() function (CTRL-F) then edit delay (40); into delay (40); and upload the sketch to Arduino Uno. A few seconds later your Arduino Uno board have turned into an ISP (In sytem Programmer) board.

Next step, we will begin burning bootloader process. First, change target board to 'Arduino Mega 2560' or ‘Arduino Mega ADK' (depend on your board) while ‘Port’ setting still refer to Arduino Uno port (in Tools-Board menu). Then select the 'Burn Bootloader' in ‘Tools’ menu to starting burning process. Wait for about 10-30 seconds, then your Arduino Mega should now be filled with new bootloader. Henceforth you can upload sketch to Arduino Mega as usual.

Finish, that’s all. In addition, there are other alternative ways using USBasp board. You do not need Arduino Uno board again if you using this method. How to do this, you can read ini previous tutorial how to burnArduino bootloader using USBASP.
Next Post »