In this guide, we will be showing you how to update the firmware on the Raspberry Pi.
The firmware of a device such as the Raspberry Pi is the layer between the Pi’s hardware and the operating system.
Without this firmware, the system won’t know how to properly boot up, utilize its CPU, or even manage its power. It is one of the crucial reasons you need to use the latest version of Raspberry Pi OS when a new Raspberry Pi is released.
For example, a Raspberry Pi 5 will not run out of the box on Raspberry Pi OS Bullseye. You would have to start the Bullseye OS on an older Raspberry Pi and force update the firmware to the latest available version.
In the following sections, we will show you how to update the Raspberry Pi’s firmware.
Equipment
Below is the list of equipment we used when updating the firmware of our Raspberry Pi.
Recommended
- Raspberry Pi ( Amazon )
- Micro SD Card ( Amazon )
- Power Supply ( Amazon )
- Ethernet Cable ( Amazon ) or Wi-Fi ( Amazon )
Optional
- Raspberry Pi Case ( Amazon )
- USB Mouse ( Amazon )
- USB Keyboard ( Amazon )
- HDMI Cable ( Amazon )
- Monitor ( Amazon )
This tutorial was latest tested on both a Raspberry Pi 5 and a Raspberry Pi 400 running the latest version of Raspberry Pi OS Bookworm.
The Standard Way to Upgrade the Raspberry Pi’s Firmware
By default, updates to the Raspberry Pi’s firmware are actually delivered through the official package repository.
These updates are the recommended ones to utilize as they are the versions of the firmware the team has determined are safe and stable to use.
For the vast majority of cases, this is the only way you should upgrade your Raspberry Pi’s firmware.
1. We must first update the package list cache before we can update the firmware.
This cache is what holds the version of packages we can install as well as where the apt package manager can download these packages. You can update the package cache by running the command below.
sudo apt update
2. Once the package list update completes, all you need to now is to run the following command.
This command will update all packages on your system, including the Raspberry Pi’s firmware, to their latest stable release. Be warned that a full-upgrade can also remove packages from your system.
sudo apt full-upgrade
3. If your Raspberry Pi’s firmware was updated during the upgrade process, you must now reboot for it to take effect.
During start up the Pi will move to using the new version of the firwmare.
sudo reboot
Using Pre-Release Firmware on your Pi
The Raspberry Pi team maintains a set of pre-release versions of the Raspberry Pi’s firmware. These releases contain various tweaks and fixes for issues with the older releases. Sometimes, these releases can also bring drastic changes, upgrading to significantly newer Linux kernel versions.
However, these are untested fixes and changes that can cause significant issues with your Raspberry Pi. You should only try these pre-release versions if instructed to do so by the Raspberry Pi engineering team.
However, if you want to try the pre-release firmware on your Raspberry Pi, follow the instructions below.
Before continuing, we recommend you make a backup of your Raspberry Pi. This way, you have something to fall back on if your device refuses to boot.
Installing Pre-Release Firmware on the Raspberry Pi
To update the pre-release version of the Raspberry Pi’s firmware, we will be utilizing the “rpi-update
” tool.
This tool is designed to handle the whole process of downloading and replacing the firmware on your system without any real interaction needed. Typically, this software comes bundled with Raspberry Pi OS.
1. To update your firmware to the latest pre-release version, run the following command within the terminal.
sudo rpi-update
2. After running the previous command, you will see the message below. This message tells you the version that this command will bump your firmware.
Additionally, you will see a warning about how this tool should only be used if you understand there could be regressions.
To proceed with updating to the pre-release version of the firmware, type in “y” and then press the ENTER key.
WANT_32BIT:0 WANT_64BIT:1 WANT_PI4:1 WANT_PI5:1
#############################################################
WARNING: This update bumps to rpi-6.1.y linux tree
See: https://forums.raspberrypi.com/viewtopic.php?t=344246
'rpi-update' should only be used if there is a specific
reason to do so - for example, a request by a Raspberry Pi
engineer or if you want to help the testing effort
and are comfortable with restoring if there are regressions.
DO NOT use 'rpi-update' as part of a regular update process.
##############################################################
Would you like to proceed? (y/N)
3. If you see the following message, the “rpi-update
” tool has successfully updated your firmware. However, before your Pi starts using it, you must reboot.
Despite this message it doesn’t mean that the pre-release firmware will run fine on your Raspberry Pi. You may still experience boot issues or stability problems.
*** If no errors appeared, your firmware was successfully updated to FIRMWAREHASHHERE
*** A reboot is needed to activate the new firmware
4. For your Pi to use this new firmware, you must restart your Raspberry Pi by running the following command.
sudo reboot
Reverting to the Stable Firmware
If you are experiencing issues with the pre-release version of the firmware, reverting to the stable Raspberry Pi firmware is a straightforward process.
Of course, for these steps to work, you must still be able to access the terminal on your device.
1. We must update the package list before we can roll back the firmware to the stable release.
You can update this list by using the following command.
sudo apt update
2. To revert to the stable version, we can use the “reinstall
” option with the apt package manager.
This option will tell the system to re-download and install the specified packages. The packages we are specifying are all related to the Pi’s firmware.
sudo apt reinstall raspi-firmware raspberrypi-kernel raspberrypi-bootloader -y
3. After reverting your firmware version, you must now restart your Raspberry Pi by running the command below.
sudo reboot
Conclusion
Hopefully, at this stage, you will now have a good understanding of how to update the firmware on a Raspberry Pi.
These steps work for all current releases of the Raspberry Pi. Even though versions since the Pi 4 also have what is called an EEPROM, the firmware is still handled the same way.
Please feel free to leave a comment below if you have any questions about updating firmware on your device.
If you found this guide to be helpful, we highly recommend checking out our many other Raspberry Pi tutorials.