Raspberry Pi CM5 EEPROM

EEPROM Update for Raspberry Pi CM5

To update the EEPROM on a Raspberry Pi CM5 used in the ClockworkPi uConsole, you can follow these steps:

First ensure using a small SD card (32GB is sufficient) with uConsole customized Trixie OS. You can download the image from here. Use the Raspberry Pi Imager to flash the OS onto the SD card and boot the uConsole from it.

Use Trxie OS (i.e. newer releases) for the CM5 as bookwarm may not boot correctly with uConsole.

Once you are booted into the OS, open a terminal and run the following commands to check and update the EEPROM as shown below.

The version must be at least 2025-01-06 to ensure compatibility with the uConsole.

Check the current EEPROM version by running:

vcgencmd version

If the version is older than 2025-01-06, update the EEPROM by running:

 sudo rpi-eeprom-update -a

NVMe Boot Configuration

After updating the EEPROM, you need to configure it to boot from the NVMe drive. Edit the EEPROM configuration file:

sudo rpi-eeprom-config -e

In the editor, change the configuration to the folowing:

[all]
BOOT_UART=1

# Switch off PMIC outputs on HALT
POWER_OFF_ON_HALT=1

# Default BOOT_ORDER for provisioning
# SD -> NVMe -> USB -> Network
BOOT_ORDER=0xf461

# Try boot on SDCard repeatly
SD_BOOT_MAX_RETRIES=2

# Slow down SDCard SDR Mode on bootloader
SD_QUIRKS=1

Save the file and exit the editor, and it will automatically update the EEPROM with the new configuration.

Since the boot order checks the SD card first, you will be able insert alternative OS images on the SD card to have different OS options as a backup, while the main OS can reside on the NVMe drive with higher performance.

In case you are facing random power issues with the NVMe drive, please refer to the uConsole Power Issue.

Notes mentioning this note

Updated: