ROCK 5B developer edition preview – Part 1: Unboxing and first boot to Debian 11

Radxa ROCK5 Model B (aka ROCK 5B) is one of the most anticipated Rockchip RK3588 single board computers due to its features set and relatively affordable price. It was first showcased in January, but it’s taking a while as the Cortex-A76/A55 SoC is a complex beast. The good news is that the public launch is getting closer as Radxa sent “developer edition” samples to developers and enthusiasts for a “debug party”. I was one of the recipients so, in this post, I’ll have a closer look at the latest revision of the board, and give it a quick try first before going into more details in the second of this preview.

ROCK5 Model B unboxing

I received the 16GB RAM version which should be the same for all board part of the “developer edition batch.

Developers are invited to submit reports to Radxa forums, and since those are public, anybody can have a look at the current state of affairs.

I also got a 16GB eMMC module (FORESEE) with my board.

The design has changed a little bit with the HDMI IN connector moved to the front panel, MIPI DSI and CSI connected moved to the side edge of the PCB, and heatsink mounting holes dimensions changed to “north bridge” dimensions.

Besides the micro HDMI input ports, the front panel comes with the power and recovery keys, and a color-coded 40-pin GPIO header. As one would expect, Rockchip RK3588 should get pretty hot under load, so a 5V fan + heatsink has been fitted on top of the CPU.

The rear panel comes with a 3.5mm audio jack, a USB 3.0 Type-C port with Display Alt mode also used to power the board, two 8K-capable HDMI 2.1 ports, two USB 2.0 ports, two USB 3.0 ports, and a 2.5GbE port.

My board is also equipped with an Fn-Link 6252M-PUB WiFi 6 and Bluetooth 5.2 module powered by a Realtek RTL8852BE chip that’s not listed on the Realtek website just yet but is supposed to be an AX1800 chip with support for up to 1148 Mbps link when using 802.11ax. Something to test using the Xiaomi AX6000 and TPLink 2.5GbE donated by Radxa earlier this year.

The bottom side of the board comes with an M.2 Key-M socket for NVMe SSD, MIPI DSI LCD and MIPI CSI camera connectors, as well as an eMMC socket.

Talking about the eMMC socket, let’s install the 16GB module I’ve received. A Raspberry Pi 4 SBC is shown for scale. While Rockchip RK3588 is not the most powerful system I used, it will be “desktop-class”, and in terms of interfaces, ROCK 5B may well be the most featured board or computer I’ve ever owned with 2.5GbE, WiFi 6, 8K video output, 4K video input, support for PCIe Gen3 x4 storage, etc… That’s quite impressive for a board that should sell for just under $200.

ROCK 5B first boot to… Debian 11

Let’s connect a USB keyboard and mouse, an Ethernet cable, an HDMI display, and a USB-PD power supply (the one that came with Khadas VIM4).

I waited for a while, and all I got was a black screen with the message “no signal” from time to time… As you can see I connect the HDMI port next to the USB-C power port. So I tried the other HDMI port closer to the USB ports…

And success! It’s called a “debug party” for a reason, and several features ought not to work or it would no fun. I could login with “rock” password, but finally connected through SSH since it’s easier for the review.

Let’s check some system information:


The processor is clocked at up to 2304 Mhz, and the system is using the same Linux 5.10.66 as in Android 12 on Mekotronics R58. Mainline Linux may eventually happen but it will take a long time. Inquiring minds may also be interested in the boot log.

Let’s have a quick performance check with sbc-bench benchmark:


Oops! The board actually crashed and rebooted during the benchmark. Let’s try again, while monitoring dmesg just in case this happens again.


Sadly, it’s the same results, and dmesg does not provide any useful information. So instead, I’ll use tkaiser results for 7-zip:


For reference, here are the results for Raspberry Pi 4 @ 2.0 GHz (with heatsink and fan):


… and the more powerful (and expensive) UP Xtreme i11 Tiger Lake mini PC (Intel Core i7-1185GRE):


If we look specifically at 7-zip benchmarks, ROCK 5B is 2.4 times faster than an overclocked Raspberry Pi 4 and can deliver about 90% of the performance of an Intel Core i7-1185GRE processor. Not too shabby :). Stability may have to be worked on though, as I’ve been unable to run the benchmark on my own board.

This looks promising. In the second part, besides running benchmarks, I test various peripherals, 3D graphics, video playback (probably software decode at this stage), etc…, and see how it performs as a desktop machine.

Share this:

Support CNX Software! Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

36 Replies to “ROCK 5B developer edition preview – Part 1: Unboxing and first boot to Debian 11”

  1. As for the ‘crashes’… you can use the sensors command since the PMU is accessible via I2C and can tell which USB PD or QuickCharge settings have been negotiated between power brick and board.

    1. Here’s the output:

      That’s 12V @ 1.5A.

      1. > That’s 12V @ 1.5A.

        18W should be enough (with my measurements the board running under full CPU load w/o peripherals doesn’t exceeded 10W consumption) but most probably power source is unstable. If you have a laptop USB-C charger I would give it a try.

        The heatsink seems to have contact issues. ‘My’ board reports 11°C less in idle (26°C ambient temp).

        1. I’ve tried three other configurations:

          • Khadas VIM4 USB-C power adapter with a shorter cable.
          • 5V/3A Raspberry Pi USB power supply
          • 100W MINIX GaN USB-C power supply (also negotiated to 12V/1.5A)

          I suppose the problem is somewhere else. I should probably connect a serial debug board.

          1. The USB PD negotiation can be totally controlled in the dts/kernel driver. Quick Charge is not supported since it’s a full function USB C with data and display port.

          2. SBC Bench will stop at random places. Sometimes in tinybench, other times in OpenSSL or 7-zip. This kind of problem is often related to timings. Is there a way I can set up the RAM to run at more conservative timings?

          3. RAM timings usually provoke segfaults all the time, rarely silent hangs like this. Many years ago I used to use a parallel build of glibc to detect errors, and it used to be extremely reliable at this!

            In your case I’d rather think about a CPU stability issue. You could try to reduce the allowed frequency for the CPU to 2.208 GHz for example and see if that still happens. Do not underestimate the little cores by the way. On my NEO4 (RK3399) they were often the ones failing first and I had a tendency of forgetting to check them as carefully as the big ones.

          4. Just for the record: I powered ‘my’ board with RPi’s 15W USB-C charger and and benchmarked again without any problems (since consumption remains below 10W)

            As for Willy’s suggestion an ‘apt install cpufrequtils’ followed by ‘cpufreq-set -h’ might be the fastest way…

          5. Jean-Luc, can you please give latest sbc-bench version from Github another try? There was a bug switching back to ondemand cpufreq governor. With latest version board should remain at highest cpufreq OPP and as such switching between different clockspeeds (and supply voltages) shouldn’t happen any more.

            Maybe this fixes the freezes?

          6. I’m playing with the Mekotronics device (Android) right now, I’ll switch to ROCK 5B again this coming weekend.

          7. This does not fix the freeze.
            If I set the frequency of the big cores to 1.01GHz with cpufreq-set:

            It only stays that way until the benchmark starts, and then jumps to 2304 MHz:

          8. Got lucky and managed to complete one run:

          9. So your A76 cores are limited to 2280 MHz. Would be interesting if you can do some stress test by running sbc-bench in a loop for some time.

            If your board survives this now and you’ve changed nothing else (power bricks, cables), then testing again with the older sbc-bench version resulting in freezes most probably cpufreq driver is the culprit.

          10. I got one successful run out of three. So I’m not sure we can consider this resolved 🙂

          11. Ok, then in case you already tested with Armbian (exactly the same outcome as with Radxa’s Ubuntu since essentially everything the same except extlinux.conf gone) I can provide a more recent BL31 (MD5: fc8737fd1610db1c9a9396efb83413d4)

            Only works on Armbian, requires ‘dpkg -i’ and a reboot but then Rock5B should run with BL31 v1.26 instead of v1.25. Maybe this changes something…

          12. Do you mean exactly the same as Radxa’s Debian? Because my eMMC flash module shipped with Debian 11.

          13. No I’m talking about those Armbian images: https://github.com/rpardini/armbian-release/releases

            Jammy though but since it’s same kernel and same u-boot and (almost) same settings everything performs the same. Just with the Armbian image you can easily replace the bootloader package and as such the boot BLOBs that got compiled into the above debian package.

    2. By the way, I’ve just seen the board did not reboot the second time, it just froze.

  2. I’ve previously watched a review of the RK3588 Mekotronics device and that reviewer noted it vastly out performed the Nvidia Shield TV. Only thing Nvidia device has is much better software support. If the price can be kept and if Rockchip support improves, the RK3588 and maybe the S version will raise the performance to $ bar high.

  3. Jean-Luc,

    regarding your 2304 MHz, it’s like for me, though for me cluster 1 is 2304 and cluster 2 2352:

    For @tkaiser both are at 2400. We found a pvtm value which differs and seems to condition the frequency, though I don’t know what it is, I’m suspecting some inaccurate measurement that might be causing an identification problem. And your values are slightly lower than mine though in the same range and would indicate a relation with that 2304 MHz frequency:

    Mine:

    Yours:

    @tkaiser’s:

    Note that the 3 of us are having a different value for cpu0 but apparently we’re using 1800 MHz for the A55 so it might not just be that.

    1. > dmesg|grep cpu.*pvtm

      Just added this info to sbc-bench’s data collection 🙂

      Most probably this stuff not only explains which cpufreq OPP become active but also the obscure clockspeed behaviour (real clockspeeds almost always differing from cpufreq OPP)

  4. I would love to see more about the board’s power consumption in the next part of the review, especially when idling and during workloads like software decoding, maybe video playback in the browser?

    10W at 100% CPU is already very comfortable to power the board from a battery.

    Also curious about what power inputs it supports, is it usb-c only or are there other options?

  5. Curious if the HDMI input is somewhat usable and stable. Also curious if the hdmi input includes audio. Jean-Luc, I’m looking forward to you hopefully playing with that in the next review. Or perhaps Tom C could answer ths one?

  6. There are 2 vesions and it seems that you received the first version who as some power supply issues… They forgot a lot of MLCC capacitors around the Rockchip power chip !

  7. I would like to buy ROCK 5B developer edition preview, please give more information: availabilty, price, where buy it, it can work with raspi camera for video…? waiting for information. Thanks Loui

  8. Hope for your second part to overclock it!

    for your hight temperature use another fan under the mobo in parallel of the above

  9. Do think this will have a passive heatsink option. I ask as I am very bias to SBC solutions with passive heatsinks.

      1. Willy,

        Thanks for the link. Hopefully there will be a passive heatsink option that will fasten like the pic of this article shows for the fan/heatsink used. The types of applications I will want to use with a Rock 5B 16Gb version will be CLI (no DE/No GUI) 24/7/365. Depending on the CPU power a few application uses will involve 100% CPU all cores for 3-7 minutes every 10 minutes to make several passes and complex calculations for each pass of the 20,000,000 records every 10 minutes. No database involved, just number of fields of numerical data for each record of the 20,000,000 records passed multiple times. It is the number of records and calculations elements that will demand the 16GB of RAM as the actual applications processing this data are very small and of course CLI based code.

        1. Interesting, such workloads are not much different from a developer’s build farm which heats for a few minutes, then cools down, then heats again etc.

  10. Any chance this has POE support? That is the one thing I haven’t seen much of in the Pi competitors.

Leave a Reply

Your email address will not be published.

Advertisement
Advertisement