Radxa ROCK 5 ITX RK3588 mini-ITX motherboard review – Building an Arm PC and NAS with Debian KDE

In this review, I’ll show how I installed Debian on the ROCK 5 ITX mini-ITX motherboard powered by a Rockchip RK3588 octa-core Arm Cortex-A76/A55 processor, before building a computer/NAS with the Arm mini-ITX motherboard, testing various features and running benchmarks.

In the first part of the review, we checked out the Radxa ROCK 5 ITX (Arm) and Jupiter (RISC-V) mini-ITX motherboards with specifications and unboxing, and the Auriga 6-Bay NAS mini-ITX chassis used in this review. I already built the computer with the Jupiter RISC-V mini-ITX motherboard, so here I simply switched the RISC-V motherboard with the Radxa ROCK 5 ITX Arm motherboard and installed a few SATA drives.

Radxa ROCK 5 ITX first boot – A tricky start…

Radxa provides getting started instructions on the documentation website which I mostly follow to hopefully boot within a few minutes. I had to prepare the hardware first. So I installed a 512GB NVMe SSD in the M.2 socket, inserted the PoE module (which I won’t be using here), and I also placed one of the provided thermal pads on the Rockchip RK3588 SoC.

ROCK 5 ITX SSD PoE Thermal Pad

Then I placed the fansink (heatsink with fan) on top of the board, connected the cable to the 4-pin fan connector…

Radxa ROCK 5 ITX fan heatsink installation

… and secured it with the four spring-loaded screws provided with the kit and the metal plate placed on the bottom.

Mini ITX motherboard fixation plate

The board is supposed to ship with ROOBI OS on the eMMC flash to easily install the OS to another storage device. In theory, I just had to find a 12V power adapter combined with a 5.5/2.5mm DC jack through an adapter I got from a laptop jack kit, connect a display, keyboard, and mouse to get started, and install an operating system downloaded from the Internet through the ROOBI OS interface…

Radxa ROCK 5 ITX 12V DC power

But in practice, all I got was a blank screen, and connecting the board to Ethernet did not provide any IP address. The fan was working, so it was unlikely to be a power issue. So I decided to connect a USB-to-serial debug board to check out the output from the serial console. It works at 1,500,000 bps, and Bootterm would only max out at 1,000,000 bps with the serial board I had at the time and some gibberish was outputted… Radxa told me maybe ROOBI OS was not installed. But I decided to move on with the RISC-V motherboard testing first, and only do further checking once I moved to another house where I had a USB-to-serial adapter that I know for sure works at 1.5 Mbps.

Installing ROOBI OS and Debian on the ROCK 5 ITX motherboard

About two weeks later, I finally connected the better USB-to-serial debug board that works at 1,500,000 bps, but I had to output. For reference, it’s a CH340G USB to TTL debug board that I got with a development board many years ago and should be that model on Amazon.

Radxa ROCK 5 ITX serial debug board

So I decided to install ROOBI by following the instructions on the documentation website. After downloading ROCK5-itx-ROOBI-Flasher-v1.2.1.img.xz (which took me four tries as the file is probably hosted in China), I flashed it to a microSD card using USBImager. Then I had to remove the M.2 NVMe SSD since the update procedure requires there aren’t any other storage devices, and inserted the microSD card into the ROCK 5 ITX mini-ITX motherboard.

I monitored the output from the serial console (shorterned):


The good news is something boots, but it’s not showing anything about the update, so I connected a display that confirmed ROOBI OS was flashed properly with the ROOBI Flasher.

ROOBI Flasher for ROCK 5 ITX

I then turned off the board and installed the M.2 NVMe SSD back as well as an M.2 WiFi 6 and Bluetooth 5.2 module that I got with the Radxa ROCK 5B two years ago. I finally got a prompt asking me to select the language.

ROCK 5 ITX ROOBI OS installation

I carried on with English and was asked to agree to a software license and service agreement.

ROOBI OS SLA

Not quite sure where it can be found and didn’t plan to read it, so I just clicked on Next…

ROOBI Network Configuration

The next step is network configuration which is required to download the OS. If you have connected an Ethernet cable and DHCP is enabled, you can just click on Skip, but I went to WiFi and could confirm the M.2 WiFi module is working fine.

ROOBI OS Selection Debian Armbian

After that, it will retrieve the list of supported devices from the web. At the time of the review, two OS could be selected:

  • Debian KDE (1.33 GB) – Officially supported
  • Armbian Desktop (1.46GB)  – Community-supported image based on Ubuntu 22.04 Jammy and KDE.

I went with the officially supported Debian image and was asked to select a storage medium. The only option was /dev/nvme0n1 (i.e. the 512GB NVMe SSD I had installed on the board), so it’s all good.

ROOBI installation medium selection

After a warning saying all data from the SSD would be erased, I confirmed, and ROOBI started to download the Debian KDE image.

ROOBI Download Debian

Once the download is complete, it will automatically flash the OS image to the selected medium, and finally reboot the system within 10 seconds after a successful installation.

ROOBI Success

If you don’t have a spare display, you can also access the ROOBI wizard through a web browser using http://roobi.local or the IP address. That would only work with Ethernet, or after WiFi configuration in the main interface.

After a final reboot, I go to the KDE login prompt.

Rock 5 ITX mini-ITX motherboard RK3588 Debian KDE

Before starting the computer build, I wanted to make sure WiFi was indeed working in Debian KDE since I’m going to move outdoors for the assembly process without access to Ethernet…

Radxa ROCK 5 ITX Debian WiFi 6

It took way longer than it should have, but I’m happy I have the system up and running!

Computer / NAS build with ROCK 5 ITX motherboard and Auriga chassis

That means we are now ready to build a computer / NAS with the ROCK 5 ITX Arm mini-ITX motherboard and the Auriga 6-bay NAS mini-ITX chassis. I also prepared four SATA drives to make use of the SATA ports from the motherboard with two 2.5-inch SATA HDD and two 3.5-inch SATA hard drives.

Build computer NAS ROCK 5 ITX Arm mini-ITX motherboard

I took out the Jupiter RISC-V motherboard from the chassis and installed the ROCK 5 ITX motherboard with its rear panel following the same instructions as for the SpacemIT K1 RISC-V motherboard. Then I started installing the hard drives. The Auriga enclosure ships with a screws box that has M3 screws for 2.5-inch drives and M3.5 screws for 3.5-inch drives.

Screws set 2.5-inch 3.5- inch SATA drives

I took out the two trays on the top and secured the 2.5-inch SATA drives with three M3 screws each fastened at the bottom of the tray.

2.5-inch SATA drive bays

I did the same with the two middle trays but for the 3.5-inch drives using six M3.5 screws for each (three on each side).

3.5-inch SATA drive trays

I could now slide the tray into place and the drives were inserted into the internal SATA connectors (laptop type).

ROCK 5 ITX NAS four SATA drives

Back to the motherboard, I connected the ATX power cables, and the SATA cables set provided with the Auriga enclosure. I connected P1 and P2 cables to SATA 1 and 2 on the board, and P4 and P5 cables to SATA 3 and 4. I had to skip P3 because the P4-P6 cables are longer. You’ll understand by reading on…

ROCK 5 ITX ATX Power SATA

The next step was to pass the cables set through the opening in the case and connect P1 and P2 to two of the SATA ports on the left side, and P4 and P5 to two of the SATA ports in the middle. I had to remove the fan because the space was too tight for my hand.

Auriga 6 Bay NAS mini-ITX chassis SATA cables wiring

I had already connected the two SATA port cables in the RISC-V motherboard review… The final wiring step was to connect the power LED and power switch wires as instructed in the assembly guide.

ROCK 5 ITX Power LED Power Switch wires

I did not connect anything to the audio header or the USB (2.0) connector because the Auriga case does not have any corresponding cables. It does have a USB 3.0 cable that we used with the Jupiter RISC-V motherboard, but the ROCK 5 ITX motherboard had no such connector meaning the USB 3.0 on top of the chassis will not be usable. The WiFi module would benefit from SMA antennas since it’s now inside a metal enclosure, especially the rear plate has two openings for those.

After a final test, I completed the build by attaching the four metal plates. Here’s the results

ROCK 5 ITX Review: Build Arm Computer NAS

The four SATA drives are detected properly, WiFi 6 is still working, and so are the mouse and keyboard.

Auriga NAS Chassis ROCK 5 ITX mini-ITX motherboard

We can see the mini-ITX motherboard’s rear panel with its rear plate to which I connected two RF dongles for the keyboard and the mouse, and an HDMI cable. While the ROCK 5 ITX has a PWM fan the the processor, it lacks connectors to control the fan of the Auriga chassis, so those are not in use.

System information

Let’s check some system information.

Debian 11 KDE System Information

We can get a few more details in the command line:


The system runs Debian 11 with Linux 5.10.110, and my ROCK 5 ITX board comes with 16GB RAM. The 512GB SSD is also detected, and two partitions from the SATA drives that I mounted manually can also be seen

inxi utility has more details:


Everything is here including the 8GB eMMC flash used by ROOBI OS and the four SATA drives I installed on the system. The idle CPU temperature is reported to be 40.7°C.

The system does not rely on Wayland…

ROCK 5 ITX Debian 11 No Wayland

… but X11 instead, and it looks like the GPU is disabled for that part (llvmpipe driver shown in the System Information screenshot).

ROCK 5 ITX Debian 11 X Server

ROCK 5 ITX features testing

I’ll run some feature tests like I did with the MILK-V Jupiter RISC-V motherboard. Arm is more mature, so I’ll expect more features to work, but we’ll see.

I’ll share the details of the tests below, but here are the results first. I highlighted things that look pretty bad in red and the items that can be improved in orange :

  • GPU – Fail
    • glmark2-es2-wayland – Can’t run because Wayland is not supported
    • glmark2-es2 – Score: 250 points. But I had to try four times, because the system will log out at random times, and graphics rendering issues occur (See screenshots below).
  • Video Playback
    • YouTube Full HD @ 60 FPS in Chromium (VP9)  – Almost watchable, but many frames are dropped. Chromium will often crash with the “Aw. Snap!” window.
    • YouTube 720p60 in Chromium (VP9) – Similar as above
    • YouTube 480p60 in Chromium (VP9) – Video playback OK, but Chromium will often crash with the “Aw. Snap!” window.
  • Storage
    • SSD – OK. Speed: 1.45 GB/s reads; 1.46 GB/s writes; Note: SSD rating: R: 2,050 MB/s; W: 1,700 MB/s
    • SATA – All four SATA drives detected. iozone test on EXT-4 partition: 138MB/s reads, 142 MB/s writes (OK for this drive)
  • HDMI
    • Video Output
      • HDMI 1 – OK. Test at 1920×1080 resolution
      • HDMI 2 – OK. Test at 1920×1080 resolution
      • Dual display – OK; 2x 1920×1080
    • Audio Output – OK. Tested with YouTube video
    • Input – HDMI input not tested (not documented).
  • Audio jack
    • Output – OK. Tested with YouTube video
    • Input – Not Tested, but it shows up as “Analog Input (Build-in Audio Stereo) in the Settings.
  • Networking
    • Ethernet #1 (Left) – OK – iperf3 results: Full duplex: 2.35 Gbps/2.32 Gbps
    • Ethernet #2  (Right) – OK – iperf3 results: Full duplex: 2.34 Gbps/2.34 Gbps
    • WiFi 6 – OK. iperf3 results: DL:  752 Mbps; UL: 771 Mbps.
    • Bluetooth – OK. Tested with Bluetooth audio through speakers connected to the audio jack.
  • USB
    • 2x USB 2.0 ports: OK – Tested with RF dongles for keyboard and mouse
    • 4x USB 3.0 ports: OK – Tested with ORICO NVMe SSD enclosure. Link speed: 5 Gbps
    • “Full-feature” USB Type-C port – OK
    • USB 3.0 port on top of the case – Not connected because ROCK 5 ITX back a USB 3.0 internal connector.
  • Misc
    • Power button – OK. The board will first start automatically when applying power. Pressing the power button once will bring up the power off/reboot/log-out pop-up. Once the system is turned off, pressing the button again for a few seconds will power on the system.
    • LED on chassis – OK; orange when off and some green LEDs appear when turning the system on.

The ROCK 5 ITX motherboard is also much more responsive than the Jupiter RISC-V motherboard.  The RK3588 system works well as a headless system, but there’s still some work as a desktop system with Chromium crashing frequently, YouTube video playback only working (quite of) at 480p60, and 3D graphics acceleration having issues. I had plans to install OpenMediaVault on Debian for testing the NAS function, but I’ll have to skip since I’ve run out of time for this review, and close to 15 other items are still patiently waiting for review…

Here’s some of the data for the list of features tested above.

glmark2-es2 results and graphics artifacts. A reboot is needed to recover.

ROCK 5 ITX glmark2 es2
Graphics issue when running glmark2-es2
OpenGL ES artifacts RK3588 mini ITX motherboard
Graphics issue when running glmark2-es2

Storage test results.

SSD:


SATA drive:


Networking test results with iperf3.

Full duplex 2.5GbE (left port):


WiFi 6

  • Upload:

  • Download:

ROCK 5 ITX benchmarks

Rockchip RK3588/RK3588S is a well-known processor and we have tested several platforms already including ROCK 5B SBC, Mixtile Core 3588E SoM, NanoPi R6S, and others. So I won’t run many benchmarks, and besides the ones above, I only selected one extra: sbc-bench.sh.


Note that while I usually test devices indoors with an ambient temperature of around 28C, I tested the ROCK 5 ITX in the Augira case outdoors (shadow) with an ambient temperature of about 35°C. Yet, the utility reported no thermal throttling and the maximum CPU temperature topped at 51.8°C so the fansink is more than adequate.

The frequency reported by Linux (2400 MHz) for the Cortex-A76 cores was higher than the actual frequency (around 2260 MHz), but this should be due to the PVTM implementation by Rockchip that optimizes the frequency for a given processor. SBC-Bench also complains about high temperatures for three of the four SATA drives, but that’s because the fans are not connected. It should be possible to hack something after finding out the pinout for the fans.

memcpy was 10457.5 MB/s on the Cortex-A76 cores on the ROCK 5B (LPDDR4x), and 12540.4 MB/s for the ROCK 5 ITX (LPDDR5), so switching to LPDDR5 does have benefits when it comes to bandwidth. Some reported than the bandwidth was lower on the ROCK 5 ITX due to the RK3588 ddr init code being (over-)optimized for stability, but this seems to be fixed at least according to the memcy test.

7-zip averages 15,780 MIPS on the ROCK 5 ITX against around 16,243 MIPS on the ROCK 5B, but this looks to be due to the lower CPU frequency on the Rockchip RK3588’s on my board (2,257 MHz vs 2,304 MHz). If I adjust the score for the difference in CPU frequency, the ROCK 5 ITX would have delivered around 16,108 MIPS.

Power consumption

I measured the power consumption with the four SATA drives, two RF dongles, HDMI cable, and WiFi 6:

  • Power off – 8.0 – 8.1 Watts
  • Idle – 27.6 – 27.9 Watts

Conclusion

Building an Arm computer and NAS with the ROCK 5 ITX was a fun experience. At this stage, it works better than the Jupiter RISC-V motherboard with an 8-core SpacemIT M1 64-bit RISC-V SoC both in terms of features and performance. But it’s not ready to be used as a daily driver in desktop mode, as Chromium will often crash, YouTube only works reasonably well at 480p60, and 3D graphics acceleration is not reliable.

What it can be used for right now is as a DIY NAS. Network throughput is excellent (both 2.5GbE and the WiFi 6 module I tested), NVMe SSD (PCIe Gen3 x2) storage delivers good performance, and you can build a NAS with up to 88TB storage thanks to the four SATA ports.

I’d like to thank Radxa for sending the ROCK 5 ITX mini-ITX motherboard with Rockchip RK3588 SoC and 16GB LPDDR5 memory, as well as the Auriga 6-bay NAS chassis. The Radxa ROCK 5 ITX motherboard with 16GB sells for about $160, but it’s out of stock on Amazon, AliExpress, Arace, and AllNetChina right now… The Auriga chassis goes for about $100 on Aliexpress, and the 350W MSI PAG A350 PSU used in this review for about $70 on Aliexpress.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard

14 Replies to “Radxa ROCK 5 ITX RK3588 mini-ITX motherboard review – Building an Arm PC and NAS with Debian KDE”

  1. The Armbian bookworm images are carrying an up-do-date kernel (6.1.75 at the moment) and GPU drivers that likely resolve most if not all the issues you’ve encountered: https://www.armbian.com/radxa-rock-5-itx/

    I’m not sure why they’re not listed in the site above but there’s bookworm cinnamon and xfce builds available that can be found under the listed mirrors: mirror-eu-de1.armbian.airframes.io/dl/rock-5-itx/archive/ (Munich mirror; other mirrors: github. com/armbian/mirror )

    Admittedly though, my experience with Armbian doesn’t extend to this particular board and SoC. However, from what I’ve seen, Armbian is quite literally the only distro to carry many important and even essential out-of-tree patches and drivers.

    It’s actually quite disconcerting so few people seem to be aware that Armbian is often not only the first but the exclusive target for the vast majority of board developers especially in China and that what little there is of a user community for these boards is largely centered around Armbian with the likes of Debian only rarely / occasionally picking up some patches from there.

  2. “Ethernet #2 (Right) – OK – iperf3 results: Full duplex: 2.34 Mbps/2.34 Mbps”

    I hope you meant Gbps!

  3. This shows just how much further the RK3588 has to go, software wise, 2 years after first release. Another lemon in the making right now.

    I would much rather build an N100 or N97 equivalent.

    The only positive for me was the cooling.

  4. Thanks for the tests, Jean-Luc. Could you please capture the boot messages from the serial port ? I’d like to see if u-boot configures the RAM at 2400 or 2736 MHz. It’s at 2400 on your Roobi installation SD but I don’t know what was flashed. I’m seeing that you’re running on the 16GB RAM version of the board, I’m on the 8GB one, but that shouldn’t make a difference in speed since only the DRAM controller should have any effect.

    Also, do you have the whole sbc-bench output, with tinymembench and ramlat outputs ?

    1. I’ll be able to check the serial port on Saturday because I don’t have access to the system right now. Remind me in case I forgot.

      About sbc-bench.sh, I copied the full output of the benchmarks. Maybe you can find the outputs you need in one of the links in the output?

      1. > Remind me in case I forgot.

        Not sure I’ll think about it 🙂

        > copied the full output of the benchmarks. Maybe you can find the outputs you need in one of the links in the output?

        Guess what ? before asking, I has carefully scanned the article for a link to the data, and even eyed over the output multiple times but couldn’t find it (I did find the tinyurl though). But your comment made me search again even deeper and now I found it: https://0x0.st/X45F.bin . Thank you!

        I was indeed looking for ramlat/tinymembench outputs to compare with mine and see if 8GB and 16GB are of the same speed (they should, but we never know…).

        So we do have the exact same numbers, which also indicates that you’re not affected by the DMC that takes ages to switch to full speed. Maybe they updated the threshold, I remember Thomas experimenting a lot about it and suggesting some settings (20% threshold or such a thing).

        No need to worry about the serial output, now I’m fairly certain you’re set at 2400 MHz like me, and at this speed normally the DMC is enabled (it’s done on newer versions with properly matching blobs).

        BTW, next week-end I’ll update the ramspeed package with a measurement of the max read speed from the RAM (over multiple cores). I could run tests on various machines and found that all tested x86 reach 85-87% of the DDR bandwidth, even up to 90% with dual-ranked DRAM, that most ARM (including RK3588) cap to about 60% (65% for mcbin, 66% for rock5b), except the Altra with reaches an amazing 94%! That will help us figure what’s happening when sometimes we’re facing strange timings and/or limitations.

        But overall the ROCK5 ITX is doing well compared to other ARM boards. It could do better but it’s quite good. You’ll get used to it over time and will love it, I’m sure 😉

  5. I just received this board a few days ago, and had the same issue. Completely black screen on boot, existing UART cable didn’t work due to baud rate requirements. After compiling my own rkdeveloptool binary, I was able to get edk2-rockchip flashed onto the device which gave me something on the UI. I still have yet to see a U-Boot menu appear…Overall, a pretty frustrating experience so far. Also, mainline Linux kernel support is landing in 6.10, so hopefully the situation improves soon.

  6. I ordered one of these after having acceptable results with my Rock 5B and Orange PI 5 Plus boards for what I was doing. While I haven’t set it up yet I’m somewhat concerned about how it’s going to go. That the CPU cooler is sold separately is quite a pain, and while I’m not an expert on the dimensions of mounting holes for CPU coolers it’d be nice if had some stated standard where one could go out and buy an off the shelf cooler for it. According to the specs I’ve read the holes are 84mm apart, while something like the LGA115x coolers are 75mm.

    1. You can use any compatible x86 CPU cooler for it, that’s what I did here. It doesn’t need to be very strong, the CPU doesn’t heat much, I unplugged the fan on mine, while it was an appliance model (very thin), so it doesn’t radiate much but it remains cool enough anyway.

  7. The emmc was empty in m case. Followed the guide and it works fine. In my case under armbian cpu was always at the lowest frequency. Had to manually adjust cpufrfeq policies. Now it is a speedy beast.

    1. Did Armbian switch to a mainline kernel or not ? Last time I tried (6.11-rc-something), it would still hang during boot, and I spent way too much time trying to get mainline to even just boot on it. I will just not switch my server to this beast as long as it relies on the BSP crap.

Leave a Reply

Your email address will not be published. Required fields are marked *

Boardcon Rockchip and Allwinner SoM and SBC products
Boardcon Rockchip and Allwinner SoM and SBC products