Pages: [1]   Go Down
Author Topic: Identifying boot loaders  (Read 371 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 49
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Is there any way to read a bootloader from program space? 
There seem to be innumerable slightly different versions of
eg: Optiboot, and since I'm hitting what appears to be a
bootloader bug I'd like to try to identify which bootloader
I'm actually using.  Bootloaders don't seem to have any
sort of sign-on string.

Thanks - Will
Logged

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

Quote
Is there any way to read a bootloader from program space? 
No; the memory protection bits are currently set to disallow this :-(

Quote
I'd like to try to identify which bootloader I'm actually using.
You can do this during a "verbose" upload.  Somewhere in that log (near the beginning) is a section that looks like:
avrdude: Recv: . [03]
avrdude: Recv: . [10]
         Hardware Version: 3
         Firmware Version: 4.4
avrdude: Send: A [41] . [84]   [20]
avrdude: Recv: . [14]

The number in the "Firware Version" line is ... the optiboot bootloader version.
Very old Unos may show 3.3, current production version is 4.4, and the latest optiboot repository has 5.0.
(unfortunately, if someone has built a custom version of optiboot, they PROBABLY didn't change the version number.)
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 49
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Many thanks - that explains why avrdude in terminal mode gives a certain amount of information,
but always crashes out when I try to read the memory.

I've got the firmware version number from avrdude - I couldn't work out which firmware it was,
so knowing it's the loaded firmware is extremely helpful.

Thanks again - Will
Logged

Pages: [1]   Go Up
Jump to: