Review of Youyeetoo Rockchip RK3568 SBC with Lubuntu 20.04 and the RKNPU2 AI SDK

We’ve already reviewed the Rockchip RK3568-power Youyeetoo YY3568 SBC with Android 11 – and listed the specifications and checked out the hardware kit –  in the first part of the review. We now had time to switch to Lubuntu 20.04, perform some basic tests, and also have a closer look at the RKNPU2 AI SDK for the built-in 0.8 TOPS AI accelerator found in the Rockchip RK3568 SoC.

Installing Ubuntu or Debian on YY3568 SBC

The company provides both Debian and Ubuntu images for the YY3568 SBC with different images depending on the boot device (SD card or eMMC flash) and video interface used (DSI, eDP, HDMI).

YY3568 debian images
List of Debian 10 images
YY3568 ubuntu images
List of “Ubuntu 20” images

Our YY3568 “Bundle 5” kit comes with an 11.6-inch eDP display so we’ll select the “Ubuntu 20” image with edp in the file name. The RKDevTool program is used to flash Linux images and it’s the same procedure as we used with Android 11.

RKDevTool Ubuntu Image

After the installation is complete, we can press the Reset button and boot into Ubuntu 20.04, or more exactly Lubuntu 20.04 with the LXQt desktop environment.

Youteetoo YY3568 Lubuntu 20.04

YY3568 Linux system information
YY3568 system information (Phoronix Test Suite)

Benchmarking YY3568 SBC in Linux

Now that we have Lubuntu 20.04 properly installed, we can run some Linux benchmarks on the YY3568 SBC.

We’ll start with the sbc-bench.sh script from Thomass Kaiser:


You can find the full details @ http://ix.io/4Ga2

We then used iozone from Phoronix Test Suite to test the eMMC flash read and write speeds With a file size of 512MB and a block size of 1MB, iozone reported a 1190.83 MB/sec read speed which does not seem realistic:


That result is clearly due to caching, so we repeated the test directly with iozone using the I parameter to enable “DIRECT IO” to bypass the buffer cache and go directly to disk:


That’s about 153.5MB/s read speed and 98.8MB/s write speed, so the 64GB eMMC flash used in the board is rather fast.

Networking performance

We will test the Ethernet and WiFi networking performance with iperf3 using the router provided by AIS (a telecom operator in Thailand)

The YY3568 board has two Ethernet interfaces. Let’s start with eth0:


All good, and the same can be said when running the test on Eth1:


We used the AIS router’s 5GHz network to test WiFi 5 (RTL8822CE module) and the average data transmission speed was a respectable 575 Mbps.


So networking works well on the YY3568 SBC either with Ethernet or WiFi 5

3D graphics acceleration on Rockchip RK3568

We tested the Mali-G52 GPU performance with glmark2 benchmark with the system getting 115 points.

Lubuntu glmark2 rockchip rk3568


The score is a bit on the low side, but 3D graphics hardware acceleration is enabled.

Video and audio playback

We played YouTube videos to test both video and audio playback.  Youyeetoo YY3568 board happens to have multiple audio output options including a 3.5mm audio jack and a connector with a mono class D power amplifier to connect speakers directly. We had no issues with video and audio playback and everything worked well. This should be a suitable platform for digital signage applications.

YY3568 video and audio testing on Linux

The short video clip above shows a YouTube video played in the Chromium web browser.

Checking out the RKNPU2 SDK for AI workload on Rockchip RK3568 SoC

RKNN-Toolkit2 is a software development kit (SDK) for AI workload running on recent Rockchip SoCs with an NPU, namely RK3566, RK3568, RK3588, RK3588S, RV1103, RV1106, RK3562).

There are two parts to get started

  1. Taking pre-trained models and converting them to the RKNN models using the tools at https://github.com/rockchip-linux/rknn-toolkit2
  2. Using the transformed model through the RKNPU2 available at https://github.com/rockchip-linux/rknpu2

Installation

In this review, we will show how to deploy the YOLO5 model converted through rknn-toolkit2. Let’s build the RKNPU2 sample for the Rockchip RK3568 processor:


When the build is complete, we will get a binary file named rknn_yolov5_demo.

Running YOLO5 on the YY3568 board

In order to test the sample, we will run  rknn_yolov5_demo with two parameters: a model to use and an input image.


The output will be the out.jpg image with boxes drawn with labels around objects detected in the image. The model is trained for 640×640, so don’t be surprised if nothing is detected when using images of different sizes. Besides the bus image, we also tested the man.jpg image with both having multiple objects detected.

YOLO5 Rockchip RK3568
out.jpg


The sample could detect up to 25 objects and it took around 70 ms, or about 14 FPS which can be considered quite fast as using a Raspberry Pi 4 with YOLO5 and the same 640×640 imsges run at only 4 FPS (on the CPU).

RKNN Benchmark

We can evaluate the NPU performance on the YY3568 with the RKNN Benchmark provided in the SDK running the test 10 times to get an average FPS value.


Output:


The average FPS value is 21.5 FPS is even higher than in our single run. It looks like continuously running the model a few times improves the performance possibly because some of the code or data is being cached. In any case, it shows the performance of the YY3568 board is suitable for computer vision applications, as long as real-time processing (30 fps+) is not needed.

YOLO5 with a USB camera

The YY3358 “Bundle 5” development kit comes with a MIPI CSI camera, but sadly we’ve been informed it only works in Android 11, and the Linux drivers are not ready for the camera. So we used a USB camera to do a quick test capture an image and run YOLO5 with one command line:


We could record an image from a USB webcam and send it to the rknn_yolov5_demo  program. In order to draw a frame around object and label the text more clearly, we can edit ~/rknpu2/examples/rknn_yolov5_demo/src/main.cc as follows:


YY3358 YOLO5 USB webcam
Testing RKNPU2 on a Rockchip RK3568 SBC with a USB webcam

Conclusion

After more than one week of testing, we found out that one recent issue with the board is that it freezes and stops working altogether from time to time due to the small heatsink that is not enough to cool the system and keep it running reliably at all times. If Youyeetoo had an extra heatsink +fan set it would be good especially because the board is designed to connect a cooling fan.

Apart from this issue, usability is good and the user guide on Youyeetoo’s wiki is well done. You can read the manual without having to be an expert at all. In terms of AI usage, the Rockchip platform is continuously evolving and improving as can be seen from the latest release date for the RKNPU2 SDK on GitHub (three weeks ago at the time of publication).  There’s some learning curve to using Rockchip boards, but the performance/price ratio typically makes them interesting choices.

We’d like to thank Youyeetoo for sending the YY3568 “Bundle 5” devkit for review. The YY3568-Core CPU module, YY3568 SBC, and the Bundle 5 kit reviewed here can all be purchased on AliexpressAmazon, or Youyeetoo store with prices starting at $36.99 for the module only. The “Bundle 5” kit reviewed here with a module equipped with 8GB RAM and 64GB eMMC flash sells for $206.15 plus shipping.

CNXSoft: This article is a translation – with some edits – of the original review on CNX Software Thailand by Arnon Thongtem, and edited by Suthinee Kerdkaew.

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

5 Replies to “Review of Youyeetoo Rockchip RK3568 SBC with Lubuntu 20.04 and the RKNPU2 AI SDK”

  1. Always thought its a shame that the RK3566/RK3568 all suffer from cost bloat of all function technology demonstrator SBC that maybe focus on what they have some unique selling points.
    The RK3568 pcie3.0 x2 lanes / 2x ethernet router with maybe not so much bloat in that 80/20 rule could cover a wide array of low cost solutions.
    Even a sata only as the paralels with networked CCTV are strong.

    The ones we do get with all bells and whistles have a problem that maybe the cost is just a tad too high.
    Would love to see a cutdown RK3566 as a lower cost solution and same with the RK3568 but guess we will but inside products.

    1. Well, I think the reason why this dev kit with such all functions is to show people what applications that they could use to for, especially for those who want to build their own product for businees with YY3568 core board and customized carrier board. Such as Intelligent NVR, cloud terminal, IoT gateway, industrial control, edge computing, face gate, NAS, vehicle center control and other scenarios.
      Their up-coming youyeetoo R1 SBC would be the one for specific function you metioned.

  2. The urvanov syntax highlighting creates a scrollable div 1px smaller than its content, so every single source on the page grabs the mouse scroll, preventing the page from scrolling naturally until you allow the page to come to a complete stop, scroll it down 1px, wait a couple seconds, then you’re allowed to scroll again.

    To avoid this papercut, visitors can move their mouse left or right of the syntax highlighter boxes…

    Of course I forget to do that every single time I visit, so instead I wrote a fix for cnx-software in Stylish extension…

    1. I can’t reproduce it myself (or does it only happen on mobile?), but I’ve reported the bug to the developers. We’ll see if they fix it.

Leave a Reply

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

Khadas VIM4 SBC
Khadas VIM4 SBC