Khadas VIM3L SBC Review with Android 9 Firmware

Khadas VIM3L is the first and so far only Amlogic S905D3 SBC on the market, so I first ran some benchmarks and checked system info. But it is also designed to be an HTPC, I’ll continue the review with some 4K video and audio playback testing, some gaming, and I/O benchmarks.

Khadas VIM3L Unboxing

As you may remember (or not), VIM3L ships either as a bare board pre-loaded with Android 9 or as an HTPC kit with the board running CoreELEC.

Khadas Package

I’ve received the bare board which also comes with two WiFi antennas.

Khadas VIM3L Review
Click to Enlarge

It can do much more than a simple TV box however, since it also comes with an M.2 NVMe socket (extra adapter board required), and sockets with MIPI DSI + touchscreen, and MIPI CSI camera.

Khadas VIM3L MIPI CSI, DSI, TP, M2
Click to Enlarge

It’s one of the few boards with a low profile Ethernet connector, so if you ever wanted to build a farm of the board it could lead to a more compact solution.

Low Profile Ethernet PortIf you were to do so however, you’d likely use the much more powerful Khadas VIM3 (no L) with Amlogic A311D processor.

Khadas VIM3 vs VIM3L
Khadas VIM3 (left) vs Khadas VIM3L (right) – Click to Enlarge

As you can see above both boards are virtually identical. Beside the difference of processor, you’ll notice some changes in components as well, but I believe that’s because of the different revision of the board (V11 vs V12).

There’s no heatsink, and when I asked the company they replied that:

Regarding the heatsink, personally, I think for normal purpose using like watch TV, it’s not quite must, but it’s required if you run the performance test.

I’d still recommend going with the heatsink and acrylic, as you may end up with a board that works well in winter but becomes sluggish in summer.

Khadas VIM3L Heatsink

So I took out the heatsink and acrylic case from Khadas VIM3 and install those on Khadas VIM3L before testing.

First Boot and Firmware Update

I’ve then connected a USB keyboard and mouse, Ethernet & HDMI cables, as well as a USB-C power supply (the one I got with Raspberry Pi 4).

Khadas VIM3L Android Review

The board booted to the stock launcher below.

Khadas VIM3L Android 9 Launcher
Android 9 with Linux 4.9.113, and an old security batch level.
Android Kernel Version
The kernel was dated August 12, 2019, and I noticed the UPDATE app…
Android UPDATE App

… so I hoped for an OTA firmware updated, but it’s not working at this stage, and I’m not sure Khadas will implement this since it’s a development board.
OTA Firmware Update Failure

The company told me they had two images at this point:

  1. Android ROM for VIM3L – https://dl.khadas.com/Firmware/VIM3L/Android/VIM3L_Pie_V191011.7z
  2. CoreELEC Beta for VIM3L – https://test.coreelec.org/CoreELEC-Amlogic-ng.arm-9.2-devel-1570539298-Generic.img.gz

But today, I can see they also uploaded Ubuntu Bionic for eMMC boot only (no SD card image yet).

So I followed the firmware update instructions for Khadas VIM3 to update VIM3L to the latest Android 9:


The new firmware comes with Google Play.  You can check the system info and some of the settings, as well as benchmarks from my earlier post.

Video & Audio playback with Kodi 18.4

Since there are only two USB ports, I’ve removed the USB keyboard to insert my USB 3.0 hard drive with some 4K videos  and checked them out in Kodi 18.4 installed from Google Play:

  • HD.Club-4K-Chimei-inn-60mbps.mp4 (H.264, 30 fps) – OK
  • sintel-2010-4k.mkv (H.264, 24 fps, 4096×1744) – OK
  • Beauty_3840x2160_120fps_420_8bit_HEVC_MP4.mp4 (H.265) – OK
  • Bosphorus_3840x2160_120fps_420_8bit_HEVC_MP4.mp4 (H.265) – OK
  • Jockey_3840x2160_120fps_420_8bit_HEVC_TS.ts (H.265) – OK
  • MHD_2013_2160p_ShowReel_R_9000f_24fps_RMN_QP23_10b.mkv (10-bit HEVC) – OK
  • phfx_4KHD_VP9TestFootage.webm (VP9) – OK
  • BT.2020.20140602.ts (Rec.2020 compliant video; 36 Mbps; 59.97 Hz) – OK
  • big_buck_bunny_4k_H264_30fps.mp4 – OK
  •  big_buck_bunny_4k_H264_60fps.mp4 – Not smooth and audio delay (not supported by VPU)
  • Fifa_WorldCup2014_Uruguay-Colombia_4K-x265.mp4 (4K, H.265, 60 fps) – OK
  • Samsung_UHD_Dubai_10-bit_HEVC_51.4Mbps.ts (10-bit HEVC / MPEG-4 AAC) – OK
  • 暗流涌动-4K.mp4 (10-bit H.264; 120 Mbps) – 2 to 3 fps; software decode (not supported by VPU)
  • Ducks Take Off [2160p a 243 Mbps].mkv (4K H.264 @ 29.97 fps; 243 Mbps; no audio) – Not perfectly smooth
  • tara-no9-vp9.webm (4K VP9 YouTube video @ 60 fps, Vorbis audio) – OK
  • The.Curvature.of.Earth.4K.60FPS-YT- UceRgEyfSsc.VP9.3840×2160.OPUS.160K.webm (4K VP9 @ 60 fps + opus audio) – OK

The results are pretty good overall, but it should be noted that automatic frame rate switching does not work.

I’ve also enabled HDMI audio passthrough and tested various formats through my Onkyo TX-NR636 A/V receiver, and results are rather mixed here.

Audio Codec in Video HDMI Pass-through
AC3 / Dolby Digital 5.1 OK
E-AC-3 / Dolby Digital+ 5.1 DTS, no audio
Dolby Digital+ 7.1 OK
TrueHD 5.1 PCM
TrueHD 7.1 PCM
Dolby Atmos 7.1 PCM
DTS HD Master DTS 5.1
DTS HD High Resolution DTS 5.1
DTS:X (not supported by Onkyo TX-NR636) DTS 5.1

So more work is needed on the audio front. E-AC-3 being decoded as DTS by my audio receiver is especially unusual.

Khadas VIM3L YouTube 4K

YouTube app works well, but the resolution is limited to 1080p, and higher resolutions up to 4K are not supported.

We had already seen DRM was limited to Widevine Level 3 in the previous post.

Network Performance (WiFi & Ethernet)

The board could can detect all of my wireless networks but at first failed to connect to any of those SSID.

VIM3L Could not find SSID

I tried the three of them and same results. Clicking on “Try again” did not help. Then I had the idea of removing the Ethernet cable, and that did the trick. It looks like a simple bug that should be resolved in future releases.

Khadas VIM3L Android Portrait

But problems are often not solitary creatures and often live in groups. That’s why the typical “5-minute task” all too often converts into a “4-hour trek”. In this case, many apps will switch to portrait mode rotated by 90-degrees to the left as shown in Magic iPerf benchmark above. I can normally navigate the app with some head twisting, but in this case, the button to start the actual test was also missing. I tried another app but it failed again.

So I thought I would run iperf from the command line, and installed Terminal Emulator, but accessing the app directory requires root and the firmware is not rooted. Finally, I found yet another application called he.net – Network Tools that supports iperf and does not suffer from the portrait bug in this firmware.

Here’s are the results for WiFi 5

  • Upload:

  • Download

    386 Mbps for the upload is the best performance I’ve seen so far. That should mean WiFi is working very well, but since I change the Android app, direct comparison is not possible. For reference, the previous top speed was around 250 Mbps.

Now for Gigabit Ethernet.

  • Full duplex
  • Upload only
  • Download only

The download speed is close to perfect but somehow the upload speed is a bit disappointing, and so is a full-duplex (both direction at the same time) transfer. It won’t matter for media playback however even for the higher bitrate 4K videos.

Before I managed to make iperf work, I also copied a 4.2 GB file over SAMBA using X-Plorer and the transfer was done at about 40 to 50+ MB/s from the server to the board (download).

Khadas VIM3L SAMBA File Transfer

Note the transfer speed may have been limited by the eMMC flash write speed beside the usual SAMBA overhead.

Misc

Storage

I tried to measure storage speed too with A1 SD Bench with reads would be cached (so the result is invalid), and writes would show 0 MB/s. I switched to AndroBench but the portrait mode bug made the app unusable.

Bluetooth

No Bluetooth option, but we can use “Remote & Accessories” menu. My phone fails to be detected, and so were a pair of Bluetooth headphones. I’ve been told only remote control works for now. A bit more on that below.

Gaming

Arm-based HTPC’s can be used for light gaming so I installed Candy Crush Saga, Beach Buggy Racing, the new version Beach Buggy Racing 2, and Riptide GP2, the first three from Google Play and the last one from Amazon AppStore.

Results:

  • Candy Crush Saga played with the mouse. No problem
  • Beach Buggy Racing played with Tronsmart Mars G01 wireless gamepad. Normal settings: perfect. Maxed out graphics settings: very playable but not perfect
  • Beach Buggy Racing 2 is not quite as user-friendly in TV boxes & SBC’s. I had to start playing with the mouse touching the left and right of the screen. Then I went into settings to change to controls to Arcade Steering so I could play with the wireless gamepad. The user interface still needs to be navigated with the mouse. I had no problem during the game however, that is once I figured out I had to press LT button to accelerate with the gamepad. Everything is smooth with default settings. Switching to “detailed” graphics and maxed out display resolution the frame rate feels more like 15 to 20 fps however.

    Beach Buggy Racing 2 Settings
    Beach Buggy Racing 2 Settings

  • Riptide GP2 worked fine with the gamepad as usual and was very smooth with default settings, and a little bit less so with maxed out graphics settings. A pretty typical experience on mid-range SBC’s / TV boxes.

Khadas VIM3L is not shipping yet

Since I’ve had a couple of issues in this firmware, I may be worth noting Khadas VIM3L is not shipping yet, and Shenzhen Wesion is working on resolving some of the issues presented in this review, hopefully before people received their board.

Here are the company’s answers to some of the issues I raised in this review:

Rotation issue:
Due to the Amlogic SoC is designed for TV-Box or TV applications, and their Android SDK doesn’t archive the rotation features. Our team is working on it now, and add this feature in the feature.
Bluetooth Issue:
Yes, current image only supports Bluetooth Remote, and we also found this issue of more bluetooth accessories not support, but we still need some time to get it fixed 🙂
Wi-Fi:
We just follow the Amlogic SDK and it’s behavior as Wi-Fi is forbidden to connect if the Ethernet is connected. Agree that it should be fixed.

Conclusion

Khadas VIM3L is a nice little SBC and well-built although I’d wish more than two USB ports. The Android 9 firmware is still beta, but there’s a good base with no stability issues that I could find, and 4K video playback works reasonably well in Kodi, except for automatic frame rate switching. Installing AFRd daemon may fix it, but I did not have time to try.

802.11ac WiFi 5 looks to work great, and Gigabit Ethernet is OK, but there may be more work to do to improve performance (not really important for media playback). HDMI audio pass-through is more of an issue with only a few video files working correctly, and limited to 5.1 channels.  There are also the many little annoying bugs reported above, but those should be fairly trivial to fix.

Khadas VIM3L can currently be pre-ordered for $59.99 including worldwide shipping with delivery scheduled to start on October 30th. You may also consider the $79.99 HTPC Kit instead as it includes the recommended heatsink ($9.90) and DIY case ($14.99) as well as an IR remote control and a metal plate for extra cooling.

Support CNX Software - Donate via PayPal or become a Patron on Patreon

3
Leave a Reply

avatar
2 Comment threads
1 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
2 Comment authors
Gouwa Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Member

“HDMI audio pass-through is more of any issue with only a few video files working correctly, and limited to 5.1 channels. There are also the many little annoying bugs reported above, but those should be fairly trivial to fix.”

If they’re touting the VIML3 HTPC with the advertisements on their website, these issues must be fixed. The least they should ensure is at least pass-through works.

Gouwa
Guest

Android TV built by superceleron ready for VIM3L:
https://forum.khadas.com/t/rom-sc-vim3l-pie-normal-final-v1-20191023/5789/2

Member

Did you guys fix AFR switching yet?