Updating the Bootloader

A Bootloader is a small piece of code that runs (normally just for a few seconds) when an autopilot is powered on. One of the bootloader’s primary responsibilities is to allow easy upgrading of the main firmware (i.e. ArduPilot)

Nearly all autopilots ship with a bootloader pre-installed and most users will never need to upgrade it but there are some advantages to upgrading to the latest ArduPilot specific bootloader:

  • Bug fixes like the “Parameter Reset” issue fix included with Copter-4.0.4, Plane-4.0.6

  • The COM port name may be more recognisable. For example it may include “ArduPilot”


Updating the bootloader can potentially “brick” the board (i.e. make it unresponsive and unable to upload new firmwares). Be careful not to power down the autopilot during the update process

Where can I download the latest bootloader?

The ArduPilot specific bootloader is included within the ArduPilot firmware but it lies dormant by default. A special command must be sent to the main ArduPilot firmware to install the new bootloader.


Upgrading using Mission Planner

  • Install a recent version of ArduPilot to the autopilot (with existing ArduPilot firmware, without existing ArduPilot firmware)

  • Connect and check that the autopilot has at least 20k of free memory. Open the Data screen’s Quick tab, double click on any entry and the select “freemem”.

  • Open the Setup >> Install Firmware page and press the “Bootloader Update” button

  • Reboot the autopilot

Upgrading using QGC

The process is similar to using Mission Planner (see above) except the “Flash ChibiOS Bootloader” button is found on the Configuration (Gear icon), Firmware page


Upgrading with MAVProxy

  • In the MAVProxy terminal, type, “flashbootloader”

Extra Information