The thread at New optiboot; beta testers welcome has become rather stale; originally offered in 2011, the most important changes were integrated into the IDE and onto Uno in about the IDE 1.0 timeframe, and they fixed nearly all of the actual bugs that used to bother Arduino users.
However, development of the Optiboot bootloader has continued (rather slowly) in its own source repository, and may have features that are interesting to a small minority of users, so I'd like to continue discussion in this thread.
The Optiboot bootloader that is contained in the IDE, and that ships on Unos, is version 4.4. The current "Development" Optiboot is version 6.2, and includes the following changes. (Note that many of these are not relevant to the ATmega328 that ships with Uno.)
- Support for additional chips. Notably ATmega1284p, but also ATmega32, Atmega88, and Atmega168p
- Support for the additional uarts on chips with more than one.
- Save reset cause in a way that the application can read it.
- Adjust source and compilation options so that newer versions of gcc can be used to compile Optiboot.
- (while making sure that the core stays less than 512 bytes!)
- implement build infrastructure that makes it easier to build "custom" versions of Optiboot
- increase range of available baudrates, but also check whether the specified baudrate is likely to work.
- Move everything from Google code to Github
- Write some documentation in Wiki formatting, and attach it to the repository.
Many of the more recent and visible features were contributed by 3rd parties; the way open source is supposed to work. Yeah!