Support for FriendlyELEC NanoPi R5S rk3566 SBC

This instruction expands OpenWrt root partition and filesystem on x86 target.

FYI: The NanoPI R5S is ARM, not x86.

FTR: The NanoPi R5S is a rk3568 board.
Quite a bit in common with rk3566, but it's a separate SoC.

Hello team
Dusted-off this HW after a 1.5 years, for the promise that it’s more powerful than mt7621 (the 880Mhz dual-core CPU).
My query:
I am already at @mj22226 image.
Now that this HW is officially support on 24.10.2 ; can I safely do sysupgrade to it?

I rescanned this thread and hit upon below familiar message.
”I already said that in my commit message.
For the first-time installation, simply write the uncompressed image to SD/eMMC using dd command.”

Kindly help with exact command.
I see these under /dev : mmcblk1 mmcblk1boot0 mmcblk1boot1 mmcblk1p1 mmcblk1p2 mmcblk1rpmb

EDIT2:
Simplifying my query:
When I ssh to the box, i see below:
OpenWrt SNAPSHOT, r0-03430cc
Is it safe to execute sysupgrade to an official version, say 24.10.2?

Hello, sorry for the maybe stupid question, I'm coming from the nanoPi R4S, I would like to switch to the R5S-LTR, but what is the best way to install OpenWrt?

Because it can be installed on: SSD NVMe, eMMC, MicroSD.

To install it directly on the SSD disk, do I have to boot from microSD, then write the bootloader on the NVMe disk!? Is it safe and is there a guide?

Or is the same install it on microSD or eMMC? It just needs to function as a router.

Thanks!

1 Like

I would recommend running OpenWrt from the microSD card (squashfs). It is easier to install, upgrade and recover.

You can mount the NVMe (if installed) in OpenWrt and share it via SMB as a “mini NAS” if you wish so.

You can also install OpenWrt to the eMMC, but your gains will be minimal and and it will make it harder to recover if you got a bad install. Using microSD it is just a matter of replacing the SD card in these situations (much easier).

Only my 2 cents, others may have different opinions and/or perspectives.

1 Like

Oh, okay, thanks. I'll start the installation on the microSD, and once I've configured everything, I'll copy it to the eMMC. I want to create a LAG between the two LAN ports with two SFP+ ports on the switch, so it will require some testing.

You can’t boot directly from NVMe. You can have the bootloader on either SDcard or eMMC, which then ‘jumps’ to the NVMe, but that would mostly just complicate things.
I agree with @dsouza that it would make more sense as storage device for f.e. a NAS. And an SDcard is indeed more flexible and easier to recover from then eMMC.

And if you have a non-crappy SDcard (I like Samsung cards), then it won’t make a noticeable different when it comes to loading times.

1 Like

update:
I was able to do “sysupgrade -F” to 24.10.0 (first official release) successfully from the previous snapshot image.
phew .. it was nerve wracking, but chatgpt kept on telling its safe so I pulled the trigger.

1 Like

Performance exceeds expectation.
Could test iperf3 only LAN-to-LAN; 70% cpu free.
Whereas ER605 drops to 8%.
Need to figure out how to test NAT perf.

The Recovery/MASKROM option is not a normal boot option. It's a special mode where you can get into to put a normal working system on your device. Quite a few of Rockchip based devices have a button for it and the NanoPi R5S does/will as well.
But even if the device does not have such a button, when there is no valid boot option, the SoC will enter MASKROM mode anyway.

I tried looking for the FriendlyELEC software you mentioned and found this: 4.5.4 Installing the System to M.2 or USB Drive
If you read that paragraph, you will see confirmation of what I said above.

And then there's the Technical Reference Manual (TRM) for rk3568 which describes the boot procedure (which applies to all Rockchip SoCs that I know) in paragraph 1.2 System Boot:

  • Serial Nor Flash
  • Serial Nand Flash
  • Asynchronous Flash Interface (don't actually know what that is)
  • eMMC Interface
  • SDMMC Card

So basically: SPI, eMMC and then SDcard

The bootloader it finds can then jump to f.e. NVMe. So AFAIK you must have the bootloader (usually U-Boot) on SPI (not soldered on by default on NanoPi R5S), eMMC or SDcard and then U-Boot can jump to NVMe.

Where (exactly) did you find the software you referenced?

I have a R5S running Armbian, “booted” from NVMe. As you said, it is not actually booting from NVMe. It install the bootloader to eMMC, which then loads Armbian from NVMe.

AFIAK it is not possible for R5S to boot directly from NVMe.

Mine is running Debian and I chose to mount the NVMe drive to /var/ while the rest of the filesystem is on eMMC. But for me the NVMe drive is mostly for storage of files (and then shared over NFS).

Your solution is perfectly fine as well. I'm assuming that the OpenWrt images have both U-Boot and the OS in them and that's why I think it's easier if they're both on the same storage device. But also there it's not a requirement; it will probably entail some extra work, but should be quite doable.

Yep. BTW “my solution” is fully automated and officially supported by Armbian via armbian-config (installing bootloader to eMMC/MTD, and booting from NVMe, see below). But I digress, this topic is about OpenWrt… :slight_smile:

well, I guess I confused the eMMC for NVMe, my mistake replying from my faulty recollection

part 4.5.3.3

After about one month the nanoPi R5S arrived and I configured it the same as the nanoPi R4S, but I added LAG on the two Ethernet ports (connected via SFP+ to the switch) and I also flashed the microSD on the eMMC.

It’s a very powerful small device.

If you’re interested in the necessary steps to configure the LAG or install it with the same configuration as the nanoPi R4S (Even if it has one more eth port), or flash to eMMC the microSD, I wrote a detailed post here: Homelab setup v6.5: New router, LAGs, SFP+ and some optimizations

3 Likes

Hello Everyone ,after a long time(after i bricked my xiaomi mi router 4 (unsupported version)) i am back to openwrt with nanopi R5S, i tried it for a day and then i wanted to use the old OAF open app filter and i ungraded to openwrt-24.10.4-rockchip-armv8-friendlyarm_nanopi-r5s-ext4-sysupgrade.img.gz

but afterward i noticed the storage is not the same and all the natively installed pckages with friendlywrt are gone , i wanted to revert back but i saw that theres a methode using sdcard, itried the reset button which is called Mask thinking it would revert back to friendly wrt but nothing happened
can you guys help clarify how to revert back with a safe methode for those who did it before ?

thanks in advance

If you flashed OpenWRT, then FriendlyWRT was overwritten. To revert back to FriendlyWRT, I would prepare an SD card with the FriendlyWRT image, boot the NanoPi R5S from this SD card, and then flash FriendlyWRT.

1 Like

thank you Fisiu for your feedback ,

i am planning on writing the steps i did that led to the hanged situation and i was finnaly able to fix it using USB A to A cable
i tried the sd card method but it didnt work i used the rkdev tool and even with that it didnt succeed 1st what i think did the trick is ticking the write check box which wasnt mentioned in the official guide, after ward the device booted correctly with friendlywrt os

i will make a detailed post with the steps later