What is the Arduino Bootloader?

The term "bootloader" is often mentioned in guides or troubleshooting threads where people are struggling to program their device. But what actually is a bootloader? and why does an Arduino need one?

The bootloader occasionally referred to as firmware is essentially a small hex file that is stored in a specially designated section of memory in the microcontroller. It allows the device to be programmed via the serial port which means rather than having to use an external AVR Programmer all you need to program it is a USB cable.




 

When the device is powered on or reset on this hex code is ran first before the stored user program. This code monitors the devices UART pins for a particular sequence of bytes which indicates an update or reprogramming of the bootloader, if this sequence of bytes is not detected then the device will run the code stored in the user memory. 

Bootloaders are great for boards used in prototyping or situations where many iterations of code are used and tested. It makes programming the microcontroller quicker and easier than using an external programmer. Although extremely useful there are some tradeoffs to using a bootloader. It can take up valuable memory when using lower tier microcontrollers and can also make the boot process longer.

Previous article How to Connect to a Raspberry Pi Remotely Using SSH
Next article How to Flash an Operating System onto a MicroSD Card

Check out our latest products...

A-Star 32U4 Prime LV with microSD - Derivative Boards

A-Star 32U4 Prime LV with microSD

£31.00 inc VAT
£25.83 ex VAT
A-Star 32U4 Prime LV - Derivative Boards

A-Star 32U4 Prime LV

£25.99 inc VAT
£21.66 ex VAT
TFT LCD Breakout - 1.8 (128x160) (LCD-15143) - LCD Displays
Qwiic Scale - NAU7802 (SEN-15242) - Sensor

Qwiic Scale - NAU7802 (SEN-15242)

£13.99 inc VAT
£11.66 ex VAT
VEML7700 Lux Sensor - I2C Light Sensor (ID:4262) - Visible Light
Grove Base Kit for Raspberry Pi - Grove

Grove Base Kit for Raspberry Pi

£34.00 inc VAT
£28.33 ex VAT
RF Explorer Signal Generator COMBO - Other

RF Explorer Signal Generator COMBO

£337.99 inc VAT
£281.66 ex VAT
Grove - 10A DC Current Sensor (ACS725) - Grove

Grove - 10A DC Current Sensor (ACS725)

£10.00 inc VAT
£8.33 ex VAT