VisionFive 2 Lite SBC Review – Ubuntu 24.04 on a low-cost RISC-V SBC in 2026

StarFive has sent me a sample of the VisionFive 2 Lite RISC-V SBC for review. It’s a low-cost credit card-sized board based on the StarFive JH7110S quad-core RISC-V SBC and designed to get started with Linux RISC-V on the cheap.

When I first tested the earlier VisionFive 2 SBC with a StarFive JH7110 RISC-V SoC in February 2023, I didn’t call it a review, but rather a hands-on experience, since, at the time, many features still didn’t work properly. Almost three years have passed since then, so reviewing the VisionFive 2 Lite SBC with Ubuntu 24.04 will allow us to see how much progress has been made on the software side. If you are in a rush, you can jump to the what works, what doesn’t section.

VisionFive 2 Lite RISC-V SBC Ubuntu Review 2026

VisionFive 2 Lite unboxing

I received the board in a plastic box with a cover reading “VisionFive 2 Lite Your Gateway to RISC-V”.

VisionFive 2 Lite package

The bottom side has important information with links to the documentation, GitHub account, and the RVspace website for more details and a support forum.

VisionFive 2 Lite documentation GitHub

We’ll just find the board itself and an IPEX antenna in the plastic case that the VisionFive 2 Lite is shipped.

StarFive VisionFive 2 Lite unboxing

On the top side of the board, we have the StarFive JH7110S SoC, a 4GB BIWIN BWMZAX32H2A-32Gb-X memory chip, an LB-LINK BL-M8800DS2-40 dual-band WiFi 6 and Bluetooth 5.2 module (based on AIC8800), the MIPI DSI and CSI connectors, a PoE header, and a 40-pin Raspberry Pi-compatible GPIO header.

StarFive JH7110S SBC

On the bottom side, we’ll find an M.2 PCIe Gen2 x1 socket for storage or AI expansion, a microSD card slot to boot the OS, and an AXP15060 PMIC.


VisionFive 2 Lite M2 socket microSD card slot

We can get a clear view of the port at an angle. Front left to right: a USB-C port for power, an HDMI port, a Gigabit Ethernet port, a Reset button, and four USB ports (3x USB 2.0, 1x USB 3.0).
VisionFive 2 Lite angle view

I found the antenna harder to install than expected, but eventually managed. I had to use the tip of a pencil rather than its eraser to insert the antenna into the IPEX connector on the board.

VisionFive 2 Lite antenna installation

Ubuntu 24.04 installation on the VisionFive 2 Lite

We’ll need some accessories to get started, namely a microSD card, a power supply, a wireless keyboard/mouse combo, an HDMI monitor, and an optional, but recommended Ethernet cable.

You’ll find the latest version of Ubuntu 24.04 for VisionFive 2 boards on GitHub. I downloaded ubuntu-24.04.3-preinstalled-desktop-riscv64+vf2-lite.img.bz2, released on October 16, 2025 (the latest at the time of the review), and flashed the bz2 file with the latest version of the USBImager program to a 64GB Raspberry Pi-brand Class A2 microSD card connected to an Ubuntu laptop.

Once done, we can insert the microSD card into the board, connect all peripherals, and boot it up. After a while, I was able to log in to the system using the default username (user) and password (starfive). That’s a massive progress compared to about 3 years ago, when I didn’t even get video output, albeit with a different display…

VisionFive 2 Lite First Boot to Ubuntu 24.04.3

If interested, you’ll find the full kernel log for the first boot. It took around one minute, and more specifically, around 50 seconds, until the Ethernet link was up, based on the kernel log.

Don’t run apt dist-upgrade to upgrade

At this point, I thought it would be a good idea to upgrade all packages since the image was released in October:


This updated 207 packages. Everything still worked fine, and I could run a few tests normally. That is, until I rebooted. The system became barely responsive, and I noticed 100% usage on one core from the gnome-shell process.

Before the reboot, I could run glmark2-es2-wayland with Imagination GPU drivers:


But after, I would only run using software rendering:


I noticed a few errors in the kernel log about the GPU failing to load the firmware:


I tried to revert the changes, but then I noticed apt failing to update the boot partition since it ran out of space:


So I gave up and flashed the image another time. I could still install programs safely with apt, but planned to avoid system updates until PowerVR support is upstreamed (work-in-progress).

That’s until I got an answer from StarFive, which explained updates are possible with the following commands:


I eventually tried that, and it didn’t mess up my system this time around.

Ubuntu 24.04 System Information

Let’s check the system information. The name of the processor is blank, and the disk capacity is marked as unknown, but at least we’re shown 3.8 GiB of memory.

StarFive VisionFive 2 Lite About Ubuntu 24.04

Going to System Details, we can also see the PowerVR B-Series BXE-4-32 GPU, and that the board is running Ubuntu 24.04.3 LTS 64-bit with Wayland and a relatively recent Linux 6.12 kernel (patched by StarFive).

StarFive Linux 6.12 Ubuntu 24.04 PowerVR BXE-4-32 GPU

Let’s run inxi to get a few more details:


The processor features four SiFive U74-MC cores clocked at up to 1.25 GHz, display and audio drivers, Gigabit Ethernet (not sure why two), WiFi, and Bluetooth, as well as a 58.94 GB drive, and 4 GiB of memory. The CPU temperature is 67.5°C. Note that I won’t use a cooling solution like a heatsink or a fan, since it’s not really needed.

VisionFive 2 Lite Benchmarks

sbc-bench.sh would not run properly on the VisionFive 2 in 2023 due to missing packages and other issues. Let’s try it with the VisionFive 2 Lite:


I’ve uploaded the full log for people wanting more details. The maximum CPU temperature was 78.2°C during stress-ng, and the VisionFive 2 Lite did not throttle during the test despite lacking a heatsink for cooling.

Performance-wise, it’s much slower than a Raspberry Pi 4 or 5, and most recent Arm single board computers, but this was expected. For reference, a 7-zip score of 3,290 MIPS corresponds roughly to the performance of a Raspberry Pi 3B+.

Let’s test GPU acceleration with glmark2-es2-wayland.

StarFive JH7110S RISC-V VisionFive 2 Lite glmark2-es2-wayland


So the good news is that GPU acceleration is enabled, even though a score of 322 is rather low. For reference, a Raspberry Pi 5 gets 2036 points in the same benchmark, and an ODROID-M1S SBC based on a Rockchip RK3566 SoC achieved 496 points. Note that the performance can vary a lot depending on the GPU driver used.

We’ll now use Speedometer 2.0 to check the performance in Firefox…

StarFive JH7110S Speedometer 2.0 Ubuntu 24.04 Firefox

3.56 runs per minute is rather low, and the ODROID-M1S and Raspberry Pi 4 can render the same benchmark at 11 runs per minute.

Finally, I tested the GPU support inside Firefox using the WebGL Aquarium demo.

VisionFive 2 Lite WebGL Aquarium Firefox
10 FPS rendering with 500 fish is not super fast, but I could confirm that the “WebRender” used the “Imagination Technologies – PowerVR B-Series BXE-4-32” WebGL Driver to render the scene. So 3D graphics acceleration is also working in Firefox. The performance is not amazing, but I remember it took a long while before this became supported on Arm hardware, so it’s nice to see it working on RISC-V too.

Firefox GPU accelerator Imagination PowerVR BXE- 4-32 GPU

Storage and USB performance

Let’s start the storage performance test, by running iozone3 on the MicroSD card with the OS:


That’s about 23 MB/s reads and 21MB/s writes, with good random I/Os thanks to the Class A2 rating. However, we should note that the 64GB Raspberry Pi micro SD card is almost four times slower than when connected to a more powerful Raspberry Pi 5 SBC. Here are the Pi 5 results for reference:


I then connected a 128GB MAKERDISK NVMe SSD to the board’s M.2 PCIe socket.

128GB NVMe SSD StarFive VisionFive 2 Lite SBC

Once we are up again, we can test the drive:


It’s rather slow, and I can reproduce the results when running the test a second time. The best performance is achieved when using a 1024k record length, where the read speed is about 147 MB/s, and the write speed is around 143 MB/s. That’s quite unusual since 16M usually performs best. For some reason, the results vary a lot if I change the test file size from 1GB to 100MB:


Again, I can reproduce this result when running the test a second time. I suppose some caching is involved here, even though we used the direct I/Os option on the command line. The reported performance is now 295 MB/s for reads, and 291MB/s for writes. That’s still not optional for a PCIe Gen2 x1 socket, since it should be able to achieve above 400 MB/s transfer rates. For reference, I got 434 MB/s read speed and 395 MB/s write speed with this exact SSD when connected to a Raspberry Pi 5 in PCIe Gen2 mode.

I also tested the USB 3.0 (5 Gbps) port with an ORICO enclosure using an NVMe drive, and the USB 2.0 ports with a USB 3.0 hard drive, both using EXT-4 partitions. lsusb and iozone were used to confirm the advertised speed and actual throughput.

Here’s the output for the USB 3.0 port for reference:


And the USB 2.0 port just above it:


Summary for all four USB ports:

  • USB 3.0 port – 5 Gbps – Read speed: 103 MB/s; write speed: 149 MB/s (first try) / 141 MB/s (second try)
  • USB 2.0 (above USB 3.0) – 480 Mbps – Read speed: 39 MB/s; write speed: 39MB/s
  • USB 2.0 (top right) – 480 Mbps – Read speed: 38 MB/s; write speed: 36MB/s
  • USB 2.0 (bottom right)  – 480 Mbps – Read speed: 39 MB/s; write speed: 39MB/s

The USB 3.0 port does not perform quite as well as expected, since a 5 Gbps USB 3.0 port should deliver a throughput of around 400 MB/s with this drive. That’s why I repeated the test twice. The USB 2.0 ports work about as expected, although UAS is not enabled.

Gigabit Ethernet, WiFi, and Bluetooth

Time to test Ethernet and WiFi using iperf3. I’ll start with the Gigabit Ethernet port:

  • Download
  • Upload
  • Full-duplex (aka bi-directional)

That’s about OK for normal use, although the first ten seconds are usually slower. I tested three times in both directions. I had low expectations for full-duplex, but it’s actually not that bad, and the VisionFive 2 Lite handles it pretty well for a low-end RISC-V platform.

I then connected the board to a Xiaomi Mi AX6000 WiFi 6 router using the 5 GHz SSID, and ran iperf3 again:

  • Download
  • Upload

The download and upload speeds are rather poor. So I also checked the link speed:


540 Mbps listed for CNX_Software_Xiaomi_5G. Let’s try to connect to the 2.4 GHz access point (270 Mbps) in case this improves things:

  • Download
  • Upload

The results are virtually the same. For reference, on this testbed, many (high-end) WiFi 6 platforms can deliver 1Gbps+ throughputs. I suppose the SDIO interface (and drivers) might be the bottleneck here.

The WiFi 6 module also supports Bluetooth 5.4. I tested it with an Android smartphone (OPPO A98 5G). I could connect rather easily and managed to transfer a 14.7 MB photo over Bluetooth.

Ubuntu RISC-V Bluetooth File Transfer

It took me three attempts, as I was a bit too slow accepting the request, but the third time it went through.

StarFive VisionFive 2 Lite SBC Bluetooth Transfer Android

While it works, it is really slow to transfer files from my Android smartphone to the SBC. It took 22 minutes to transfer a 14.7MB photo, equivalent to roughly 89.1 kbps bitrate.

I also tried to use the VisionFive 2 Lite as an audio sink, playing music from my smartphone to the HDMI TV connected to the board, but since the bitrate is so low, it didn’t work well with continuous cuts and unrecognizable audio.

YouTube and 1080p60 video playback

Next up are some video tests, starting with YouTube video playback in Firefox. I usually sign in to Firefox to synchronize my account, but it seemed stuck, and I realized that add-ons were not supported. So I had to log out. I’m asked to download the “new Firefox” to get the extension. The current version installed on the board is Firefox Browser 126.0.1 64-bit, while on my Ubuntu 24.04 laptop, it is 146.0.1. There are no official Firefox RISC-V binary releases, so it might need to be compiled from source.

Firefox RISC-V cannot install add-ons

It didn’t stop me from trying YouTube. The system struggled to load the main page of YouTube, so I searched for “4K video youtube”, and loaded a video from there. The first resolution that somewhat worked was 480p, but that just means the image was not just a still picture. The video was unwatchable with 784 frames dropped out of 2269.

VisionFive 2 Lite Firefox 480p

360p was a small improvement, but still unwatchable: 917 frames dropped out of 4566.

VisionFive 2 Lite Firefox 360p

240p was almost watchable (if we ignore the low resolution) with 116 frames dropped out of 4279. Audio worked fine, too.

VisionFive 2 Lite Firefox 240p

So, YouTube video playback in Firefox is not really usable. Let’s see if we have more luck with local files and maybe use the VPU from the JH7110S RISC-V SoC. I started with big_buck_bunny_1080p_surround.avi using ffplay.

VisionFive 2 Lite software video decoding

The video played somewhat fine, but the CPU usage was really high, implying software video decoding. At this point, I realized the video is using the MPEG-4 codec, and the VPU offers up to 4Kp60 H.264 and H.265 video decoding, so that’s why software decode is used. So I switched to a 4Kp30 video with H.264 codec instead.

JH7110S RISC-V H.264 hardware video decoding

We can see lower CPU usage, and the OMX AVC (H.264) decoder is used, implying hardware video decoding. That’s good news, but playing a 4K video on a 1080p display only shows a quarter of the video since hardware scaling is not implemented automatically.

Switching to a 10-bit H.265 video yields the same results: relatively low CPU usage, OMX HEVC (H.265) decoder, and a quarter of the video shown on the display.

JH7110S RISC-V H.265 hardware video decoding

I eventually found out I could just move the window and click the full-screen icon to see the complete video. Scaling does not seem to impact the performance in any significant way.

VisionFive 2 Lite H.265 ffplay hardware video decoding full screen

Raspberry Pi camera and display

The MIPI ports layout looks similar to the one used on the Raspberry Pi’s MIPI DSI and CSI connectors, so I connected a 7-inch Raspberry Pi Touch Display 2 and a Raspberry Pi AI camera.

VisionFive 2 Lite MIPI DSI CSI Raspberry Pi display camera

However, I quickly realized these were not supported, and the hardware compatibility list only mentions Waveshare and Radxa displays and Sony iMX219 camera sensors. So I skipped MIPI testing due to a lack of compatible hardware.

AI workloads – Object Detection

While the JH7110S does not come with a proper NPU, the company still provides samples. I had a quick try at the object detection demos using the USB Full HD camera from AAEON’s NV8600-Nano developer kit.

We can install the demos as follows:


After the first time, the last command failed with the following errors:


It was just a temporary server issue. I had to wait until the next morning, and I could complete the installation.

I ran the YOLO-V3 sample with the following command:


VisionFive 2 Lite RISC-V SBC Review Ubuntu AI Object Detection

It did work, but without AI accelerators, the inference time is rather long at over 1,100ms. Note that the company provides an AI kit with a Hailo-8L M.2 AI acceleration module, so you can use AI with better performance. It’s out of the scope of this review, so I haven’t looked into it.

GPIO

The VisionFive 2 and VisionFive 2 Lite boards feature a 40-pin GPIO header with a pinout similar to what you’d find on a Raspberry Pi SBC.

StarFive VisionFive 2 Lite GPIO header pinout
StarFive VisionFive 2 / VisionFive 2 Lite GPIO header pinout

The command offers a range of Python examples to control the GPIO, but somehow I could not install the tools successfully:


So instead, I used sysfs and libgpio to quickly check the GPIOs:


Everything looks good here.

Summary of what works, what doesn’t

So now that testing is almost finished, let’s go through a summary of the tests to see what works and what doesn’t, at the end of 2025 and beginning of 2026 on StarFive’s low-cost RISC-V board:

  • Storage
    • MicroSD card slot – OK, but the 64GB Raspberry Pi microSD card (A2) is significantly slower than when used on a Raspberry Pi 5.
    • NVMe SSD – Works, but relatively slow (up to 295 MB/s under specific conditions)
  • Display interfaces
    • HDMI – Video OK (tested up to 4K resolution), Audio OK
    • MIPI DSI – Untested due to a lack of compatible hardware.
  • GPU – 3D graphics acceleration enabled, tested with glmark2-es2-wayland and WebGL in Firefox. But the performance is on the low side.
  • VPU – Works with ffplay
  • Camera interface – MIPI CSI untested due to a lack of compatible hardware.
  • Networking
    • Gigabit Ethernet – OK (iperf3 DL: 933 Mbps, UL: 942 Mbps, full-duplex:  902/877 Mbps)
    • WiFi 6 – Works, but very slow (16 Mbps at 2.4 and 5 GHz)
    • Bluetooth – OK, but very slow and close to being unusable while transferring a file or playing music from an OPPO A98 5G Android smartphone
  • USB – USB 3.0 port tested with an ORICO NVMe SSD enclosure, USB 2.0 ports with a USB HDD (both using an EXT-4 partition), and an RF dongle for a wireless keyboard/mouse combo. Front left to right
    • USB 2.0 (top) – 480 Mbps; tested up to 39  MB/s with iozone3
    • USB 3.0 (bottom) – 10 Gbps; tested up to 103 MB/s (read)/149 MB/s (write) with iozone3; works, but slower than expected
    • USB 2.0 (top) – 480 Mbps; tested up to 38 MB/s with iozone3
    • USB 2.0 (bottom) – 480 Mbps; tested up to 38 MB/s with iozone3
  • GPIO – OK – Quickly checked with sysfs and libgpio.

Power consumption

I measured the VisionFive 2 Lite’s power consumption using a wall power meter:

  • Power off – 1.7 Watts
  • Idle
    • 3.0 Watts (headless, microSD card, M.2 SSD, WiFi 6)
    • 3.4 Watts (as above + Gigabit Ethernet)
    • 4.2 Watts (as above + RF dongle for mouse & keyboard, HDMI monitor)
  • 4K H.265 video (ffplay) – 6.1 – 7.0 Watts
  • Stress test on all 4 cores (stress -c 4) – 6.1 – 6.4 Watts

Conclusion

A lot of progress has been made since I reviewed the VisionFive 2 in 2023, and everything I tested on Ubuntu 24.04 worked, a bit like on a decently supported Arm SBC. However, I didn’t say everything worked well, as there are still many caveats and limitations.

As expected, the StarFive JH7110S is an entry-level quad-core RISC-V SoC, and the performance is similar to that of a Raspberry Pi 3 Model B+ or an underclocked Rockchip RK3566 single board computer. That part is not surprising. However, the performance of the storage interfaces (microSD card slot and M.2. NVM eSSD), the USB 3.0 interface, and WiFi 6 and Bluetooth are all on the low side, and it’s unclear whether it’s a limitation of the silicon or the drivers, although I hope further software optimization may improve all of these. However, Gigabit Ethernet works well at around 930/940 Mbps.

I was also pleased to see 3D graphics acceleration (glmark2-es2-wayland and WebGL in Firefox) and H.265/H.265 hardware video decoding (ffplay/ffmpeg) were all implemented properly, albeit the GPU performance was also on the low side, but it might be due to the PowerVR BXE-4-32 GPU itself. The GPIOs were also detected by sysfs and libgpio. I was also delighted to see a recent Linux 6.12 kernel used here (albeit patched. However, some software limitations still exist with RISC-V, for example, you can’t just run apt dist-upgrade without messing up the system (another method is provided), and the provided Firefox version is old enough (126) that add-ons can’t be installed.

We’re not quite to the point where it’s a no-brainer to use a RISC-V SBC instead of an Arm SBC due to the limitations listed above, but we’re getting there, and if future RISC-V SoCs get more powerful, offer better I/Os and associated drivers, and additional RISC-V packages are supported, I can imagine RISC-V SBCs competing directly with the Arm equivalent. Right now, if performance is not an issue and you are aware of various limitations, the VisionFive 2 Lite can still be used for some projects as an alternative to Arm SBCs like the Pi 3 or RK3566 boards, as well as for RISC-V experimentation.

I’d like to thank StarFive for sending a VisionFive 2 Lite SBC for review to have another look at the RISC-V ecosystem at the end of 2025, beginning of 2026. The 4GB RAM + WiFI model reviewed here can be purchased on AliExpress (about $64), Amazon ($63.99), and Waveshare ($62.99).

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Orion O6 Armv9 mini-ITX motherboard
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.
12 Comments
oldest
newest
Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC