These instructions are for System76 owners who have been prompted for a firmware update. Firmware updates may be issued to fix security vulnerabilities or to improve hardware functionality.
In Pop!_OS, you can check for firmware updates using Settings -> Firmware.
In Ubuntu, you can check for firmware updates using the Firmware Manager application.
If a green Update button is present, then a firmware update is available. Click the Update button, then click Reboot and Install to begin the update.
The command-line firmware utility can be installed using these commands:
sudo apt update sudo apt install system76-firmware
Once installed, the following command can be used to schedule a firmware update for the next reboot (if the firmware is already up-to-date, this command will schedule a re-installation of the current firmware):
sudo system76-firmware-cli schedule
Reboot the system using
sudo systemctl reboot to proceed with the update, or use
sudo system76-firmware-cli unschedule to cancel the update.
The System76 Firmware Updater will start on the next boot. Once it has initialized, you’ll be prompted to press Enter to commence flashing.
Depending on the model, the system may reboot at this point. The system’s fans may spin at full speed while the new firmware is being written. Once the firmware update process is complete, you may see a prompt to press any key to shut down.
After the system powers off, press the power button to turn it back on. On machines running Open Firmware, the system should boot normally.
For laptops not running Open Firmware, a few extra steps may be required after an update to ensure the Intel ME is disabled.
Depending on the model, two blue boxes may appear in succession with a message about the CMOS. Press Enter to dismiss each one. The system may also power off and on again at this point.
On some laptops, the UEFI menu will display automatically. (If it doesn’t, you can also access this menu by holding down F2 during boot.) Select Setup Utility to enter the UEFI setup utility.
Navigate to the Advanced section in the left sidebar, then select Advanced Chipset Control.
If there is an ME State option at the bottom of the list, select it, then select Disabled to ensure the ME is disabled.
Navigate to the Exit section in the left sidebar, then select Exit Saving Changes and Yes to save and exit the setup utility. The system may power off and back on again, then it should boot normally.
If your system is running another Linux-based OS installed with an EFI System Partition (ESP), then you can update your firmware using a live disk of Pop!_OS. First, create a live disk using one of the following articles:
After creating the live disk, access the boot menu and select it from the list of options. Once the desktop appears, open a terminal ( + T) and use this command to list the partitions on your system:
Identify the EFI partition in the list. (The EFI partition is usually the first partition on one of the drives, and is around 512MB in size or slightly smaller.) Once you have identified the EFI partition, use the following commands to set up the system for a firmware update:
sudo apt install system76-driver sudo mkdir -p /boot/efi sudo mount /dev/nvme0n1p1 /boot/efi gnome-control-center firmware
/dev/nvme0n1p1 is the EFI system partition.
sudo apt install system76-driver sudo mkdir -p /boot/efi sudo mount /dev/sda1 /boot/efi gnome-control-center firmware
/dev/sda1 is the EFI system partition.
After the System76 Driver is installed and the EFI partition has been mounted using the above commands, you can use the above instructions to update the firmware normally.
If you’re receiving the firmware update notification but there are no updates available, then your system’s Intel ME may be turned on. Follow the above instructions to disable the ME.
If you would like to transition from proprietary firmware to System76 Open Firmware (on a supported model), please view this article.