Using (tested) nvme drive on VIM4

Which system do you use? Android, Ubuntu, OOWOW or others?

Ubuntu 23

Which version of system do you use? Khadas official images, self built images, or others?

Not sure, after all the apt updates, but base is 23.04, IIRC.

Please describe your issue below:

VIM4 does not see the NVMe drive, using all the usual suspects. Namely, gparted, disks, and etc. Lspci comes back blank.

Post a console log of your issue below:

Don’t believe a console log is available for pure text commands, or is there?

Btw, this particular NVMe drive is a 512 Gb and used regularly in a different small computer until I needed to get more disk space on that machine. So I know it works in “normal” PC’s.

I’m getting bottle-necked with the VIM4 now with the stuff I’ve loaded onto it. Plus, sure would like the extra disk speed available with a pci bus NVMe.


@skypuppy can you provide the model name of the SSD ?, Also provide the full log output for executing the dmesg command

You sure you want the full output from the dmesg command? 270k. Not a grep for xxx inside it or something?
Scared of picking up the VIM4 with the NVMe card sticking out of it to the side. (Wonderful design choice there, yeah, buddy.) Umm, Toshiba OCZ.

Not advised to have that setup, it may damage your SSD and the board, the reason for the m.2 port orientation is because the 2280 ssd size format will be too big to fit on the board, so an extension is necessary.

Yes, please provide all the dmesg logs, that way we can diagnose if it is a connection issue or ssd incompatibility issue.

Tried to upload the dmesg output as a zip file, but this wonderful interface tells me it DOES NOT ALLOW zip files! I understand the (sometimes) “security risk” but dang, what a waste of your disk space and bandwidth.

/home/david/dmesg.txt This is my attempt to load the (unzipped) dmesg text file. And, looks like that didn’t work either.

So, Electr1, how do I get this file to you, please???

What is the name of that extra hardware board that lets you “fold over” the nvme drive onto the VIM4? Where does one get one of those?

@skypuppy I don’t need the full log, perhaps you can do it very simple way, connect your device to the internet and run
dmesg | nc 9999 and report to me the link you get, I can get the link from there.

Regarding the m.2 connector extension board, it’s called the new m2x board, and you can obtain it here:

Holy shopola, Batman! Tried to get that board and man, did it send me halfway to the moon and back! Wow. Not even Alibaba gives that much trouble. :frowning:
This is relevant as I’m trying to remove any stumbling blocks to using a (proven and formatted to ext4) NVMe board on the VIM4. Guess I need to sober up and try this again after the moon aligns with Sagittarius in the 7th house… Wow.
The above board appears to be relevant to interfacing a standard NVMe board to a VIM4 unit, which has zero response to an ordinary NVMe board. I suspect there are no callable drivers in the device tree promulgated for the VIM4 board. Esp since there are zero links to the NVMe hardware visible in it’s Ubuntu. And there’s not even a device tree for it. :slight_smile:
Had similar trouble before when trying get one working on a Jetson Nano and Nvidia either didn’t care or was clueless. (I vote for their “didn’t care.”)

PS: no improvement in their release of Linux for the $400-$2000 SBC Jetsons (Orin) either. I did get it to work on their (old) PCI slot on their ($600) TX2.
But I ramble…

Ok, I’ll try the termbin and see if that helps.


Electr1, termbin returned: “dorh”. Is that helpful?


I’ve only used “termbin” once a long while back…

Yes I got the link to your logs:, let me inspect and get back to you.

Are you sure you don’t have a hardware issue. We are running NVMe on all the Vim3/Vim4 that we have and it works very good. We run samsung 980/970 western digital red and blue without any problems. Initially we had a problem that I caused by using a metal heatsink clamp that was touching a component on the board, that was 100% my fault. Fixed that and it works fine.

1 Like

@skypuppy I have cross-checked the logs, it seems as if your SSD is in the situation similar as if nothing is connected over PCIe, so it most likely issue of misconnection.

If you can verify the SSD is atleast, parallelly flat in relation to m.2 connector and ensure the connection, we can see if the logs change, remember to safely power down the device and reboot before any hardware changes.

Otherwise you may need to check using some other SSD.


Ok, latest news re nvme. Tried a different board/disk. The original one I tried worked for years and still does AFAIK in a PC. Inserted a 2Tb Corsair (I think) and it works fine and dandy. Even resized partitions and created a new one just for Khadas usage. Very, very odd that one type works and another doesn’t.
Thought you’d like to know.

Extra info: VERY disappointing disk speeds. The onboard 32 Gb reads and writes about 190Mb/s while the 2 Tb is only about twice as fast. Nowhere near it’s speeds in a PC or Jetson TX2.

Thanks for looking at this and maybe the info will help others.


Some SSDs don’t get detected under linux because they use a different communication mode that is not the standard mode most other NVMe SSDs work under

It’s listed that the m.2 PCIe only has 1 lane, so yes you might see a bit of less performance in comparison.

Got the “new” nvme card installed. Would have been nice to have a teeny bit of documentation with it. Had to fumble about for 15-20 minutes before I was sure of which slots and screws to use, especially as one must REMOVE existing screws that hold the fan down.