Mini review of ORICO “USB 4.0” M.2 NVMe SSD enclosure

ORICO has sent me a sample of a USB 4.0 M.2 NVMe SSD enclosure for review, which was timely as I did not have a fast USB storage option for testing. In this post, I’ll check out the hardware, show how to install an NVMe SSD, and test performance in UP Xtreme i11 mini PC since it happens to come with a USB4 port.

ORICO USB 4.0 M.2 SSD enclosure specs and unboxing

Orico M.2 NVMe SSD enclosure specifications

The exact model I received is the ORICO M234C3-U4 with a Rose Gold aluminum enclosure (107x50x17mm), supporting M.2 M-Key and B+M Key 2230, 2242, 2260, 2280 SSDs (more on that later), and offering up to 40 Gbps through its USB 4.0 port.

Orico M.2 SSD enclosure

The device ships with a USB Type-C to USB Type-C/Type-A cable, a thermal pad, a heatsink, two screws, and a multilingual user manual.

orico metal enclosure ssd

There’s only one USB Type-C port one the device.

M.2 NVMe SSD installation

I’ll be using a 256GB Apacer M.2 2280 PCIe Gen3 x4 SSD (AS2280P4) that’s supposed to support 1,800 MB/s read speeds and 1,100 MB/s write speed. 1,800MB/s corresponds to about 14.4 Gbps. That’s not quite close to 40 Gbps, but still higher than the 10Gbps for USB 3.1 Gen 2 ports, so we’ll see if we can reach anything close to those speeds.

Apacer M.2 2280 PCIe SSD AS2280P4 warranty sticker

My SSD comes with a sticker, and I suppose it should be better to remove it before installing the thermal pad for even better cooling. The only problem is that it serves as a warranty sticker too (See “Warranty void is label removed” at the bottom left corner). So I’ve kept it. Just remember to remove the plastic films before putting the thermal pad on the SSD.

thermal pad m2 ssd

The next step is to clip the heatsink on top of the thermal pad.

heatsink m2 ssd

We know need to open the enclosure secured with a single screw.

Orico M234C3-U4 M.2 NVMe enclosure

While the specifications mention support for M.2 2230, 2242, 2260, and 2280 SSDs, there are no mounting holes for the smaller size, so getting an M.2 2280 NVMe SSD is the only practical choice.

USB 4.0 M.2 NVMe SSD installation

We can now insert the SSD in the enclosure, secure it with one of the provided crews, before putting the cover back in place.

 ORICO USB 4.0 M.2 SSD enclosure in Ubuntu 20.04

Orico USB 4.0 M.2 NVMe SSD enclosure review

Here’s the USB 4.0 enclosure connected to the USB 4.0 Type-C port of UP Xtreme i11 mini PC running Ubuntu 20.04. The metal enclosure is quite hot to the touch even at idle, but that’s a good sign meaning it’s cooling the SSD.

There’s a fairly long output in the kernel log once I insert the device, but it ends with:


There are two new USB hubs (Bus 0006 and 005) and an Intel USB4.0 SSD which looks good, but those are USB 3.0 and USB 2.0 root hubs.


and indeed when I look at the data with lsusb, there’s no USB 4.0 port, nor anything at 40000M:


That’s odd. So we probably need to check with thunderbolt/usb4.0 specific tools:


Now I can get more information:


But that does not show anything about speed, just that a Thunderbolt device is detected. (Check out the comments section for more information about that). The SSD drive is also properly detected:


… although not mounted, so I used pmount after modifying /etc/pmount.allow file to resolve the error “device /dev/nvme0n1 is not removable”.

Let’s see what kind of performance we have with iozone:


I repeated the benchmark three times with about the same results each time. All results, namely sequential write/read and random read/write, are about in the same range of about 1100 MB/s which may indicate some issue. That number is also close to 10 Gbps, so we may indeed have a USB connection limited to 10 Gbps as reported by lsusb -t command.

For comparison, I’ve also run the fio command used by Hardkernel to test ODROID-M1‘s NVME SSD performance:


1,263MB/s is about 12% higher than the 1,128MB/s read speed found with iozone, but still far from the 1800MB/s advertised for the SSD, and 1,263 MB/s happens to be 10104 Mbps.

It looks like UP Xtreme i11 may be the bottleneck here as the usb4.0 port is advertised as having “usb3.10” capabilities with a maximum speed of 10000Mbit/s:


If I understand that correctly that’s normal we are limited to 10 Gbps speed. I’ll double-check with AAEON to make sure.

[Update: AAEON has purchased a similar ORICO M.2 SSD Thunderbolt enclosure (ORICO-M2V02-C4) and tested it on their side with UP Xtreme i11 and a Samsung MZ-V8V500 SSD with the iozone utility.

iozone orico m2 thunderbolt enclosure

That’s a sequential/random write speed of up to 1700MB/s (13.6Gbps), and a sequential/random read speed of up to 2600MB/s (20.8Gbps), so both data transfer rates are over 10Gbps showcasing that the USB4 port can offer up to 20Gbps transfer speeds, double what USB 3.1 Gen2 can do.

]

A closer look at the board’s components

When I installed the SSD, I did not do a full teardown. So let’s do that now to find more details about the hardware.

ORICO USB 4.0 M.2 NVMe SSD enclosure

We have a chip market “Intel X212TC27 JHL7440” that’s an Intel JHL744 Thunderbolt 3 controller that should be capable of 40 Gbps speed and a JMS583 chip that sounds familiar as the “USB 3.1 Gen 2 to PCIe NVMe Gen3 x2” has been found in several products covered in CNX Software over the years… I initially found it quite odd to have a 10 Gbps chip in a 40 Gbps device, but that’s for backward compatibility, and if I connect the driver to the USB 3.0 port from my laptop, the JMS583 chip is used instead (See comments for details).

The “USB 4.0” 40Gbps model reviewed here costs $169.99 on Amazon, while the price for the 20Gbps model drops to $54.99, and the 10 Gbps model sells for just $29.99. So if you purchase this item on Amazon, double-check your USB 4.0 / Thunderbolt port does indeed support 40 Gbps, as well as your drive speed in order to avoid overpaying. [Update: an industry insider working on USB4 has confirmed this enclosure has nothing to do with USB4, and it’s just an enclosure combining Thunderbolt 3 with a fallback to USB 3.2 Gen 1]

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK Pi 4C Plus
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
29 Comments
oldest
newest
SaOn
SaOn
1 year ago

Could you please check to see if this SSD enclosure support fstrim in ubuntu? Otherwise it would be pretty useless in the long (and not so long?!) run. THANKS!

SaOn
SaOn
1 year ago

Thanks! I assume it also supports SMART? (forgot to ask)

Somewhat related suggestio/plead: It would be huge public service if could you do a review of popular and/or budget-oriented external ssd and/or ssd enclosure and see which ones support fstrim/smart in linux. It is incredibly difficult to find this information, and often the only way to find out is to have one in your hand and then test it to learn that it does not work (don’t ask me how I know!). THANKS!

tkaiser
tkaiser
1 year ago

> see which ones support fstrim/smart in linux

Jean-Luc is accessing this thing as /dev/nvme0n1 so no USB involved at all (it’s NVMe being transported over PCIe over Thunderbolt) and as such no problems wrt TRIM/SMART.

To test the JMS583 (one of these brain-damaged USB-to-NVMe bridges) the provided USB-C-to-A adapter might be sufficient to hide Thunderbolt/PCIe from the host.

David Willmore
David Willmore
1 year ago

Fortunately, we don’t have to theorize as Jean-Luc checked for you, but this isn’t a USB to NVME adapter, but a thunderbolt one, so it’s actually on a PCI-E connection all the way through. A non-TB enclosure would be PCI-E(inside the computer) to USB (port on computer) via a cable to USB (port on the enclosure) converted to NVME (connection to the M.2 drive. With TB, all the same connections exist, but they’re not doing a USB protocol like mass storage or UASP, they’re tunneling the acutal PCI-E connection over the USB cable. Which I think may be important here.… Read more »

tkaiser
tkaiser
1 year ago

> they’re tunneling the acutal PCI-E connection over the USB cable.

Well, it needs to be a Thunderbolt cable, doesn’t it? Or at least an ‘USB 4.0 cable’ since this implies Thunderbolt capabilities…

TLS
TLS
1 year ago

Technically most quality 20 Gbps USB-C cables can do 40 Gbps, as long as they’re not over a metre in length.

tkaiser
tkaiser
1 year ago

Have you already checked link width/speed via lspci -v? And while benchmarking the storage watched CPU utilization via atop/htop?

tkaiser
tkaiser
1 year ago

Sorry, there was a -v missing. The SSD itself should be listed and tell which PCIe capabilities have been negotiated (there’s link training and such stuff also over Thunderbolt).

tkaiser
tkaiser
1 year ago

> there’s no USB 4.0 port

Since such thing doesn’t exist. USB 4.0 is a protocol revision (formerly known as ‘Thunderbolt 3’ – at least USB 4 is TB3 with some minor changes) and 40 Gbps are only possible using Thunderbolt and not USB. But even then a host calling itself ‘USB 4.0 compliant’ only needs to support TB3 at 20 Gbps (and USB at 10 Gbps).

Have you tried to install the bolt package and used boltctl to get some more details?

TLS
TLS
1 year ago

That’s not true though, as there’s a USB4 data standard as well. USB4 is compatible with Thunderbolt 3, although in this case, it appears to be a Thunderbolt 3 controller with a USB 3.2 fallback solution that’s being sold as USB4, which this device clearly isn’t. Thunderbolt 3 can only do 32 Gbps of data, whereas USB4 can do 40 Gbps. You are correct that 20 Gbps is “good enough” though. The 10 Gbps fallback mode is only for USB 3.2 mode, not for USB4, which has to be at least 20 Gbps. Oh and technically a USB4 peripheral only… Read more »

TLS
TLS
1 year ago

Well, you’re missing the context and the features depend on the type of device. I really suggest you check Wikipedia or read my primer over on TechPowerUp, as I went and talked to actual USB4 host and device manufacturers.

Richard Crook
Richard Crook
1 year ago

“The metal enclosure is quite hot to the touch even at idle”

I was under the impression (perhaps in error) that M,2 SSDs ran fairly cool.

Is the heat in fact being generated by the USB/Thunderbolt electronic components of the enclosure rather than the SSD its-self?

Are you able to get a temperature value from the SSD using hddtemp or perhape, more probably, smartctl -a? [ “a” for all attributes rather than just “i” for identity info]

Richard Crook
Richard Crook
1 year ago

Temperature Sensor 1:               48 Celsius Temperature Sensor 3:               34 Celsius 12 Temperature Sensor 1:               48 CelsiusTemperature Sensor 3:               34 Celsius Thanks for getting the data. It is certainly warmer than I expected. By comparison, for a traditional SSD 960 GB in 2.5 inch format  hddtemp /dev/sda /dev/sda: PNY CS900 960GB SSD: 33°C (The hddtemp utility in fact gets the data from the SMART capability of the disk and it can be run in daemon mode for serving data on a TCP port which can be used by another daemon process to grab the temperature values and store them in an… Read more »

tkaiser
tkaiser
1 year ago

> It is certainly warmer than I expected

You might think about why M.2 SSD heatsinks with 15mm height exist 😉

> grab the temperature values and store them in an RRD

I’ve not seen any SATA SSD so far that doesn’t do this on its own. smartctl -l scttemp /dev/sd? will show the drive’s thermal history 🙂 With NVMe it’s a different story. At least nvme smart-log /dev/nvme? will show when tresholds have been exceeded.

Hedda
Hedda
1 year ago

Does this also offer PCIe in the M.2 slot and if so do you think that this could be used with a Intel Wi-Fi 6E AX210 M.2 2230 board if use an A+E to M-key adapter for WiFi cards as it support standard Key A or Key E socket for attaching the WiFi module?

Reason I ask is that there are still no WiFi 6E USB adapters
available so currious if this could be converted into one.

Jens
Jens
1 year ago

I have issues with the JMS583 controller of this Orico M234 enclosure. After switching/replacing the mounted SSD from a Seagate FireCuda 530 to a Samsung 970 Evo, I can’t go back to the FireCuda 530 anymore. The JMS583 controller is stuck with reporting the Samsung 970 EVO is mounted. Even if no SSD is installed at all, the JMS583 controller still claims/reports to the OS the Samsung 970 is present (see dmesg output below). The Thunderbolt Controller (JHL744) doesn’t have this issue and correctly recognizes when you switch/replace the mounted SSD. So I’m stuck in a state, where I can… Read more »

Jens
Jens
1 year ago

I received a response from ORICO Support: "Dear customer, Hello, It is confirmed that the Samsung 970 EVO SSD was written to the master controller of this M234 enclosure and it is no longer compatible with other SSDs. We will have to wait for the JMS583 firmware update to resolve it, but we haven't received any news about the JMS583 firmware update and upgrade." 123456 "Dear customer,Hello, It is confirmed that the Samsung 970 EVO SSD was written to the master controller of this M234 enclosure and it is no longer compatible with other SSDs. We will have to wait… Read more »

spuwho
spuwho
1 year ago

Late to the game here. I have a Minis Forum UM690 (Ryzen 9 6900HX) which has a C port labeled “USB4” on the front. It uses the AMD USB4 controller and its really a protocol switch/router depending on what is plugged into the port. I plugged in several devices like a TB3 dock, and USB-C dock and finally a USB 3.2 Gen 2 flash drive (SanDisk Extreme Pro). lspci shows the AMD USB4 switch as a 16GT/s PCI Gen 4 with a x16 width interface. According to the PCI Forum that should provide a maximum of 31.5GBps of throughput. Using… Read more »

Khadas VIM4 SBC