# Reduce the size of the Arduino bootloader?

Is there any way of reducing the size of the preloaded Arduino bootloader, to save some bytes for the program?

• did you mean the boot loader or the libraries that come with the Arduino IDE? – james Apr 19 '13 at 16:48
• If you mean that you want to use the same firmware, then no. If you want to use another bootloader, or no bootloader at all, then there's a series of questions on that. – Polar Apr 19 '13 at 20:07
• You ask abou the Arduino, but the link you provided is for the USB to Serial chip on the board, not the main processor. So can you clarify what you are trying to reduce the size of? – baldengineer Apr 20 '13 at 18:39
• To those people closing this as off-topic, if you wish to get the faq changed to remove the reference to firmware, I would suggest that you start a Electrical Engineering Meta discussion. – Mark Booth Apr 30 '13 at 8:07
• Thanks @DaveTweed - but it might have helped powtac if you had mentioned this sooner rather than voting to close without comment. If a question is below quality standards then the questioner should be encouraged to improve it rather than just closing. That's why the [ask], [answer], [about] and [faq] comment link markup options are so useful. They allow you to very quickly and easily point people in the right direction, i.e. How to Ask, How to Answer, tour & faq. – Mark Booth Apr 30 '13 at 12:02

There is an actively developed free and open-source Arduino bootloader / firmware called OptiBoot, that might be of interest. From their site:

Optiboot is a quarter of the size of the default bootloader, freeing 1.5k of extra space.

Many Arduino / clone boards now ship with OptiBoot instead of the classic Arduino firmware, though not necessarily with the latest and greatest version of OptiBoot. Existing boards can also be upgraded with OptiBoot if desired, procedures are documented at the linked site.

Also worth a look are the various bootloader enhancements on the AdaFruit web site. Not having personal experience with these, I can't really say much about AdaBoot, though.

• I've been using the AdaFruit bootloader. Pretty happy with it, and the fact that it is in C lets me modify it more easily to suit my needs. – angelatlarge Apr 30 '13 at 8:18

It is possible to bypass the Arduino firmware (bootloader) by flashing your programs with another programmer (e.g. the USBtinyISP programmer)

As far as I know you can still use the Arduino IDE to write your program. But you have to install a "plugin" so you can directly flash your code to the board which makes smaller programs.

But:

You will not be able to flash using USB. You have to re-flash the Arduino bootloader using the USBtinyISP. (for me it worked all well and I had no problems at all)

Hope that helps

• The "You will not be able to flash using USB" comment is a bit misleading: USBtinyISP works over USB, so technically it is flashing over USB – angelatlarge Apr 30 '13 at 16:23