Skip to content

Radxa Zero - [09.08.2024]


Introduction

This guide flashes Armbian to a Radxa Zero by splitting the downloaded image into a boot section (first 4 MB) and a rootfs section (rest), erasing eMMC, then writing both via fastboot.

The Armbian image is split at the 8192-sector mark (4 MB) because the Amlogic S905Y2 boot ROM expects the bootloader/FIP block at the start, separate from the filesystem.

Prerequisites / Tools

  • Armbian image for Radxa Zero (e.g. Armbian_24.5.1_Radxa-zero_noble_current_6.6.31.img)
  • pyamlboot providing boot-g12.py
  • radxa-zero-erase-emmc.bin and rz-fastboot-loader.bin from Radxa
  • A custom u-boot.bin
  • fastboot

Step 1 - Download Armbian

Grab the Armbian image for Radxa Zero from armbian.com.

Step 2 - Split the Armbian Image

Extract the first 4 MB (8192 sectors of 512 bytes) — this is the original boot section that will be combined with the new u-boot.bin:

dd if=Armbian_24.5.1_Radxa-zero_noble_current_6.6.31.img of=img_stripped bs=512 count=8192

Extract everything past the boot section — this is the rootfs that will be written to eMMC:

dd if=Armbian_24.5.1_Radxa-zero_noble_current_6.6.31.img of=skipped_armbian.img bs=512 skip=8192

Step 3 - Erase eMMC

Hold the USB BOOT button while connecting USB-OTG to enter maskrom mode, then:

boot-g12.py radxa-zero-erase-emmc.bin

Step 4 - Load Fastboot Loader

boot-g12.py rz-fastboot-loader.bin

Step 5 - Build the Boot Section

Concatenate the extracted boot section with the new u-boot.bin:

cat img_stripped u-boot.bin > bootloader.bin

Step 6 - Flash the Bootloader to mmc0boot0

fastboot flash mmc0boot0 bootloader.bin

Step 7 - Flash Armbian to eMMC

fastboot flash mmc0 skipped_armbian.img

Step 8 - Reboot

fastboot reboot