The First Amlogic S912 Development Board is Coming Soon with Khadas VIM2

We have a decent choice of Amlogic S905 development boards like ODROID-C2 or NanoPi K2, but I was recently asked whether I knew of any Amlogic S912 development boards. I’m sure Amlogic has one for internal development, but those are hard to get, and probably expensive, and while you could probably get an S912 TV box board those lack I/Os, and software support may truly be a challenge. So I’m pleased to announce that Shenzhen Wesion will soon provide an update to their Khadas VIM Pro board with Khadas VIM2 powered by Amlogic S912 octa-core processor.

Click to Enlarge

The company will actually offer three variants of Khadas VIM2 boards (Basic/Pro/Max) specifications with highlights in bold showing differences with Khadas VIM Pro board:

We can see that it’s not just a processor update with many new features added to the new boards. If like me, you’ve never heard about RSDB, it stands for Real Simultaneous Dual Band, and allows to use both 5 GHz and 2.4 GHz at the same time, while for most dual band modules only one frequency can be used at a given time. That’s a clear advantage if you’re going to use the board as an access point.

Click to Enlarge

The company will provide Android 7.1 Nougat and Ubuntu 16.04 or greater operating systems and SDKs for the board, and work on UEFI support is in progress. The board will be launched last that month, and for now, the only VIM2 specific documentation provided is Amlogic S912 datasheet, but you can be sure there will be a lot more on Khadas Docs page at launch, although I expect many of the instructions available for Khadas VIM (Pro) will still work on VIM2 board.

You’ll find more details on the announcement forum post, such as Linux OpenGL ES not working natively, i.e. without libhybris and Android libraries, and the board has been designed with micro servers in mind with features like WoL and SPI flash for network boot, as well as UEFI support.

@KiLLWarez
We’ll have to wait a few more days or weeks for that.
But if we’d want to speculate, Khadas VIM2 Basic should sell for around $70 based on the specifications above. The VIM2 Max version could be close to $100. Those price should include shipping, and USB C cable.

Nice details (at least 2T2R MIMO and 5GHz Wi-Fi, WoL, no brain damaged powering scheme) but why’s there no huge heatsink by default or at least mounting holes for one, what’s that thing looking like a SATA connector on the lower PCB side and how does it work to provide 2 type A USB receptacles, USB2 also on the type-C connector, also on the 40 pin header as well as pogo pins?

@blu
Hardkernel doesn’t have S912 board. Every S905(X) board has GLES support without hybris. S912 GLES in Linux is not possible without hybris because Amlogic did not pay for Mali DDK for Linux, they only have Android license.

1) I’m not sure where you figure out, but there is no SATA connector on VIM2.
2) It’s reversion1.0 showed on the picture, only 8-Pin pogo pads on the 1st version, and the final release version will be 20-pin Pogo pads, 7-pin pogo pad for a on-board programmable MCU, and a 6-pins pogo pads for extra power sources.
3) There are two solutions for heat sink: use silica gel directly, or design a specified heat sink for VIM2 which mount at the four M2 screw holes.

Looks possibly interesting. It might be difficult to fix a heat sink but it’s nice to see a board with a “wide” range of input voltage. Letts see how much it costs ; for quite some time the NanoPI-M3 has been available with 8 A53 at 1.4 GHz (real), and it seems that octocores of 1.4 GHz or more still remain rare. The low profile form factor is also much appreciated.

@tkaiser: it’s not a SATA connector, it’s the other side of the low-profile ethernet jack.

As still Sunday here in China, I will do some simple testing tomorrow and update here.
I think users should install a heat sink (actually, a 3-level cooling fan is also available on VIM2) when full on all 8 cores.

For Amlogic S912, which is different with S905(D/X), the SoC featured with dual channels USB2.0 and one OTG2.0. Yes can be simultaneously.
USB details for VIM2:
1) OTG2.0 is on USB-C port
2) one USB2.0 for USB Host port(with 900mA and closed to USB-C port one)
3) another USB2.0 channel is leaved for a four-ports USB HUB, and for USB-Host Port, 40-Pin GPIO, 20-Pins Pogo-Pads.

@Gouwa
Nice to see that you expose one USB host port directly so it has not to share bandwidth (many many other board designs fail with this). Looking forward to some ‘thermal performance’ numbers tomorrow 🙂

That’s close to impossible since it depends on so many factors and most of these are external (the environment the device operates in and the antennas used which will add significantly to costs if you choose appropriate ones) 🙂

But as soon as distance increases or walls are in between all depends on antennas and TX power settings (adjustable or not?). But since we could use 2T2R MIMO robustness is better and with appropriate antennas positioned appropriately also performance will be much better compared to 1T1R implementations. Speaking about real-world performance: Your AP must also support at least 2T2R, 5GHz and also beamforming.

I realise performance depends on many factors, antenna gain, position, if-line-of-sight, distance & interference environment, 802.11 MCSrate etc. However, websites like ‘SmallNetBuilder’ routinely conduct meaningful comparative tests of commercial Wireless Router performance down to N300/$21, showing graphs of transfer rate v distance/attenuation. Such websites usually have a page describing the test environment. To minimise difficult to measure variables of crowded environment, SNB use screened room and simulate Distance using an Attenuator, so for example, on 2.4GHz the RT-AC68U achieves about 100Mbps downlink from short to medium distance, then dropping to 26Mbps Uplink, 11Mbps downlink before dropping out at 63dB Atten. Other test sites attempt approximate real-world conditions showing large home plan view with Reference router and Router under-test in different rooms; other sites try line-of-site to 3 to 5 different distances usually in uncrowded location.

My point is, if websites provide useful comparative test results for boxed routers, (sadly, as yet don’t test cheaper unboxed WiFi boards), it should be possible for Gouwa/Khadas to provide 2.4GHz performance measurements in some specified environmnet, be it screened room, a building with qty of drywalls, floors, or in the open, line-of-site. As with SNB, test setup can be described further, eg throughput of Reference Router, Channel 6, HT20, OS version/driver, Board-under-test has Bluetooth & other services disabled or default settings etc.

In this case the photo of the Khadas board implies 2 External Antenna will be used so it would be reasonable for the maker to conduct a performance test using typical pair of 6dBi antennae Router makers often supply as standard. The Tx power setting is easily stated.

Your link to factors explaining why UDP throughput is much less than theoretical at PHY was very interesting thanks.

My own interest is connecting to public or semi-public APs at a distance too far for the Intel WiFi in my miniPC to reach, but where my phone WiFi can just about reach the nearest AP. I am certain all of the nearby public AP’s are 2.4GHz only (5GHz would be less range surely) and almost certain HT20 GI 800ns with no beamforming & being public, out of my control, so perhaps throughput no better than MSC7 (65Mbps) ? I already have 1 x 15dBi omni Antenna – not expensive from Aliexpress, and a spare pair of, I think 6dBi Antennae.

is not a real test but just a ‘load illusion’. I was asking for cpuburn-a53 for a reason: since this is the heaviest ‘CPU only’ load generator I’m currently aware of. Another pretty nice variant to test for the efficiency of heat dissipation is cpuminer (since once throttling occurs it shows performance numbers — this is not meant as a generic benchmark but only to check for the efficiency of a cooling solution). And I would also recommend to immediately install RPi-Monitor in case you want to explore further thermal behaviour (it’s something completely different looking at numbers a scripts spits out or getting nice graphs you can analyze later).

Anyway: Since idle temperature is 22°C above ambient temperature and with such a light load as above it gets already close to throttling tresholds shipping with a huge heatsink seems mandatory to me. BTW: fans blowing from the side over a heatsink should be a lot more efficient. Just let cpuminer show you, installation/use is very easy and outlined in the link above.

Those websites collect absolute numbers within given/reproducable environments to provide listings and graphs (and hopefully some insights too). The only meaning of their absolute numbers for any reader is the ability to do a relative performance ranking afterwards most probably already ignoring some of the prerequisits for those numbers (eg. 3T3R MIMO being basic requirement on both client and AP for the numbers shown).

So while such overviews using always the same environment testing through a bunch of different devices provide some useful numbers (since allowing for relative comparisons) I doubt that’s possible when someone starts to test his own device. Maximum throughput numbers need no tests since the result of simple calculations and everything else depends on too much else.

So wrt relative numbers it’s easy. If you can choose between 1T1R and 2T2R you always choose the latter (of course needed on both sides of the connection to be of any use), single vs. dual band is also a no-brainer and if both AP and client support RSDB that’s also great since enhancing performance and range if both sides of the connection make use of it.

But for your special use case (public AP far away) I doubt you get any meaningful numbers when Khadas does some testings. If I were you I would get the cheapest 3 antenna 2.4Ghz AP allowing to run LEDE/*WRT and able to be configured as client bridge or even wireless repeater.

BTW: there’s a good reason to not test ‘cheaper unboxed WiFi boards’ since average readers are not willing to accept reality anyway and always think about misusing SBC as wireless access points. Even those better dual-antenna/dual-band Wi-Fi chips on some Android devices and now also on some SBC like the VIM2 here are not made for AP mode (crippled firmware limiting max client connections, no beamforming).

@Paul
Almost forgot since you mentioned ‘Antenna – not expensive from Aliexpress’. I also ordered a few some time ago and did some quick testing immediately thinking having found just another ‘buy cheap buy twice!’ category. But to be honest: I still lack the knowledge to interpret the numbers so I postponed all of this to get more insights first. But since we started to replace 10GbE at customers with 40GbE in the meantime dealing with Wi-Fi feels broken anyway (same with wired networks below Gigabit Ethernet of course).

@Gouwa
Good to hear that you’re exploring a heatsink option. Maybe it would be also an idea to think about two heatsinks with different scenarios in mind: heatsink only and heatsink + fan. For passive cooling the fin distance is important since if too tight convection won’t work. Such a heatsink like on the MACCHIATOBin should work pretty nice with both scenarios and a top mounted fan while classical heatsinks with fins might work better with a lateral fan. When designing a heatsink to be used together with a fan I always would prefer a large and slow rotating over the small annoying ones (but that’s obviously just me, many tinkerer love leds blinking and fans making noise).

Back to software/testing: the great thing about cpuminer is that it generates a lot of heat so you can easily test efficiency of hardware (heatsink) and software (cpufreq/dvfs settings) and that it also provides real performance numbers. So if you prevent throttling (killing all CPU cores except one) you can easily walk through all available cpufreq OPP and once you get no better khash/sec values reported by cpuminer you know that performance does not further increase (thinking about the ‘Amlogic desaster’ last year with all cpufreqs above 1.5GHz being faked or RPi 3 still cheating on us and reporting incorrect clockspeeds when throttling occurs).

Hardware (different heatsinks, convection only or combined with some airflow) performs differently and you can use cpuminer to reliably test for this (since producing constantly performance numbers and you need to run some tests for a longer time since otherwise thermal effects aren’t noticeable). But same applies to software too. Inapproriate throttling settings eg. only jumping between 1.5GHz and 1.0Ghz when throttling treshold temperature is reached show worse performance than better throttling settings allowing to use as much cpufreq/dvfs OPP as possible (not jumping only between 1.5GHz and 1.0GHz but choosing a stable 1.3GHz for example).

You might want to look into http://linux-sunxi.org/User:Tkaiser#Reliability_testing_on_Pine64 since there’s a simple daemon collecting ‘minerd –benchmark’ numbers able to be fed into RPi-Monitor with an appropriate template. This helped as a lot improving throttling settings on a few platforms and I think it’s also a great help when providing a PWM controller fan with variable speed.

@Paul
Adding to @Gouwa’s answer: you get 2×2 MIMO in both Wi-Fi bands as with all other AP635x with some theoretical potential for interferences on one antenna due to Bluetooth’s adaptive frequency hopping spread spectrum implementation (IIUC).

But for your special use case (public AP far away) I doubt you get any meaningful numbers when Khadas does some testings. If I were you I would get the cheapest 3 antenna 2.4Ghz AP allowing to run LEDE/*WRT and able to be configured as client bridge or even wireless repeater.
BTW: there’s a good reason to not test ‘cheaper unboxed WiFi boards’ since average readers are not willing to accept reality anyway and always think about misusing SBC as wireless access points. Even those better dual-antenna/dual-band Wi-Fi chips on some Android devices and now also on some SBC like the VIM2 here are not made for AP mode (crippled firmware limiting max client connections, no beamforming).

Thanks for your very helpful thoughts on the subject. I realise the SNB & other test site environments are unlikely to match typical use environments, but test results at least, as you admit, provide a RELATIVE performance, which I think helps users to pick a model for their needs. Without that test data, the only other guide to POTENTIAL performance is, as you state, hardware spec, be it 1T1R, 2T2R, internal or external antenna, WiFi chip etc.

Although I thought buying a Wireless Router a bit OTT, cost and energywise, purely to extend the range of my miniPC WiFi connection to reach some distant public APs, as I was told a modern Wireless Router would do it, in my ignorance I did in fact buy a ASUS RT-AC58U some time back on account of its spec showing long range & low energy consumption, not knowing then, that it didn’t support ‘Client mode’ or after discovering my error, didn’t support OpenWRT either !! I was able to confirm the AC58U took about 5W and with its 4 Ext. Ant. was sensitive, able to ‘see’ 3 times more APs, than my phone, but the UI had no method of connecting to them as a Station.

Re. your suspicion the VIM2 may not do the job either due to ‘not made for AP mode (crippled firmware limiting max client connections, no beamforming)’, remember I primarily want ‘Client, not AP mode’ – the onward connection to my miniPC can be via Ethernet. If the VIM2 can support simultaneous ‘Client + AP mode’ that would be a luxury, as I would probably setup a 5GHz AP. in which case I don’t envisage more than 3 local clients. Do you think the VIM2 likely to allow this ?

@Paul
Wrt ‘not made for AP mode (crippled firmware limiting max client connections, no beamforming)’ — this was not mentioned with your use case in mind but what happens in general if people see an SBC with better Wi-Fi specs. Many immediately think such a SBC would make up for a great AP which is not the case. Any cheap dedicated router able to run a free OS (LEDE/*Wrt) will do a better job.

The only ‘client implementations’ I know of that perform rather well as AP are Atheros mPCIe cards (AR9380 or better — you get them for 10 bucks on eBay) with ‘unlock_atheros_regulatory_restrictions.patch’ applied.

Thanks for the link to WiFi Performance testing. I didn’t realize you also have Internal Antennas. At first I assumed your 81.5 Mbps on 2.4GHz used some specified External Antennas until I saw your note at the bottom “If with external Wi-Fi antenna should be with better Wi-Fi performance.” Were these results obtained with the ‘Basic’ (AP6356S) or the ‘Pro’ (AP6359SA) ?

Can you publish 2.4GHz results using a pair of typical 5dBi External Antennas and let us know which version of the VIM2 is used ?

If you will be supplying a mains adapter, can you also let us know what the energy consumption at the wall, (2nd best, into the board) both at ‘Idle’, and when WiFi is transfering at maximum data rate ?

@Gouwa
Thank you. Output from ‘iwconfig’ on VIM2 and ‘wdhelper’ (or screenshot of settings when you option-click on the Airport menu item) would help to understand settings. I would assume your router only allowed HT20 with 2.4GHz since otherwise iperf would be better?

Paul :
Can you publish 2.4GHz results using a pair of typical 5dBi External Antennas and let us know which version of the VIM2 is used ?

What do you expect? More than 90 Mbits/sec when HT20 with 2×2 MIMO is used in 2.4 GHz band? Better antennas should only make a difference if distance will be increased.

Paul :
Can you publish 2.4GHz results using a pair of typical 5dBi External Antennas and let us know which version of the VIM2 is used ?

What do you expect? More than 90 Mbits/sec when HT20 with 2×2 MIMO is used in 2.4 GHz band? Better antennas should only make a difference if distance will be increased.

As the link to their test results showed distance to router only 7metres I am sure you are right. But when I looked in Gouwa’s link for the test conditions to get 81.5Mbps, I saw the note “If with external Wi-Fi antenna should be with better Wi-Fi performance.” – I took him at his word to ask how much better.

Refering back to our conversation in this thread 4-11 July, in my use-case of using a cheaper unboxed WiFi board to extend the range of my miniPC, as range is my problem, clearly I need a board with External Antennas to extend range as far as possible. If the VIM2 can function in ‘Client mode’, has the range and data rate, comes in at an attractive price, then it could be the solution I seek. At my current location where I seek to connect to distant public APs, there is only 1 broadband provider, whose fastest dataplan 35Mbps. Using my phone WiFi to nearest public AP tethered to miniPC on USB3, the best I ever saw was a peak of 48Mbps just once, usually peaks below 32Mbps. So in my case, any cheap WiFi board approaching 81.5Mbps in 2.4GHz TCP/IP ‘Client mode’ is more than enough. I am not knowledgeable about typical public AP characteristics, but as stated in my post #31 assume worst-case HT20 GI 800ns, no beamforming. Certain there no 5GHz AP in range.

Your post #43 recommended mPCIe cards Atheros AR9380 or better. My miniPC is a v. compact NUC difficult to modify to use Ext. Ant. & prefer not swap out the standard fit Intel 7260HMW card. (I never discovered whether it was the NUC Int. Ant. or card responsible for weak WiFi). I have just 1 spare USB port, so rather connect by GbE or WiFi. (I guess 5GHz best as VIM2 has RSDB) For above use case have you any thoughts on the ‘Basic’ (AP6356S) or the ‘Pro’ (AP6359SA) Wifi chip performance, perhaps in relation to the AR9380 you mentioned ? I gather the overall transfer rate from remote AP thru the WiFi board to the PC, be it via GbE or 5GHz RSDB, will be lower than the 81.5 Mbps iperf result. Is this reduction likely to be significant for a VIM2 class of product ?

Re. #35 your suggestion to buy “cheapest 3 antenna 2.4Ghz AP allowing to run LEDE/*WRT and able to be configured as client bridge”, I got put off dedicated routers after my big mistake buying the RT-AC58U. Having missed the fact most Routers don’t support ‘Client mode’, I chose the AC58 on account of its low energy consumption yet long range. Having read many router reviews before buying the AC58, most consumed more power than my NUC, and many a huge size -not good for travellers. I looked in OpenWRT HW Table – a dauntingly long list with no way to filter on the criteria of interest: 2.4GHz range & energy consumption. Have you any suggestions on where to hone in on a ‘cheapest 3 antenna 2.4GHz LEDE/*WRT capable Router’ with consumption <6W ? My Android 6 phone easily configures as a WiFi Client to my PC. As the VIM2 comes with Android 7.1 surely simplest solution is to also configure as a WiFi Client to my PC ?

@Paul
Last question written in a hurry. Using same approach as on my Android phone assumes there is a local UI on the WiFi board – in practice a keyboard & monitor, which I prefer not to. One reason I prefer a low energy consumption, is for economical 24/7 running, so I could connect a KB & monitor briefly to set it up, or maybe there is a boot time config file to execute the commands required to run in WiFi Client mode ?