Pages: [1]   Go Down
Author Topic: [REQUEST/SUGGESTION] Bootloader auto-upgrader  (Read 948 times)
0 Members and 1 Guest are viewing this topic.
Pisa, Italy
Offline Offline
Newbie
*
Karma: 0
Posts: 8
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi, since the new Arduino Uno uses a new bootloader which is compatible with older boards too will be great to give the ability to upgrade to non advanced users too.
I already did succesfully the upgrade by my self however I'd like to suggest a "total software" procedure for the upgrade.
I have also a Bus Pirate which is based around a pic and uses a bootloader too. For this particular piece of hardware the upgrade to a new bootloader can be done via a transitional firmware which is normally uploaded with the bootloader and then a serial console is made available by that.
In this console the user is asked to confirm the bootloader upgrade and when responded affirmatively it proceeds to overwrite the old bootloader with the new one.
At this time new firmware (sketches for us) can be uploaded with new bootloader.

As can be noted no programmer is involved, only serial communications (which surely can be handled with a GUI).
I'm assuming that a similar procedure can be implemented on atmegas too, so maybe someone can implement such a upgrader.
Logged

SE USA
Offline Offline
Faraday Member
**
Karma: 41
Posts: 3783
@ssh0le
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

you can use an arduino as a programmer, upload a sketch, hook 4 wires up and your good to go
Logged


Pisa, Italy
Offline Offline
Newbie
*
Karma: 0
Posts: 8
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You mean *another* Arduino with MegaISP firmware. I knew about this possibility, what I asked is completely different: a way to upgrade the arduino by itself with just an intermediate firmware which carries the new bootloader and the ability to write it "from the inside".
Logged

SF Bay Area (USA)
Offline Offline
Tesla Member
***
Karma: 135
Posts: 6782
Strongly opinionated, but not official!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It is SUPPOSED to be impossible.  The fuse bits are set so that the bootload area may not be overwritten by programs (either boot programs or non-boot programs.)  The theory is that nothing the novice Arduino programmer does in their sketch should end up "breaking" their board.

There are some signs that it might be possible anyway; people seem to manage to corrupt their bootloaders relatively frequently.  This is under investigation.
Logged

Lancashire, UK
Offline Offline
Edison Member
*
Karma: 9
Posts: 1991
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The new bootloader might be compatible with older boards but there are question marks over its compatibility with old sketches.  I've had issues and resorted back to the old bootloader and I'm not the only one on here to have reported problems.
Logged


Portugal
Offline Offline
God Member
*****
Karma: 6
Posts: 962
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The new bootloader mis-configures one of the timers and that error is not correct by the code that is inside the arduino init core.
Logged

Pages: [1]   Go Up
Jump to: