1
\$\begingroup\$

Although my question might come familiar to many Arduino developer including me, but, I am somehow lost burning bootloader to ATmega 2560. Many comments I found were related to AVRDude (never used before, maybe I should but later).

I usually use Atmel Studio with AVRISP mkII in order to flash my firmware to ATmega 2560 on a custom PCB.

Now, I need to use Watchdog timer. If I use it, MCU keeps restarting every interval I set (which is 8 seconds). After little search, i found there is a bug for some bootloaders. So, I therefore have to change the bootloader. (Correct me if I am wrong).

I can share some screenshots about my attempts;

enter image description here enter image description here enter image description here

After all this I click Program. After the process is done, Programming: Flash...OK appears. I believe it burns to the MCU. Because, my existing program is not working anymore.

At this point, in the first place, I thought, this is it. Then I flashed my own firmware (this time with watchdog timer included) using the same tool/settings as above except HIGH fuse I am using D0 instead of D8.

But again, MCU keeps resetting every 8 seconds. Means, bootlader issue persists.

What do you think?

Note that: the HEX file I am using for bootloder from the Arduino path as you can see in the screen-shot 3rd.

Note that: I have noticed after I created that question under electronics instead of Arduino SE, my apologies.

\$\endgroup\$
  • 1
    \$\begingroup\$ You should load your application program on its own via ISP without using the bootloader and see if the reset problem persists when it is only your code and your fuse settings. If that works, then you can use ISP to restore the bootloader and see if loading your program that way works. But one step at a time. \$\endgroup\$ – Chris Stratton Dec 11 '18 at 17:25
0
\$\begingroup\$

In the Arduino IDE (1.8.7 is the latest I think): Select Tools, Select the AVR ISP MKii as the bootloader. Select the correct board type (2560). Select Burn Bootloader.

Pretty simple, and it sets the fuses for you. The AVR ISP MKii does not power the board, be sure to the the USB cable to the PC connected for power.

\$\endgroup\$
  • \$\begingroup\$ Thanks, I am not using Arduino IDE. But I guess my issue is not even about the bootloader. Because, I am directly flashing HEX file as Chris mentioned. \$\endgroup\$ – Sener Dec 12 '18 at 16:32
  • \$\begingroup\$ Your screen shots are all of High, Low, and Extended fuses. The IDE sets those correctly for you when burning the bootloader. \$\endgroup\$ – CrossRoads Dec 12 '18 at 16:35
  • \$\begingroup\$ I am not using Arduino IDE. But, Arduino Core involves of course. When I buy bare metal mcu's, their fuses are different in the first place. So , I change them manually before flashing. \$\endgroup\$ – Sener Dec 13 '18 at 8:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.