NanoPi R4S SBC preview with OpenWrt and Ubuntu Core

Rockchip RK3399 powered NanoPi R4S router SBC launched at the beginning of the month, and FriendlyELEC kindly sent a review sample to CNX Software. I intended to test thermally performance, Ethernet, and USB like I did for NanoPi R2S and NanoPi NEO3,  but Armbian is not available right now, so I could not use some of the tools I normally used right now.

So instead, I tested the board/gateway with the image from FriendlyELEC. First FriendlyCore based on Ubuntu Core 20.04, but there some issues which we’ll detail in this preview, so I then switch to FriendlyWrt built upon OpenWrt 19.07 which works better, but I still encountered some problems. That’s just to say it might be better to wait a little longer until Armbian images are released, or until FriendlyELEC fixes some of the shortcomings.

NanoPi R4S gateway unboxing

Before testing the software, let’s see what I’ve received.NanoPi R4S 16GB MicroSD card
NanoPi R4S SBC inside its metal enclosure together with a 16GB class A1 microSD card that, as I found later, comes preloaded with FriendlyWrt.

dual ethernet 5V USB reset
The rear panel includes a USB-C port for power, WAN and LAN Gigabit Ethernet ports, and a reset button.
USB 3.0 microSD camera threadThe front side of the devices comes with two USB 3.0 ports, a MicroSD card slot, and what looks like a standard thread to mount cameras…NanoPi R4S camera-mount
Yes, it is! I could mount the gateway on a camera’s tripod. This should allow for some innovative and inexpensive mounting options…

NanoPi NEO3 R2S R4S
Before I teardown the device, let’s have a little family reunion with from left to right: NanoPi NEO3, NanoPi R2S, and NanoPi R4S. The latter is quite bigger than the other two.

NanoPi R4S “teardown”

Let’s open the enclosure. After taking out the four rubber pads and loosening the four screws on the bottom of the enclosure we can access the board.

NanoPi R4S gateway teardown
After removing two more screws, we can completely take out the board and see the processor is in contact with the metal case through a thermal pad, as it should be.NanoPi R4S Metal Case Thermal Pad
NanoPi R4S SBC

FriendlyCore 20.04 (Ubuntu Core)

I initially thought the microSD card was blank so I went to the Wiki and downloaded the latest version of FriendlyCore namely rk3399-sd-friendlycore-focal-4.19-arm64-20201027.img and flash it to the MicroSD card using USBImager. I then inserted the card into NanoPi R4S, connected Ethernet cables to the WAN and LAN ports, and powered it using MINIX NEO P2 USB-C power adapter.

NanoPi R4S review

I can see the power LED (red) is on, and the status LED (green) is blinking, but the LAN and WAN LEDs are off. I go to my router’s web interface to check for new devices and find out the IP and nothing. Maybe the first boot is quite long, but five minutes later still no IPs. Finally, I decided to power cycle the board, it got an IP address, and I could finally access it via SSH using the default pi/pi credentials.

Let’s check out the details with inxi:


Both Ethernet devices are detected but eth1 down. However even if we turn it on, there’s no link detected:


I thought maybe it could be configured with npi-config that’s supposed to be pre-installed in FriendlyCore, but:


We’ll also notice the temperature is odd at just 26°C, but the same value is reported by sbc-bench.sh:


The temperature measured with an IR thermometer is around 39°C.

NanoPi R4S temperature

That’s truly magic! Now if I look at sysfs, we can see three temperature zones:


zone2 appears to be what is used now, but it’s clearly hard-coded to 26°C. However sbc-bench script checks for another file before going into /sys/devices/ directory:


That’s also hard-coded to 26C, so I’ll comment the part related to this file in the script, making it use thermal_zone0 instead.


It looks better. Let’s run the benchmark:


No throttling was detected, and for instance, 7-zip scores (~5800) are roughly the same as for  RockPi 4C with the Rockchip RK3399 clocked a 1.8/1.4GHz for both SBC.

Since we can’t install armbianmonitor, there’s no pretty chart, but we can still check out the log above and temperature for 7-zip multi-core and cpuminer never exceeded 60C:


That means cooling is working very well, and I suppose running the CPU at 2.0 GHz might also be fine. By comparison, NanoPi R2S reached 85°C and throttled a little during the same test. Note this is winter here, so while the ambient temperature was 30°C for R2S test against around 24°C now.

Let’s check the Gigabit Ethernet port that works (eth0) with iperf using a full-duplex transfer:

  • Upload only:

  • Download only:

FriendlyWrt (OpenWrt)

FriendlyCore has some issues, and limited information in NanoPi R2S Wiki, so instead let’s try FriendlyWrt, and I flashed rk3399-sd-friendlywrt-5.4-20201111.img.zip to the MicroSD card. I did not get any problems to get an IP address this time, and the WAN and LED are working as expected  (green ON) on the board. I could login as root without any password using SSH:


But instead of carrying on with the command, I went on my laptop web browser to access LuCi web interface instead.

NanoPi R4S OpenWrt LuCi

We can also see how the LAN and WAN ports are configured. The WAN port is a DHCP and DHCPv6 client…

FriendlyWrt default configuration… and the LAN port is configured as a bridge set to manage 192.168.2.0 subnet. That’s fine, and the way it should be configured as a router.

But for testing purpose, I deleted the bridge, and set eth1 LAN port as DHCP client so I could get an IP on the same network:

Eth1 Eth0 NanoPi R4S OpenWrtI then tested the WAN port with a full-duplex transfer:


and repeated the same with the LAN port:


All good. I’ve also tested  the USB 3.0 port by connecting a USB 3.0 hard drive on the port next to the MicroSD card, but I got some errors:


So I switched to the other USB 3.0 port, and it worked just fine:


I then configured a SAMBA share in LuCi and the command line, to transfer files from my laptop to the USB drive connected to NanoPi R4S.

NanoPi R4S OpenWrt SAMBA

It works, but at around 16MB/s it’s really slow especially for a USB 3.0 drive. Other Arm-based platforms with Gigabit Ethernet and USB 3.0 running OpenWrt could achieve close to 50MB/s in the same test (and same USB hard drive). Maybe it’s just a question of software optimization.

Conclusion

NanoPi R4S has been better designed than the previous NanoPi R2S notably in terms of thermal design, as the board, while fitted in the metal case, never exceeded 60°C under load. Networking performance seems to be fine too. However, it looks like FriendlyELEC focused on OpenWrt image (FriendlyWrt) more than on Ubuntu Core for now which has a few issues. I also had one issue with one of the USB 3.0 ports but it may be transient.  If you plan on using OpenWrt with the router/gateway, then it may be good, but for Debian based Linux distributions waiting for Armbian images may be advised both for stability and improved performance.

I’d like to thank FriendlyELEC for sending NanoPi R4S for review, and if interested you can get the model with 4GB RAM and metal enclosure as reviewed here for $69 plus shipping on FriendlyELEC store or Aliexpress.

Share this:

Support CNX Software! Donate via cryptocurrencies or become a Patron on Patreon

ROCK Pi 4C Plus
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
50 Comments
oldest
newest
Weller PCB manufacturer