Raspberry Pi

How to Update Raspberry Pi Firmware

Firmware is a software utility that makes your hardware function. Like other computers, Raspberry Pi also has firmware that needs to be regularly updated to get its best. Since Raspberry Pi’s usability has increased rapidly, Raspberry foundation has been updating the firmware regularly. The updates in firmware include security patches and optimization for speed etc. Sometimes, there are vulnerabilities in the code which are later covered under updates.

Raspberry Pi firmware can be easily updated using your desktop PC or from the command-line interface. You can also use the command line or SSH for updating your Raspberry Pi firmware. The process is quite simple but can get troublesome if not followed properly.

In this article today, we will be learning how to install Raspberry Pi firmware step by step. Let’s start:

Need To Update Raspberry Pi Firmware

Here are some points that will clear your mind on the need for updating the firmware of your RPi:

  • Firmware update aggravates your device with the latest instructions for operations with any update to the hardware.
  • Update in firmware provides additional and latest features such as security patches and advanced user interface.
  • Optimizes the scalability and performance of firmware which intensifies the performance of the processor.
  • Regularly updating your firmware brings down the requirement of regular device repair and bug fixes.

Updating firmware for your RPi ensures the latest security patches to lessen the risk of exploitation. The recent RPi firmware update in May 2020 changed how RPi handles external software using HDMI port and headphone jack.

How To Check Current Raspberry Pi Firmware Version?

You can easily check your Raspberry Pi firmware version using the command line. The command for the same is

sudo /opt/vc/bin/vcgencmd version

How To Update Raspberry Pi Firmware?

Before we proceed further, here are some utilities that you will require to install the firmware.

  • A healthy internet connection
  • Your PC
  • An empty SD card
  • SD card adapter

We will start the basic step of installing the Pi imager. You can move to the next step if you have already installed it. Raspberry pi imager is an image installing tool from the Raspberry pi foundation, and it can be downloaded from here. Once downloaded, install the application on your PC.

Once you have installed the tool successfully, insert your empty SD card using the adapter.

Run the Pi imager tool on your PC. Select the “Choose OS ” option. Find and click on “Misc utility images”. In the next menu that appears, select “Bootloader”. You will be shown three types of boots: SD card boot, USB boot, and network boot.

You have to choose the SD card boot. Select your SD as storage media by clicking on the “Choose storage” option.

Click on the “Write” button and proceed by clicking on yes to confirm the process. This will take a few seconds or a minute. Once the process is completed, remove the SD card from the PC and insert it into your Pi board.

Attach the display to the HDMI port and plug in the power cable to boot your RPi. Sit back till you are shown a bright green display. This indicates the successful bootloader update.

Plug out the power cable. Boot your RPi again, and you will get an updated Raspberry Pi firmware.

I have performed these steps on a Windows PC. You can install RPi firmware on other operating systems using the same steps.

Installing Raspberry Bootloader Using Rasp-Config

Raspi-config allows you to configure the settings such as password, timezone, and keyboard layout of your raspbian OS installation. You can also use it to update the bootloader, and here’s how to proceed.

To start with, install the latest version of RPi OS for the latest rpi-eeprom package. Run the command sudo raspi-config. Nest, select advanced options and choose the bootloader version. You can go with “Latest” for the most recent bootloader/firmware release.

Now all you have to do is to reboot the setup to use the latest firmware.

What Is EEPROM In Raspberry Pi?

EEPROM stands for electronically erasable programmable read-only memory. Raspberry Pi operating system uses rpi-eeprom-update script for auto-updates. The latest Pi 4 comes with two EEPROMS used to store firmware and USB 3.0 host controller code. Earlier, the firmware was stored on SD cards.

Are Operating System, Firmware, And Bootloader Same?

Firmware and Operating systems, and bootloader sound like similar terms. Here are simple definitions for these three terms

Operating System: It is a system utility that manages device hardware and software and makes services accessible. An operating system basically acts as an interface between the user and the hardware of the device. The tasks handled by the operating system include task management, and memory management, process management, and handling input/output devices.

Firmware: Firmware is a small piece of software installed on the hardware. It functions through operating systems, APIs, or drivers. Firmwares give basic instructions to devices for performing specific tasks such as communication. They are always stored on ROM so that they don’t get removed accidentally.

Bootloader: Also known as Boot manager, Bootloader is software intended for an operating system. The bootloader is run by a medium such as SSD/HDD, USB drive, or a CD. The medium in use gets the information from the device’s firmware, and this process is also known as booting.

The Final Words

Raspberry Pi has gone through multiple updates, and extensive features have been added over some time. We have learned how easy it is to install firmware for Raspberry Pi. This can be done In multiple ways. If you have your RPi working, then you can update it using the command line. If you are doing things from scratch, you can install the OS image and then installing/updating the latest firmware version.

Do share this article with your friends who are facing issues installing and updating the Raspberry Pi firmware.

About the author

Shubham Yadav

Shubham is a mechanical engineer by profession. Computer geek at heart he loves to explore new aspects of circuits, motherboards and general PC components.