Go Down

Topic: Manual bootloader (Read 484 times) previous topic - next topic

Hopelessness

Nov 16, 2011, 07:50 pm Last Edit: Nov 16, 2011, 08:38 pm by Hopelessness Reason: 1
Hi all,

First post so point me in the right direction if it's in the wrong place.

I'm into Arduino in a pretty big way right now, and have had an idea for a modification that would benefit one of my own projects no end. At present, the bootloader kicks in first, as soon as the Arduino is powered up. Now my suggestion is that it doesn't, but don't remove it. Essentially, have a button, or command etc, that calls the bootloader to allow you to update the 'firmware' for the program.

This would allow the best of both worlds for instant start up of sketches, but also keep the USB programmability.

Thoughts, and any points to anything that may already exist? I've had a look at the bootloader code and it's a bit over my head to be honest, so any help would be much appreciated.

Thanks,

Phil

madworm

You can easily change the bootloader delay yourself (optiboot).

Code: [Select]
watchdogConfig(WATCHDOG_1S);

You're free to change and recompile.
• Upload doesn't work? Do a loop-back test.
• There's absolutely NO excuse for not having an ISP!
• Your AVR needs a brain surgery? Use the online FUSE calculator.
My projects: RGB LED matrix, RGB LED ring, various ATtiny gadgets...
• Microsoft is not the answer. It is the question, and the answer is NO!

westfw

Quote
At present, the bootloader kicks in first, as soon as the Arduino is powered up. Now my suggestion is that it doesn't, but don't remove it. Essentially, have a button, or command etc, that calls the bootloader to allow you to update the 'firmware' for the program.

Actually, this is known as the "Adafruit fast boot mod" and is already the behavior on Uno Arduinos.
They only enter the bootload on "reset", which is not the same as "poweron."  (or so says the code.)

MEGA has a different bootloader and behaves differently.

Go Up