North Rivet
Technical Library · A Validus Group Inc. Brand
Validated Hardware Procedure

Ubuntu 26.04 ARM64 on Orange Pi 5 Plus

Install Canonical Ubuntu directly to NVMe, then move EDK2 UEFI v1.1 into onboard SPI NOR for a clean, SD-card-free RK3588 boot path.

Orange Pi 5 Plus RK3588 Ubuntu 26.04 LTS ARM64 / AArch64 NVMe EDK2 UEFI v1.1

This procedure documents the exact installation path that successfully produced a bootable Orange Pi 5 Plus using Canonical Ubuntu on NVMe and EDK2 in onboard SPI NOR.

North Rivet Technical Library Intermediate Validated on physical hardware
Validated Procedure

Overview

The Orange Pi 5 Plus can run Canonical's generic Ubuntu ARM64 distribution without depending on an Orange Pi vendor image, Armbian base, or a permanently installed SD-card bootloader.

The enabling component is EDK2 UEFI firmware for Rockchip RK3588. EDK2 gives the board a PC-like UEFI boot environment capable of starting a standard ARM64 Ubuntu installation from NVMe.

Orange Pi 5 Plus
SPI NOR
EDK2 UEFI v1.1
NVMe EFI
Ubuntu 26.04 ARM64
Final result Once EDK2 is flashed into SPI NOR, the system boots Ubuntu from NVMe with no microSD card installed.

Hardware and Files Required

ItemPurpose
Orange Pi 5 PlusRK3588 target platform
NVMe SSDPermanent Ubuntu system drive
microSD cardTemporary EDK2 boot media
USB flash driveUbuntu ARM64 installer
FAT32 USB flash driveHolds the EDK2 image as a normal file for SPI programming
HDMI monitor + USB keyboardUEFI and installation interface
EDK2 RK3588 UEFI v1.1Firmware image for Orange Pi 5 Plus
Ubuntu 26.04 LTS Desktop ARM64 ISOCanonical operating system installer

The EDK2 image used for this validated procedure was:

orangepi-5plus_UEFI_Release_v1.1.img
Use the board-specific firmware image. Do not substitute an EDK2 image built for another RK3588 board.

1. Create the Temporary EDK2 microSD

1Write the firmware image

Use Raspberry Pi Imager and choose the custom-image option. Select:

orangepi-5plus_UEFI_Release_v1.1.img

Write the image directly to the entire microSD card. Do not copy the .img file onto a formatted card as an ordinary file.

2Use the correct HDMI output

On the tested Orange Pi 5 Plus, EDK2 video output appeared on the HDMI connector located next to the Ethernet jack.

With the temporary EDK2 microSD installed, connect that HDMI output and a USB keyboard, then power the board.

Useful LED diagnostic The successful EDK2 boot produced rapid LED flashing immediately after power-on, followed by a slower periodic heartbeat. If that pattern is present but the display is blank, verify the HDMI connector before assuming firmware failure.

2. Create the Ubuntu ARM64 Installer

Download the ARM64 version of Ubuntu 26.04 LTS Desktop. The architecture must be ARM64/AArch64—not AMD64/x86-64.

A typical filename is:

ubuntu-26.04.1-desktop-arm64.iso

On Ubuntu, Startup Disk Creator can be launched with:

usb-creator-gtk

If required:

sudo apt install usb-creator-gtk
USB-port behavior matters. For this installation, the Ubuntu installer successfully booted from a black USB 2.0 Type-A port. If a bootable USB drive is not detected, move it from a blue USB 3.x port to a black USB 2.0 port and retry.

3. Install Ubuntu to NVMe

  1. Leave the temporary EDK2 microSD installed.
  2. Insert the Ubuntu ARM64 installer USB drive.
  3. Boot the Orange Pi 5 Plus through EDK2.
  4. Select the Ubuntu USB device from the UEFI boot interface if it does not start automatically.
  5. Install Ubuntu to the NVMe SSD.

The NVMe device will normally appear in Linux as something similar to:

/dev/nvme0n1
Confirm the target disk. Make certain the Ubuntu installer is writing to the NVMe SSD—not the temporary EDK2 microSD card or the USB installer.

Allow Ubuntu to create its normal EFI and Linux partitions. After installation, reboot once with the EDK2 microSD still installed.

Do not flash SPI yet. First prove that Ubuntu boots successfully from NVMe through the temporary EDK2 SD card. This keeps the process reversible until the OS installation is known-good.

4. Move EDK2 into Onboard SPI NOR

After Ubuntu boots correctly from NVMe, EDK2 can be installed permanently into the Orange Pi 5 Plus SPI NOR flash.

Prepare the firmware USB

Format a USB flash drive as FAT32. This time, do not image the drive with EDK2. Copy the EDK2 image onto the FAT32 filesystem as a normal file:

orangepi-5plus_UEFI_Release_v1.1.img
StageHow the EDK2 image is used
Temporary microSD bootWrite the .img as a complete disk image.
Permanent SPI programmingCopy the .img as an ordinary file onto a FAT32 USB filesystem.

Enter the UEFI Shell

Boot through the temporary EDK2 SD card and press F1 to enter the UEFI Shell.

Refresh and display device mappings:

map -r
map

The UEFI shell may show mappings such as FS0:, FS1:, BLK5, and BLK6. A BLKx entry means the block device is detected; it does not mean the shell has mounted a readable filesystem.

Check available filesystems until the firmware image is visible:

ls fs0:
ls fs1:
ls fs2:
ls fs3:

When the correct filesystem is found, switch to it. For example:

fs2:
ls

The directory listing must show:

orangepi-5plus_UEFI_Release_v1.1.img
Do not proceed until the file is visible on an FSx: filesystem. If the USB appears only as BLK5/BLK6, verify that the USB drive is FAT32 and refresh the mappings with map -r.

Flash EDK2 to SPI NOR

The exact command that successfully programmed the board was:

sf updatefile orangepi-5plus_UEFI_Release_v1.1.img 0x0

The required SPI destination offset is 0x0.

Do not interrupt power. Allow the SPI programming operation to complete fully before rebooting or shutting the board down.

After successful completion:

reset

Shut the system down, remove the EDK2 microSD card and firmware USB drive, leave the NVMe installed, and power the Orange Pi back on.

5. Verify the Finished System

Confirm the operating system:

cat /etc/os-release

Confirm ARM64 architecture:

uname -m

Expected:

aarch64

Display the kernel:

uname -r

Confirm the NVMe layout:

lsblk

Confirm UEFI boot:

ls /sys/firmware/efi

Confirm the root filesystem is on NVMe:

findmnt /

Validated Final Boot Path

The completed system boots without an SD card:

Orange Pi 5 Plus
        │
        ▼
Onboard SPI NOR
        │
        ▼
EDK2 UEFI v1.1
        │
        ▼
NVMe EFI System Partition
        │
        ▼
Canonical Ubuntu 26.04 LTS ARM64

Troubleshooting Notes

EDK2 LED activity but no HDMI

If the LED rapidly flashes and then changes to a slower heartbeat, EDK2 is likely running. On the validated board, the working firmware display was the HDMI connector adjacent to Ethernet.

Ubuntu installer USB is not detected

Move the installer to a black USB 2.0 port. USB 3.x behavior under EDK2 has been problematic on the Orange Pi 5 Plus.

USB appears only as BLK5 or BLK6

The UEFI shell detects the block device but has not mounted a readable filesystem. Format the firmware USB as FAT32, copy the EDK2 image as an ordinary file, and run:

map -r

Linux reports a Synchronous Exception

EDK2 documents an additional compatibility option under:

Device Manager
  └── EFI Memory Attribute Protocol
       └── Enable Protocol

If a Linux image encounters a synchronous exception during boot, EDK2 documentation recommends disabling Enable Protocol. This was not required for the validated Ubuntu 26.04 installation described here.

Mainline Linux / Device Tree mode

For modern Linux, EDK2 provides:

Device Manager
  └── Rockchip Platform Configuration
       └── ACPI / Device Tree

Config Table Mode: Device Tree
Compatibility:     Mainline

References

Built from real engineering work

North Rivet turns practical shop-floor problems into documented solutions.

Explore our technical library, industrial software, and manufacturing capabilities for applied controls, machine reliability, instrumentation, and production support.