Updating your Raspberry Pi bootloader is often essential for keeping the device running smoothly and whilst on a Raspberry Pi it’s not often critical, firmware updates can enhance system stability, and performance, and introduce new features. Here’s a straightforward guide on how to do it.
Table of Contents
Why Update The Raspberry Pi Bootloader?
Firmware is the low-level software embedded in your Raspberry Pi, acting as a bridge between the hardware and your software. Keeping it updated means better reliability, security, and performance. For example, you may want to update the Raspberry Pi 5 bootloader as in recent updates, it enables you to use PCI Express devices (if you want to boot your Raspberry Pi 5 from NVMe) without explicitly enabling them within your config.txt
file!
Checking Your Bootloader Version
Before updating, check your current firmware version to see if an update is necessary. Open a terminal and enter:
rpi-eeprom-update
This will tell you your current bootloader version, and the latest available on your release branch, and prompt you if an update is available.
Update Raspberry Pi Bootloader
The Raspberry Pi Foundation has simplified the update process with a few terminal commands.
Update System Packages
Keep your system’s packages up to date:
sudo apt updatesudo apt full-upgrade
Install EEPROM Update Utility
The rpi-eeprom utility should be installed by default but it’s good to check, and if for some reason it’s not, you can install the utility needed for updating the EEPROM:
sudo apt install rpi-eeprom
Update the Firmware
With the utility installed and an update confirmed to be available, we can update the firmware:
sudo rpi-eeprom-update -a
Reboot Your Raspberry Pi
Apply the update with a reboot:
sudo reboot
Verifying the Update
After rebooting, check the firmware version again to confirm the update with either of these commands:
vcgencmd bootloader_version
rpi-eeprom-update
Changing Release Branch
Usually sticking to the stable branch is the smart move, though if you want to live on the edge and run the latest branch (as you’ll see I am in my above screenshot) then you’ll want to change over to latest
. There are 2 quick ways to achieve this.
Using raspi-config
To change this value in raspi-config
you’ll want to run:
sudo raspi-config
Then go to 6 Advanced Options
-> A5 Bootloader Version
and select either E1 Latest
(or E2 Default
if you wish to go back to the defaults).
Edit rpi-eeprom-update Configuration File
If you prefer to go down the text editor route, we can modify the /etc/default/rpi-eeprom-update
file directly:
sudo nano /etc/default/rpi-eeprom-update
There will usually only be one line in this file, and if you’re changing from the default it will read FIRMWARE_RELEASE_STATUS="default"
. Instead, to use latest
we want to update it to read:
FIRMWARE_RELEASE_STATUS="latest"
Once you’ve done this, you can reboot.
Conclusion
Updating your Raspberry Pi’s firmware is straightforward and often beneficial for performance, stability, and security. Regular checks for firmware updates are recommended. Automatic updates can be set up but usually, I wouldn’t recommend these as they could lead to issues down the line, especially on the latest branch.
2 comments
In the instructions above, the line for “Update System Packages”, lost a . It needs to read:
sudo apt update
sudo apt full-upgrade
or
sudo apt update && sudo apt full-upgrade
Interesting, I can see my initial post had it set correctly but a later edit screwed it up. I must have fat fingered it :D Thanks for pointing it out, fixed now!