M.2 Nvme to USB-C expansion card?

Is anyone working on an M.2 to USB-C expansion card?

From my searching, I haven’t been able to find any data sheets for reliable USB-C → Nvme bridges… Figures, as I would assume they’d be behind NDA forms and such.


I’ve been rocking the 1TB expansion card as my portable windows install, but it’s been frustratingly slow at certain tasks. eg: Moving large files, launching games, etc.

The 1TB card is perfect as a storage device, but not as an OS drive (especially for Windows).

It would be nice to rock an M.2 storage as an expansion card, maybe an M.2 2230, or M.2 2242.

The bridge chips exist, just search for USB-C to M.2 NVMe enclosures. I have one, it’s unusual in that it supports PCIe x4 NVMe, PCIe x4 AHCI and SATA, it uses a Realtek RTL9210.

Such an expansion card would stick out though. The expansion card isn’t deep enough to accommodate an M.2 2230.

2 Likes

I tried looking for data sheets for chips like the RTL9210, and ASM2362, but I haven’t had much luck.

I also have an enclosure with the Realtek chip, but it’s made to accommodate SSD’s from sizes 2242 onwards. Fitting it into an expansion card slot would also make it awkwardly extruded out from the laptop. If possible, I’d like to see if someone else is also looking for the same solution as I am.

If it supported hot-swapping drives, this would be a pretty great setup. Why not use bare NVMe drives as flash drives?

Apologies for being late to the discussion, but poking thru the forums after a bit of a break and noticed this thread. Think it’s worth mentioning a few points:

  1. NVMe to USB works to provide functional USB storage, but “that’s it.” I put it in quotes because there are a couple limitations due to NVMe’s lack of support for USB, such as…
  2. Mounting an NVMe disk via USB will always essentially expose the disk as “external.” That’s fine for general storage, but for booting Windows will get mad about it. You can use Windows to Go, Rufus, or manually set it up to be bootable still, but it’s no different than a storage expansion card from Framework in that regard. It would give you more selection, easier “swapping”, etc., though.
  3. NVMe via USB means NVMe commands don’t work. As an example, using a more traditional NVMe to USB adapter device to plug into, say, Ubuntu to perform secure erase commands on the SSD? Nope. nvme-cli can’t detect it because it’s not currently an NVMe device, it’s a USB device.

2 and 3 are the more obvious issues you’ll face. Effectively, due to NVMe being the standard it is, and explicitly not USB compliant, what you’re looking to do (specifically by-pass a normal storage expansion card) is a wash. You end up with the same problems.

One quick source: unable to read USB · Issue #859 · linux-nvme/nvme-cli · GitHub
No such thing as an NVMe-USB transport spec. Could be made, but would be a custom job.

A completely different attack vector for this problem I’ve thought out loud about once or twice: Get another keyboard piece (the full panel, keyboard, touchpad, etc.) and modify it so an NVMe SSD can be mounted to it in a way that “hot plugs” it. Some sort of bracket under the keyboard to hold the SSD right where the M.2 holder is, a brace to keep it securely attached, and some lever so it can slot in and out of the M.2 holder without needing to modify it. Should definitely shutdown the laptop when switching since you’re essentially hotplugging a PCIe device and the power associated with it, but beyond that no real reason it shouldn’t work to provide full NVMe compatibility. It’s a stretch though, hence why it hasn’t been more than an idle train of thought once or twice for me.

3 Likes

Great points made above.

Ideally, it would be great to have a small form factor M.2/NVMe to Thunderbolt/USB4 expansion card, but I wasn’t able to find anything in regard to thunderbolt 3 / USB-4 chips; more specifically, the datasheets for those chips. On the other end of alternatives, are the NVMe to USB-C chips that have been out for some time; which I’ve also been unable to find info for. ¯\_(ツ)_/¯

In the end, I just want a fast storage option compared to the ones available right now.

I’ve got this NVMe to USB-C enclosure with a very small PCB. Easily narrow enough to fit in an expansion card. It’s too long, but would still make a nice oversized card.

Too bad the port is female, so I can’t just stick it in. If anyone has any ideas how to make this work, that would be pretty cool. Two quick runs of GNOME disk benchmark show that it writes nearly twice as fast as the 1 TB expansion card, even with the cheap 2230 NVMe SSD that I used.

Wow, that’s pretty small! What brand and model is that enclosure?

@mrwm StarTech model M2E1BRU31C

1 Like

disregard, its a JMS583

I’ve enquired to JMicron, if they provide me with enough info to create a eval board or prototype we will be able to go from there.

2 Likes

not to be a buzzkill, but since expansion cards are supposed to be things you don’t really swap out all the time, wouldn’t an enclosure with a cable be much better? do you guys really want an m2 drive sticking out of the side of your laptop?