Twister OS Armbian 2.01 on VIM3! GL Acceleration Fan and AUDIO - Full HOWTO and Working Image DL

Yes, That is correct.

1 Like

Someone who we were helping this morning in our discord channel had his NVMe drive working on his Vim3 Pro with TwisterOS Armbian when he plugged it in.
None of my Samsung Evo 970 Evo plus or Samsung 980 Pro are being detected either.
Will keep checking all my other brands and models to see if I can find one that works.

@jtremblant it could be a power issue, the samsung SSDs are notorious for power consumption…

3 Likes

I bet it’s power-draw, too. I had one working in a PinebookPro, when plugged in to mains, but wouldn’t complete boot on battery. Under-voltage by little fluctuations really mess with SBCs.

1 Like

Pretty sure it’s a power-draw as well. Older Samsung 860 EVO M.2 512Gb, HP EX950 M.2 512GB, and Acer VT500 didn’t work either on Vim3 Pro. I’m obviously using an official 24W khadas PSU with a very high quality USB-C cable.
All those mentioned NVMe units above work and boot from just fine on my RK3399 boards. Still, I’m not too worried about it.

Recently, we just had someone asking for help who had power issues with his Vim3 Pro for using an official khadas 10W PSU which BTW is mentioned on website that would work with Vim3 Pro for (light workloads only!). He managed it make work upon suggestion by downclocking CPU speeds and chosing an on demand governor until his new 24W PSU arrives.

To be fair, it’s kind of difficult to run and specially boot from NVMe m.2 on ARM SBC’s.
Ex. There were only 4 NVMe brands that were able to boot from RockPi4B and 4C with legacy 4.4 kernel. Armbian recently expanded that list by allowing mainline u-boot SPI to Rock Pi 4(A/B/C) for 10 more NVMe brands/models such as:

Corsair MP510 240GB/480GB/960GB
Gigabyte SSD M.2 2280 PCIe x2 Model:GP-GSM2NE8128GNTD
HP SSD EX900 M.2 NVMe 120GB. Model: 2YY42AA#ABB
Intel SSD 660p Model:SSDPEKNW512GB
Kingston A1000 SSD 240GB (PHISON PS5008-E8-10)
Kingston A2000 M.2 2280 PCIe NVMe
PNY 250GB XLR8 CS3030 M.2 NVMe SSD PCIe Gen3 x4
Sabrent Rocket 256GB NVMe PCIe M.2 2280
Samsung 970 EVO Plus SSD 250GB M.2 2280, PCIe 3.0 x4, NVMe, 3500/2300 MB/s
Samsung PM981 256GB
XPG SX6000 Lite 128GB (ASX6000LNP-128GT-C)

Just for the record, I’m not comparing A311D/S922X to RK3399, this is just mentioned for the sake of reference.

Hi, if you have an M2X expansion board that is equipped with additional power supply, Khadas vim3 with Samsung has no problem in terms of voltage, it always works well with this brand.

1 Like

I just got confirmation that Kingspec m.2 NME SSD NE 2280 128Gb is being detected on Vim3 Pro with TwisterOS Armbian 2.0.1 booting from eMMC without using a M2X extension.

2 Likes

Vim3 Pro using a Pine64 Pinepower120W PSU, It shows 12.1V/0.2A for Vim3, It was running 100% stable for several hours.
Incidentally, Pinepower 120W was feeding both my RockPi4C and Vim3 Pro simultaneously.

I needed it know how much power Vim3 Pro actually draws without M2X extension and with no USB3 device attached.
Vim3 Pro was running from eMMC with a single Logitech unifying dongle connected to USB2 port(for Mouse and Keyboard) and TwisterOS.

Not the fastest USB3 I/O speeds but totally acceptable ones on Vim3 Pro. Looking for permanent storage solution for my Vim3. Samsung T5 and SanDisk 256GB Extreme PRO USB 3.2 Solid State Flash Drive look like the best alternatives(performance based) to solve small non-removable 32Gb eMMC storage space on Vim3.

A more realistic benchmark for Sandisk extreme pro USB3.2 128Gb flash drive:

1 Like

I`ve finally made my Samsung 970 Evo Plus detected and working fine after inserting directly to pcie slot.
Any adding of user_kernel_args parameters to env.txt which works in Ubuntu or boot.cmd or boot.ini here made no effects. It seemed that unlike Ubuntu Armbian boot script look for the extraargs= prefix and add written options next to kernel parameters instead of user_kernel_args = prefix.
So nvme ssd was mounted correctly only after I added this line in the end of armbianEnv.txt:

 extraargs=nvme_core.default_ps_max_latency_us=200

Any values below 1000 including 0 are also working for Samsung 970 Evo Plus in my case.

Screenshot_2021-05-09_17-07-32

Now I’m going to try moving Root FS to nvme and make it mounting from nvme partition formatted to ssd optimized file system like BTRFS (with compression?) to check does it make sense of doing all of this :wink:

2 Likes

I was able to have all my NVMe drives(5 different ones) to work with TwisterOS Armbian 2.0.1. on Vim3 about a week ago but wasn’t able to post any more consecutive posts, Cornelius updated it on my behalf regarding this finding on his OP.
I’m Glad you have your 970Evo Plus working by adding:

extraargs=nvme_core.default_ps_max_latency_us=200

In my case, I just upgraded to latest mainline u-boot via krescue, switch to option 4 under Kbi menu and turn it off. All NVMe drives I own were properly detected and mounted upon reboot.

2 Likes

I’m also using KBI menu to switch between EMMC - PCIE bootmode but I have krescue uboot flashed to SPI as I wanted to keep Android on my emmc. And It’s weird but in my case I couldn’t make my SSD running properly without extra kernel arguments. It seems I need to buy another SSD to compare. :smile:

I hope it will be interesting for somebody.
I’ve managed to move TwisterOS to NVME SSD partition formatted in BTRFS with ZSTD compression using the mini-guide from this topic:

Now I have only the files from boot folder kept on SDcard to load the system and all other TwisterOS folders and files moved on SSD. As a result it is mounted from SSD and works much more faster and almost as if I run it on desktop computer.

3 Likes

WD SN500 500Gb working fine with TwisterOS Armbian 2.0.1 on Vim3 Pro. Some pretty good I/O reading and writing speeds for a DRAM-less NVMe drive.
Tested it with Latest U-boot and kbi configuracion option 5 set to “Set Port Mode to PCIe” on Krescue utility.


3 Likes

This is really great. I’d love it if there were btrfs support in uBoot, but 'til that time, your solution is great.

Twister os image doesn’t work on khadas vim 3 pro period. Interesting concept though. Had me going. Good one

It works. I’ve used it on my vim3 pro, although i didn’t like it much so i moved to manjaro.

1 Like

I will accept your admission that you do not know what you are doing. :slight_smile:
TwisterOS is working so well on the Khadas VIM3 Pro, that this contribution was the first non-RK3399 version endorsed by the TwisterOS team. You can enter the Discord chat, referenced above, and see the comments and screenshots.

Now, graciously, I will tell you that many of the stock uBoot builds in Khadas images, including the default Android, do not support boot for images with GPT or MS partition tables.
To boot from these more portable images, they cannot be flashed with the Khadas/Amlogic tool. Also - they will not boot from conventionally imaged SD media (dd, Balena Etcher, etc. ) unless the VIM3 is prepared by booting with Krescue, and installing the downloadable uBoot available there, to the EMMC.

You’re welcome.

2 Likes

It does work dude, we have 3 VimPro’s for testing/deploying it, if you need some assistance feel free to ask before jumping into rushing conclusions. Cheers.

Not sure what I’m doing wrong. I downloaded images(all of them) provided here used etcher to flash to a SD card and no twister os. I’ve flashed images before from khadas docs using Ubuntu images and experienced no problems so IDK.