Raspberry Pi Stack Exchange is a question and answer site for users and developers of hardware and software for Raspberry Pi. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a 512MB Pi. I am trying to make sure I am getting the most out of it. I just downloaded the latest version of Raspbian and installed it on the Pi. Do I also need rpi-update? Is rpi-update meant for upgrading from one version of Raspbian to the next?

share|improve this question
up vote 57 down vote accepted

I think you might be conflating two different operations.

  • rpi-update is a tool to upgrade the firmware for your Raspberry Pi. Firmware is a small package of code that usually lives on a special chip of a computer that helps the software know how to talk to the hardware. However, in the case of the Raspberry Pi, the firmware will live on the first partition of the SD card.

  • Raspbian is an operating system or the core software for your Raspberry Pi. Software (including the OS) lives on second partition of the SD card and is all the stuff that gets executed when you use your device.

Both of these need updating independently. For convenience, the rpi-update tool is included in the Raspbian distribution of Linux because it is a useful software tool that manages the firmware of your Pi's. You should run it periodically to make sure your devices have the latest firmware. Separately, you need to keep your software up to date using the standard Debian software management tools like sudo apt-get update && sudo apt-get upgrade.

Each of these functions is separate, and updating one will not update the other. Upgrading your distribution to the latest software packages might get you a new version of rpi-update, but unless you RUN rpi-update your firmware will not get updated.

Since the place the firmware is stored is actually flashed to the first partition of the SD card (sort of like a BIOS), you will not need to run this on every device. Once you load a new version of software or firmware onto an SD card, any device you plug that card into will be running that version.

share|improve this answer
thanks for the great answer. So for each physical Pi that I have, I need to run rpi-update. It is not enough to run rpi-update on one sd card and have it work where ever it is plugged in. rpi-update is physical board dependent as opposed to sd card dependent. Is that correct? Then secondly, I'm curious, what does upgraded firmware do? Is it more stable? Is it faster? Does it help support the 512MB architecture? – Scoop Jan 7 '13 at 21:38
@Scoop: I edited my answer to answer your other questions. What the firmware updates actually contain would be a question to be answered by the changelog for the version update in question and is outside the scope of your original question. You could consider asking another one along those lines if you want. – Caleb Jan 7 '13 at 23:10
Hi Caleb. You say that rpi-update is part of raspbian but I can't find it on my rpi (even with a locate or apt-cache search) do you think this is normal ? – Cerber Apr 27 '13 at 9:02
When I run rpi-update it seems to update the kernel (including the modules). Is this answer out-dated perhaps? – Dan Sandberg Jul 3 '14 at 4:54
According to raspberrypi.org apt-get upgrade will update the kernel and firmware, albeit possibly not to the most recent one. – goldilocks Jan 6 '15 at 17:35

raspbian package repo contains raspberrypi-bootloader package which contains firmware, kernel and kernel modules that rpi-update downloads. The version is not the latest, but files should be fine and stable. Now it shows a 20130902 version, so it's about 2 months old. The package is installed by default and is updated when a new version arrives in repo.

So you basically do not need rpi-update if you don't want the bleeding edge firmware and kernel, just stick with apt-get - it will update kernel, firmware and modules on its own. Actually I cannot find rpi-update on my Pi at all.

share|improve this answer

RPI-Update is used to update the Raspberry Pi to the latest version. You don't really need it, but it is a good idea to keep the Raspberry Pi updated. So you might as well install rpi-update.

Also if you don't really need your Raspberry Pi on the latest bleeding edge updates. Rather use the following command. This will update all installed packages to their stable current version

sudo apt-get update && sudo apt-get upgrade
share|improve this answer
actually it will upgrade firmware as well (version will not be latest, but stable) – Osman-pasha Nov 30 '13 at 9:31

If you look at your SD card after flashing it with the latest version of Raspbian you will actually see 2 partitions on your SD card. The first one is where the firmware is stored and the second one will be where the operating system (Raspbian) and your files are stored.

Therefore if the firmware on your SD card (first partition) is up to date then any Raspberry Pi using that SD card will be running the latest firmware version.

You can even update the firmware on the SD card by updating the files in that first partition with a Windows computer for example. (See: 3.2 Get the latest firmware version)

If the Raspbian team is using the latest firmware on their distribution though, that is a different question. In my opinion, to make sure you are running the latest firmware on your Raspi I would still use the rpi-update tool with any operating system distribution you choose.

In short, I would say the following phrase: Update the card, run everywhere.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.