Author: Jase Batchelor
EDIT: Radxa have updated their docs and have a new site
https://docs.radxa.com/en/rock5
https://github.com/radxa-build
This covers the setup of two Radxa Rock 5B
single board computers (SBC).
Both have been setup to boot from NVMe SSD and use wired networking.
The first board is used as a general purpose machine on my home network
- Debian running Xfce desktop
- serves as NAS on home network
- GitLab for personal projects
- whatever else ends up installed… ;)
The second board is running a minimal installation and is used solely for development and benchmarking
- minimal Debian installation
- development tools, eg LLVM, Rust, Java (SDKMan)
Sections
Hardware
Optional, but recommended
The Radxa Rock 5B is very fussy about power, particularly once the NVMe drive is installed.
Use a good quality power adapter and cables.
To avoid a ‘boot loop’ do NOT try and power the board from your laptop USB port 😉😹
Installation
tldr;
- download Debian image and SPI tools
- flash Debian to eMMC module (or SD Card) and NVMe drive with Balena Etcher
- boot from eMMC module (or SD Card), flash the SPI
- shutdown, remove eMMC module (or SD Card)
- reboot from NVMe drive
With a couple of pieces of optional hardware (as mentioned above) this process can be done in a few minutes.
Flash OS image to eMMC and NVMe
Download the Debian image
wget https://github.com/radxa/debos-radxa/releases/download/20221031-1045/rock-5b-debian-bullseye-xfce4-arm64-20221031-1558-gpt.img.xz
# If not using Balena use this
# xzcat rock-5b-debian-bullseye-xfce4-arm64-20221031-1558-gpt.img.xz | sudo dd of=/dev/nvme0n1 bs=1M status=progress
Install Balena Etcher
brew install balenaetcher --cask
Use Balena Etcher to flash the image to both the eMMC module and NVMe drive.
Insert the eMMC module and boot the board.
Login with username rock
, password rock
Flash SPI
Download the SPI tools
# Tools to flash / update SPI bootloader
wget https://dl.radxa.com/rock5/sw/images/others/zero.img.gz
wget https://dl.radxa.com/rock5/sw/images/loader/rock-5b/release/rock-5b-spi-image-gbf47e81-20230607.img
Verify the hash and extract
md5sum zero.img.gz
# ac581b250fda7a10d07ad11884a16834 zero.img.gz
gzip -d zero.img.gz
md5sum zero.img
# 2c7ab85a893283e98c931e9511add182 zero.img
md5sum rock-5b-spi-image-gbf47e81-20230607.img
bd21a6459ad33b8189782e4c904d99b3 rock-5b-spi-image-gbf47e81-20230607.img
Ensure the SPI flash is available
ls /dev/mtdblock*
# it should report back:
# /dev/mtdblock0
Completely clear the SPI flash (may take a few minutes)
sudo dd if=zero.img of=/dev/mtdblock0
# check if the flash was successfully cleared
sudo md5sum /dev/mtdblock0 zero.img
# the result should look exactly like this:
2c7ab85a893283e98c931e9511add182 /dev/mtdblock0
2c7ab85a893283e98c931e9511add182 zero.img
Write bootloader to the SPI flash
sudo dd if=rock-5b-spi-image-gbf47e81-20230607.img of=/dev/mtdblock0
sync
# check if the flash was successfully:
sudo md5sum /dev/mtdblock0 rock-5b-spi-image-gbf47e81-20230607.img
# the checksums should be the same again - if not flash the bootloader again.
bd21a6459ad33b8189782e4c904d99b3 /dev/mtdblock0
bd21a6459ad33b8189782e4c904d99b3 rock-5b-spi-image-gbf47e81-20230607.img
Once completed, power down the board and remove the eMMC module.
Then, power on the board and it should boot from the NVMe drive.
Configuration
See the Debian article for wired ethernet setup.
Additional configuration
See the Debian article for standard operating environment configuration
Specifications
- ARM Quad Cortex A-17 + Quad Cortex A-55 CPU
- ARM Mali G610 MP4 GPU
- 5 TOPS NPU
- Two HDMI and one USB-C up to 8k
- 2500MB Ethernet with PoE support
- Supports HDMI 4K Input
- Supports PCIe 3.0 4x NVMe SSD
- Supports WiFi 6 and BT 5.2 (with official module)
Links
- https://wiki.radxa.com/Rock5/5b
- https://wiki.radxa.com/Rock5/install/spi
- https://github.com/radxa-build
- https://www.okdo.com/us/getting-started/get-started-with-the-rock-5b-sbc/
- https://www.okdo.com/us/software-hub/
Reviews