Alternatives to the mighty Raspberry Pi are numerous, and previously we have reviewed two Khadas boards which offer a powerful single board computer experience, but cost much more than the Pi. The $299 Edge 2 Pro packs in up to 16GB of LPDDR4X and an octa-core CPU.
For a little less money there is the Khadas VIM 4, a $239 octo-core (2.2GHz Quad core ARM Cortex-A73 and 2.0GHz Quad core Cortex-A53 CPU) based machine with 8GB of LPDDR4X. As you can see, both of these boards retail for far higher prices than the Raspberry Pi 4 (yes they are back in stock now). So how can we get close to the Raspberry Pi price point?
Khadas’ answer is the VIM1S, a lower specification board that comes in at $65. It has a quad-core Arm CPU, 2GB of RAM and onboard 16GB eMMC. the VIM1S is more of something in between a Raspberry Pi 3B+ and Raspberry Pi 4, it lacks Gigabit Ethernet but has onboard eMMC.
Is it a viable Raspberry Pi alternative? Should we go for a slice of this over our favorite Raspberry Pi? To learn more about this board and to weigh up the pros and cons we need to put it on the bench.
Khadas VIM1S Specifications
|SoC||Amlogic S905Y4 2.0GHz Quad Core Cortex-A35 CPU ARM Mali-G31 MP2 GPU up to 850MHz 4K@60fps AV1, VP9, H.265 Decoding Support Multi-video Decoding up to 4x 1080p@60fps HDR10, HDR10+, HLG HDR Video Processing|
|RAM||2GB LPDDR4 1176MHz, 32-bit|
|Storage||16GB eMMC Micro SD card|
|Ports||2 x USB 2 1 x HDMI 2.1 10/100M Ethernet|
|Wi-Fi / Bluetooth||Ampak AP6256 IEEE 802.11 ac/a/b/g/n Bluetooth 5.0|
|GPIO||40 pin GPIO not Raspberry Pi compatible CPU: USB, I2C, I2S, SPDIF, UART, PWM, ADC, GPIO, MCU: SWIM, NRST|
|Power||USB C 5V Only|
|OS Support||Ubuntu 22.04 Android 11 Debian|
|Dimensions||82.0 x 58.0 x 13 mm|
The Khadas VIM1S looks almost identical to the VIM4. The port placements are the same. with the exception being the HDMI input on the VIM4. The VIM1S does not come with any form of cooling, but you can buy a heatsink for $10 on the Khadas website.
Setting Up Khadas VIM1S
Setting up any Khadas board is a joy. Following in the footsteps of the VIM4 and Edge 2, the VIM1S also uses OOWOW, a BIOS-like interface that provides a wizard to set up your VIM1S. All we need to do is connect our keyboard, mouse, HDMI and power to the board and power up. Make sure that your HDMI and USB-C cable fit, and whatever you do, don’t force it! The space between these two ports is tight; we had to source an alternative HDMI cable in order to write the review. The two USB A ports are USB 2 spec, sadly no USB 3 for this board.
Via OOWOW we can connect to Wi-Fi or ethernet and download custom operating systems directly from Khadas. These custom images are downloaded into RAM and from there installed to the onboard 16GB eMMC. The OOWOW interface is extremely easy to use. If you have ever been into the BIOS of a PC, then you will have no trouble using it. More advanced users can delve deep into the BIOS and tinker with eMMC setup, update the firmware and even play a game of Tetris. We installed the latest version of Ubuntu 22.04.3 LTS available via OOWOW and proceeded to boot into the Gnome desktop.
The downside of OOWOW, and Khadas boards in general, is that we can only install an OS in this manner. It limits the choice available to the end user, that said, it also means that Khadas can focus on supporting just a handful of OS.
Using Khadas VIM1S
The Khadas VIM1S is pretty slow to boot Ubuntu from the eMMC. 40.8 seconds isn’t long to wait, but it is outclassed by the VIM4 (36.38 seconds) and the Edge 2 Pro (27.74 seconds). For reference, the Raspberry Pi 4 boots in 30 seconds via the best micro SD cards. The slowest boot we have seen in an SBC is via the LattePanda 3 Delta, running Windows 11 via an NVMe drive. At 70.13 seconds, it is almost double the boot time of the VIM1S, but Windows 11 is quite a large OS compared to Linux distros.
After booting to the login screen and logging in, we are presented with a typical Ubuntu desktop, and that is most welcome. After running the customary updates and upgrades our Ubuntu install was ready for general use.
As this is pretty much a desktop PC, the Ubuntu OS feels just like any other Ubuntu install we have used on many different devices. It worked pretty well, with only a few stutters as the system catches up with our actions. The one issue we faced was the web browser. There was no browser listed in the favorites or the apps list.
We chose to install Mozilla’s Firefox via the terminal and this is where Ubuntu told us it was already installed, but it wasn’t. Dropping back into the terminal and we had to install Firefox using snap, Ubuntu’s alternative package manager. Installation was easy, if a little slow.
Web browsing with the VIM1S is a pleasant experience. Sites load well, despite the meagre 2GB of RAM. More RAM would be nice, but there has to be sacrifices to hit the $65 price point. We noticed that video playback via YouTube was poor, dropped frames turned the 1080P video into a slideshow.
Our first test was network speed. Now the VIM1S is no supercharged sports car, it only has a 10/100 Ethernet port and IEEE 802.11 ac/a/b/g/n Wi-Fi so it will get the job done, but not quickly. Let's address Ethernet speeds. Being 10/100 we saw a high of 85 Mbits per second. Not bad at all.
What about Wi-Fi? The IEEE 802.11 ac/a/b/g/n card offers up to Wi-Fi 5 speeds (433 to 6933 Mbits per second on paper). In reality we saw a maximum of 72.7 Mbits per second. Not exactly slow, but the VIM1S is not a board we’d suggest for a media server or file server project.
Power and Temperature Tests of Khadas VIM1S
The Khadas VIM1S does not come with any form of cooling. The VIM4 and Edge 2 Pro both came with active cooling for the SoC. There is a fan header for a Khadas branded fan, but it wasn’t provided out-of-the-box so we can’t test it. We followed the same testing procedure for the VIM1S as we did for the VIM4 and Edge 2 Pro. Leaving the board to settle for five minutes and we can see an idle temperature of 47.2 degrees Celsius, slightly warmer than a VIM4 (45.2°C) and warmer than the Edge 2 Pro’s 42.5°C. The next best comparison would be the Raspberry Pi 4, 45.7°C, as this also has no form of cooling.
Under stress, the VIM1S hit 70.2°C, more than the VIM4’s 64.7°C and the Edge 2 Pro’s 56.6°C. Again, the next best comparison was the Raspberry Pi 4 which hit 79.8°C when under stress.
Power consumption, well this is where the VIM1S shines. At idle, it sipped at 510mW (0.51W), half the 1.02W of an idle Raspberry Pi 4. Under load, in a stress test, VIM1S used just 3.06W, less than half the 6.2W that a Raspberry Pi 4 would use. This is the lowest power usage of any SBC we have tested and it prompted us to go back and redo our tests. The same result.
So can we use more than 3.06W (5.1V at 0.6A)? The answer seems to be no. We ran a software decoded YouTube video and a stress test at the same time, something that caused the CPU great pain, but it still maxed out at 3.06W! It also only reached 70.7°C when under this increased load!
Using the GPIO on the Khadas VIM1S
The 40 pin GPIO may trick us into thinking “Can I use my Raspberry Pi HATs with the VIM1S?” but our hopes are quickly dashed. The two may look physically compatible, but their pinout and functionality are very different. There is basic GPIO access and we also have access to I2C, UART, PWM and 1-Wire (commonly used for DS18B20 temperature sensors) as well as standard digital IO.
Normally we would test this with a Python script, but we cannot as there is no Python library available. Looking through the documentation, we found a pinout page which showed us how to interface with the GPIO. Our first choice of GPIO pin, referenced as 461. This choice proved to be a mistake, as did the next pin, 460. Why the mistake? Well it boils down to alternate pin functions. These two pins were set to be “alternate” and we couldn’t determine their mode, but it took us some time to ascertain this. Our investigations led us down a patch of device tree overlays which saw much head-scratching and questioning our sanity. We loaded a device tree configuration for PWM (Pulse Width Modulation) and tried that. Nope. Turned it off, nope. We reflashed the OS and rebuilt our test image, tried to set the GPIO pins up, nope. Ping 460 and 461 would not work. So let's try pin 456 instead. It worked, no device tree overlay tweaking or prayer was required. It just worked.
The GPIO is by far the weakest aspect of the VIM1S. It works, but there is a level of friction that will put some users off. The issue is that the Raspberry Pi has really spoiled us. There we have a GPIO ready for use with a plethora of programming languages, and lots of documentation to get projects started. While Khadas has poured a lot of effort into the docs, they are not as easily referenced as Raspberry Pi.
Using Android on the Khadas VIM1S
Installing Android on the VIM1S is a breeze. Again we use OOWOW to install the OS and after the usual setup we are presented with a stock Android 11 user interface. Installing software via Google’s Play Store is easy, and we installed YouTube and Real Racing 3 for our tests.
Using an Ethernet connection we loaded up YouTube and played the same test video. It played very well, but we can’t confirm the number of dropped frames. There were way less than with Ubuntu, but the Stats for Nerds option failed to work for us. So we have to base playback on what we saw. It was smoother than Ubuntu, not 100% jitter-free perfection, rather it had the odd stumble but we could happily watch YouTube on this board.
Playing Android native games with the VIM1S is a relatively good experience. We tested EA’s Real Racing 3 and it played very well. A full screen 1080P gaming experience provided us with a lap around a track and a distraction from writing this review. Our Xbox One controller connected via USB and was detected and auto-configured ready for our use.
With 2GB of RAM we are going to hit limits in what we can do with Android, but for general purpose browsing, gaming and consumption we have a solid platform. We could even see this being used in digital signage and kiosk design.
What Projects Can We Use Khadas VIM1S For?
Let's address the elephant in the room. We wouldn’t like to use the VIM1S in a GPIO based project. There were too many hoops to jump through to make this a worthy alternative to the Raspberry Pi. If you just need GPIO, then a Raspberry Pi Pico or Arduino Uno will be more than enough. If you need a small Linux computer with GPIO, get a Raspberry Pi (yes they are now back in stock!). If you need a small Linux computer for digital signage, general computing or consumption then the VIM1S has good Android compatibility at an affordable price. Ubuntu performance is ok, in fact we would go so far as to say that it is good as a low power, low cost appliance device.
If you were thinking about building a robot project based on the VIM1S, then sure it is possible, but we would drop in a Raspberry Pi Pico, ESP32 or other microcontroller and use Python to talk to the MCU via serial communication. The VIM1S would be there to provide the brains for camera based AI / machine learning input, the MCU would handle all GPIO activities.
If the Raspberry Pi 4 were still out of stock, then the Khadas VIM1S would have a great chance of making a dent in the market. The $65 price tag is attractive, and Android performance could make this a great box for media consumption and adding “smart” features to a dumb TV.
General Linux computing is fine, nothing fancy and gets the job done. GPIO performance is poor, far too fiddly to be worth your time, so if that’s what you need, buy a Raspberry Pi 4 instead. If you need a low power Linux box, then the VIM1S is an alternative, but there are many others in a now crowded market.
MORE: Best RP2040 Boards