Skip to content
An easier way to update the firmware of your Raspberry Pi
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


An easier way to update the firmware of your Raspberry Pi.


There are two possible problems related to SSL certificates that may prevent this tool from working.

  • The time may be set incorrectly on your Raspberry Pi, which you can fix by setting the time using NTP.

    sudo ntpdate -u
  • The other possible issue is that you might not have the ca-certificates package installed, and so GitHub's SSL certificate isn't trusted. If you are on Debian, you can resolve this by typing:

    sudo apt-get install ca-certificates


To install the tool, run the following command:

sudo wget -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update


Then, to update your firmware, just run the following command:

sudo rpi-update


After the firmware has been sucessfully updated, you'll need to reboot to load the new firmware.


If you'd like to set a different GPU/ARM memory split, then define gpu_mem in /boot/config.txt.

To upgrade/downgrade to a specific firmware revision, specify its Git hash (from the repository) as follows:

sudo rpi-update fab7796df0cf29f9563b507a59ce5b17d93e0390

Expert options

There are a number of options for experts you might like to use. These are all environment variables you must set if you wish to use them.


By default, rpi-update will attempt to update itself each time it is run. You can disable this behavior by:

sudo UPDATE_SELF=0 rpi-update


sudo SKIP_KERNEL=1 rpi-update

Will update everything except the kernel.img files and the kernel modules. Use with caution, some firmware updates might depend on a kernel update.


sudo ROOT_PATH=/media/root BOOT_PATH=/media/boot rpi-update

Allows you to perform an "offline" update, ie update firmware on an SD card you are not currently booted from. Useful for installing firmware/kernel to a non-RPI customised image. Be careful, you must specify both options or neither. Specifying only one will not work.

Something went wrong with that request. Please try again.