Installing OS
Multiple OS options are available. I tried installing the Radxa original supported operating system,I. but I was not very impressed with it. And things didn't seem to work out of the box for me in terms of transferring the operating system onto an NVM drive.
An important thing to note here is that Rock 5C board does not have a SPI flash in build. So the basic instructions. Which? Ask you to move the bootloader from SD card to SPI flash does not work here.
Finally I choose Armbian as it has a small footpring and easy to work with in first boot. With Armbean, after the first boot you get an IP and. You can directly SSH to the Server making it easy to set up.
I tried using the RBN version with With kernel 6.12. But it had problems in booting from NVMe.
So it is better to. Use an ambient version. Having kernel 61. Which is compatible with the Rock 5C board.
Step 1: Booting from SD Card
For this tutorial I have used
Ubuntu 24.04 (Noble) Minimal/IOT images with Armbian Linux v6.1
- Use a SD card to burn the Armbian image using Rufus or Etcher.
- Insert the SD card in the slot of Rock 5C and power on the board.
- In five to 10 seconds you will be greeted with a welcome screen mentioning the IP address of your server.
- Use the IP address to SSH into the newly created server. The username is
rootand the password is1234.
ssh root@yourROCK5ip
- After logging in, you will be asked to create a new password for root and also create a new user account.
Now if you want to use the system from the SD card then you can continue from here. But if you want to boot the operating system from an NVM drive for better speeds, then continue to the next step.
Step 2: Transfer bootloader to SD Card
- As already mentioned, the Rock 5C board does not have an SPI flash and so we will need to use a small SD card to burn the blootloader. With bootloader installed, You will now be able to boot from an NVMe drive.
- Take a small capacity SD card maybe? 1GB, 2GB or 8GB. and insert it into a USB adapter. Then plug the USB into the Rock 5C board.
- This would be most probably detected as an SDA or SDB drive. You can check the list of attached drives using the below command.
lsblk
- There is an automatic script to burn the bootloader built into the armbian-config command. But these scripts defaults to burning the bootloader onto an SPI flash. So we need to use manual commands to burn the bookloader onto this new SD card attached via a USB port. Move to the location where the bootloader is stored as shown below.
cd /usr/lib/linux-u-boot-vendor-rock-5c
- The two important files here are
idbloader.imgandu-boot.itb - Use the commands below to flash these images onto your SD card which will hold the bootloader. Here I'm assuming that the SD card is device SDA.
sudo dd if=./idbloader.img of=/dev/sda seek=64 conv=notrunc status=progress
sudo dd if=./u-boot.itb of=/dev/sda seek=16384 conv=notrunc status=progress
Do not forget to run the command with sudo else the bootloader will not be written in SD card, eventhough it show a sucess.
Step 3: Burn the OS on NVMe drive
- After this we want to install the operating system onto the NVMe drive. First ensure that your envy me drive is detected by running the below command.
lsblk
You should see something like nvme0n1
2. It is better to format the NVMe drive. For this you can use the software package called nvme-cli
sudo apt update
sudo apt instll nvme-cli
- Now use these commands to wipe the NVMe. Wait 10 seconds for the command to execute.
sudo nvme format nvme0n1
- Now download the operating system which you want to use using the wget command.
wget https://mirrors.tuna.tsinghua.edu.cn/armbian-releases/rock-5c/archive/Armbian_25.11.1_Rock-5c_noble_vendor_6.1.115_minimal.img.xz
- Now transfer the downloaded operating system image onto the NVMe drive.
xz -dc Armbian_25.11.1_Rock-5c_noble_vendor_6.1.115_minimal.img.xz | sudo dd of=/dev/nvme0n1 bs=4k
- Once this step is completed, we are ready to put from an NVMe drive.
Step 4: Booting from NVMw
- First shutdown the system using the command.
sudo shutdown now
- Now remove the SD card from which you booted the operating system for the first time.
- Now remove the SD card on which you have burnt the bootloader.
- Place this SD card into the SD card slot of Rock 5C Board.
This was a big issue for failue to boot in my case. I had not removed the USB adapter on which I had mounted the SD card. Although the SD card was removed, the usb adapter was hindering somehow in booting the operations. So Please ensure that you remove the USB adapter before powering on the board.
So in the current state you should have the bootloader SD card into the SD card slot and the NVMe drive having the operating system connected.
- Now power on the system and you should boot into the operating system loaded onto the NVMe drive.
- Again, follow the procedure as you did on the first boot.