Question *STABLE* NVMe - USB Adapter?

Page 19 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

cyberjedi

Junior Member
Apr 4, 2010
23
13
81
I'm looking to buy a *RELIABLE* NVME-USB external adapter, that doesn't disconnect randomly, can keep up the close to 1GB/s speed.
So far all adapter's reviews contain frighteningly high % of reports of malfunction, random disconnects, sub-par speeds, falling to even under USB 2.0 speeds, etc.
There are 3 main chipsets in the market: JMicron JMS583, Asmedia ASM2362, and Realtek RTL9210 (no product has surfaced with the latter yet, so no REAL reviews, experiences yet UPDATE: it is on the market already).
Also ASUS has a new product, ROG Strix Arion, but there isn't enough feedback about it yet, and I mean real life feedback not just being able to run a few benchmarks, but real stress test to see if the device (adapter) can keep it up, without disconnecting or slowing down hard.
I would really appreciate any feedback from those who have GOOD experiences during stress-tests, like tons of random 4k writes with a stable speed, cloning 100's of GB-s at a stable high speed close to 1GB/s.
I know SSD's very well, so please stick to the point and don't start to educate me on how their speed falls after some writes, etc. I'm aware and this is NOT the point.
You can help if you can point me to a STABLE and RELIABLE NVMe-USB-C adapter that WORKS as expected.
Thank you in advance!
 
Last edited:

ehbello

Junior Member
Oct 29, 2020
9
4
41
This is a very interesting unbricking solution, in-circuit SPI programming may work too.

Try to update the Toshiba's firmware.

My latest RTL9210 from Ali has much more specs on Amazon JP where your Toshiba XG5 is listed as supported. I received it with new settings for v1.23.9 firmware. I replicated these to an older ORICO M2PV-C3, works OK.

I already updated the Toshiba's firmware to its latest version and I tried your configuration settings without success.

The `dmesg` messages show me that the adapter is detected but not the NVMe and thus the drive cannot be accessed:

[ 412.619476] usb 1-1: new high-speed USB device number 10 using xhci_hcd
[ 412.766386] usb 1-1: New USB device found, idVendor=0bda, idProduct=9210, bcdDevice=20.01
[ 412.766393] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 412.766397] usb 1-1: Product: RTL9210
[ 412.766400] usb 1-1: Manufacturer: Realtek
[ 412.766403] usb 1-1: SerialNumber: 012345678999
[ 412.772054] usb-storage 1-1:1.0: USB Mass Storage device detected
[ 412.772665] scsi host2: usb-storage 1-1:1.0
[ 413.785865] scsi 2:0:0:0: Direct-Access Realtek RTL9210 NVME 1.00 PQ: 0 ANSI: 6
[ 413.786892] sd 2:0:0:0: Attached scsi generic sg0 type 0
[ 413.797425] sd 2:0:0:0: [sda] Read Capacity(10) failed: Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 413.797429] sd 2:0:0:0: [sda] Sense Key : Illegal Request [current]
[ 413.797431] sd 2:0:0:0: [sda] Add. Sense: Invalid command operation code
[ 413.797435] sd 2:0:0:0: [sda] 0 512-byte logical blocks: (0 B/0 B)
[ 413.797436] sd 2:0:0:0: [sda] 0-byte physical blocks
[ 413.800637] sd 2:0:0:0: [sda] Test WP failed, assume Write Enabled
[ 413.804233] sd 2:0:0:0: [sda] Asking for cache data failed
[ 413.804237] sd 2:0:0:0: [sda] Assuming drive cache: write through
[ 413.841772] sd 2:0:0:0: [sda] Read Capacity(10) failed: Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 413.841781] sd 2:0:0:0: [sda] Sense Key : Illegal Request [current]
[ 413.841787] sd 2:0:0:0: [sda] Add. Sense: Invalid command operation code
[ 413.849312] sd 2:0:0:0: [sda] Attached SCSI removable disk
 

RTL

Junior Member
Nov 18, 2020
11
1
11
I already updated the Toshiba's firmware to its latest version and I tried your configuration settings without success.
Is the drive SED/OPAL-locked maybe?
Have you tried it on Windows?
Would you be able to post dmesg extract from the drive working directly on the motherboard?
 
Jun 10, 2020
149
47
61
The only difficulty I face is converting an old miniitx HTPC ich9 usb 2.0 to a usb 3.0, for upgrading purposes, but I have found a way through a minipcie interface connected to a sata power cable, or I think I have, though I have to remove wifi minipcie card with antennas and install a usb wifi dongle instead as a replacement. Then I can make use of usb 3.0 on my HTPC too. The motherboard lv-67b is Is mostly using low power hardware apart from a pcie x16 graphics gaming card . Upgraded 5400 hdd to an SSD (sata-600 but works at sata-300 spec) from 50mb/s r/w to 280mb/s r/w respectively and now my HTPC is fast enough, that is to say not bad at all. Boots in 18 seconds.

This in case one wants to utilize usb 3.0 dongles (5GBps) on an old pc, and speed up system performance and to activate ready boost or to transfer files at 500mb/s.. This was the reason I have purchased the orico 5Gbps enclosure with an m.2 SSD. (See also firmware 1.05 uploaded for jmS580 and unbricking jms580 procedure)
----
New info:
added the mini pcie card usb 3.0 (NEC renesas 720202).
Since my board only supports pcie version 1 only, instead of V2, there was an uncertainty of it it functions and secondly at which speed it does and here are my results.

1. All usb flash drives I tested worked. Highest speed I got was 100mb/s
2. Jms580 usb 3.0 5gb/s worked. Highest speed 200mb/s.
3. SATA 3.0 usb 3.0 5 gb/s worked/ Higherst speed 200mb/s (samsung evo 860).
3. Rtl9210 and jms583 nvme usb 3.1 gen 2 10gb/s were not. recognised.

I would think this has improved my mini itx 10 years old pc considerably. My previous max usb speeds were less than 40mb/s. Also my SSD AHCI inteface outputs about 300mb/s read (SATA Gen 2 interface supported).

I do recommend jms580 for these systems which get with mini pcie card half of usb 3.0 speed or 2.5gb/s or alternatively you can use an ssd with an external usb 3.0 case. (same speed).

note incompatibility with nvme drives (10gb/s) vs mini pcie usb 3.0 expansion card, unlike usb 2.0 ports which are compatible
 
Last edited:

YoAdrian

Junior Member
Nov 23, 2020
5
2
36
Hello everyone, I joined specifically to add a couple data points to this discussion specifically re: NVME-USB enclosure stability with the XBox Series X.

If possible as a new guy, and advisable, I'll start a new thread.

Tried an Orico NVME enclosure (RTL9210 controller) on my new XBox Series X. It worked (very speedy) for a couple days, but then locked up and stopped accessing the drive completely.
- Power light stayed on, just no activity and would no longer show up as accessible. The Mushkin SSD still tests good, and the enclosure won't work with other drives; conclusion is bad enclosure.
- Unfortunately I hadn't found this thread yet so didn't investigate the firmware version, and didn't know there was a way to "unfreeze" these things.

Now ordering a Sabrent enclosure (EC-NVME-BLK) and will report which controller it has, and whether it plays nicely with the XBox.
- I have a query in with Sabrent support about compatibility, we'll see what they say. I've had good experiences with their previous products fingers crossed on this one.

I love community teamwork like you all are engaging in, even though I strongly dislike the position we consumers are placed in with respect to products like these, where we need to not only pick a product, then analyze controllers, but then also firmware versions and eventually hacks in order to get a working product... that being said I like to tinker, and to fix things.
 
Last edited:

YoAdrian

Junior Member
Nov 23, 2020
5
2
36
All, I see some Oricos use another controller so to be specific the Orico I received with the RTL9210 controller (no suffix was printed on chip) was this one off amazone: "ORICO M.2 NVMe SSD Enclosure, USB 3.1 Gen 2 (10 Gbps) to NVMe PCI-E M.2 SSD Case Support UASP for NVMe SSD Size 2230/2242/2260/2280(up to 2TB) Sold by: ORICO Direct US Store"

I have the Sabrent EC-NVME, been using it for a couple months now with no issues at all on any device I've tried. Until now... tested the EC-NVME on the Xbox One, PS4 Pro... This MSI laptop is only device to have trouble.

Hey Charlie, when you used the Sabrent EC-NVME on the XBox One without troubles, did you leave it connected or unplug it when not in use? That's the enclosure I just ordered for my XBSX. Hoping I can just leave it plugged in!
 
Last edited:

YoAdrian

Junior Member
Nov 23, 2020
5
2
36
I'm looking to buy a *RELIABLE* NVME-USB external adapter, that doesn't disconnect randomly, can keep up the close to 1GB/s speed.
So far all adapter's reviews contain frighteningly high % of reports of malfunction, random disconnects, sub-par speeds, falling to even under USB 2.0 speeds, etc.
There are 3 main chipsets in the market: JMicron JMS583, Asmedia ASM2362, and Realtek RTL9210...

YEP this is still a problem OP, though things are a little better now with firmware updates. After seeing a few requests and reading through nearly the whole awesome monster thread here, below is my attempt at a summary submitted for evaluation/correction by any who have contributed thus far.

@cyberjedi as the OP feel free to use the below to update your first post if desired, in order to offer others an up-front summary of the state of things.

---

SUMMARY:

NVME USB enclosure compatibility/stability IS NOT A GIVEN (though it should be) and will be on many folks' minds as more folks assemble NVME USB drives (eg as folks add storage to new game consoles like PS5 and XBSX :)). This thread is the most thorough discussion currently going on anywhere.

Each enclosure controller, and controller version, and firmware version has had problems, but things seem to be improving IF you can get the more recent chips, and especially the newer firmware. Older firmware versions seem to be related to lots of stability, heat, and sleep problems. The "how-to" on updating firmware can be a challenge, but a few manufacturers produce tools, and there are folks here who know and can advise on that topic on this forum.

It certainly would be best to find manufacturers that simply ship the most recent stable setups. Determining which chip/version/firmware you'll get is also a challenge since few manufacturers publish this info, but it can be done by reading forums. The main controller options out there are:
- Realtek RTL9210 vs RTL9210B e.g. on some Orico some Fideco (apparently still disconnect problems w 1.20.12? other probs with firmware 1.21.17? 1.22.18? Maybe 1.23.9 finally a good working firmware? maybe a good bet now for heat/performance?)
- JMicron JMS583 A0 vs A1 vs A2 e.g. on Sabrent some Fideco or some Orico (seems stable with firmware 2.0.9, currently best bet for stability?)
- ASMedia ASM2362 e.g. on Asus Arion or Star.Tech (little analysis here, but some heat concerns... is it stable w/ 18.10.31 firmware?)

Ok, how'd I do?
 
Last edited:
  • Like
Reactions: kadykov

RTL

Junior Member
Nov 18, 2020
11
1
11
Ok, how'd I do?
Super :) Let me add

JMS583 A0 FW v2.0.9 - no issues except for stability on poor quality cables
JMS583 A2 FW v2.0.9 - all issues resolved

JMS583 vs RTL9210
RTL9210 is "USB 3.2 Gen 2×1 SuperSpeed+,10Gbit/s 1 lane effective 1,212 MB/s"
JMS583 is "USB 3.2 Gen 1×2 SuperSpeed+, 10Gbit/s 2 lanes effective 1 GB/s"

RTL9210 is faster and supports 10Gbs over USB-A too.
 
  • Like
Reactions: Hyperx7
Jun 10, 2020
149
47
61
JMS583 vs RTL9210
RTL9210 is "USB 3.2 Gen 2×1 SuperSpeed+,10Gbit/s 1 lane effective 1,212 MB/s"
JMS583 is "USB 3.2 Gen 1×2 SuperSpeed+, 10Gbit/s 2 lanes effective 1 GB/s"

RTL9210 is faster and supports 10Gbs over USB-A too.
That makes sense. That is why my JMS583 is a bit faster than my RTL9210.

Manufacturer info:
JMS583: USB 3.1 Gen 2 to PCIe Gen3x2 Bridge Controller
RTL9210 : USB3.1 Gen2 to PCIe3.0 bridge solution

Same to me (USB3.1 Gen 2). I should stop answering you.
 
Last edited:

razel

Platinum Member
May 14, 2002
2,337
90
101
Some good news. Looks like IMO 2nd gen chipsets are becoming more available.


AsMedia ASM2364 20GB and also already on sale with additional discount from Orico if you're lucky enough to get the email. I'm thinking about picking one up even though I don't have any 20GB USB-C ports on my personal system. I do have Thunderbolt 3 ports elsewhere.

Disclaimer I did not have any issues with my Jmicron 583 and RTL 9210 based USB-NVME enclosures. Only my Orico JMicron came out of the box with old firmware that didn't support TRIM. Thanks to this thread I got that to a happy state with firmware 2.09.
 
Jun 10, 2020
149
47
61
Your source of that info? You dont mind sharing this unless I am touching a sensitive nerve??This will be the last time I will reply to any comments you make, if proven to be mal / false info again.

RTL9210 is "USB 3.2 Gen 2×1 SuperSpeed+, 10Gbit/s 1 lane effective 1,212 MB/s"

JMS583 is "USB 3.2 Gen 1×2 SuperSpeed+, 10Gbit/s 2 lanes effective 1 GB/s"

RTL9210 is faster and supports 10Gbs over USB-A too.
 
Last edited:

YoAdrian

Junior Member
Nov 23, 2020
5
2
36
Hey guys easy does it please ok? :) We're all in this together trying to help other folks make informed decisions on stable enclosures. I haven't been on these boards long but I've seen you both try to clarify with each other admirably before :beercheers:. It can be difficult with complex topics, please keep trying. My take on the questions at hand follows:

1st and most importantly: New firmware is finally working with hardware, though old stock/firmware is still flying around online retailers so it must be checked and often updated to get a working enclosure. I guess I did ok in the summary. Toot toot my own horn haha, I'm sure it can still be better. This thread is AMAZING and a few of you (not me) have done the lion's share of the testing and writing. The community thanks you.

2nd: This thread's main topic is stability (started when manufacturer's enclosures were crapping out left and right) so incremental performance is a bit of a sidebar to debate... but it's still worth knowing about, AFTER stability is ensured...

@apoelistasaudi I agree with you more info is needed. It seems possible though the two transfer speed formats (the terribly named 3.2gen2x1 vs 3.2gen1x2) theoretically allow for different maximums right? Not much info out there, & USB specs don't market a difference, but this white paper speculates a theoretical difference here. "Both USB 3.2 Gen 2x1 and Gen 1x2 provide a 10Gbps raw data rate. However, due to the more efficient line encoding for Gen 2, throughput for Gen 2x1 is approximately 1.2 times higher than for Gen 1x2. Both 10Gbps connection speeds are needed and support different use cases." I didn't validate the source author's credibility. Also theory and marketing are not the same as spec sheets and benchmarks! So...

- @RTL regarding your claim that the two JMS and RTL chips support these different protocols, is that info published anywhere? It is really interesting, but I can't find Realtek or JMicron documentation of it. Additionally, given the otherwise same enclosure setup, are there published comparison benchmarks showing a 20% performance increase coupled with stability and reasonable temperatures? *One sensitive point* that I haven't seen brought up... I honestly admit your name being RTL makes me wonder if you work for or represent the Realtek company? You might not, and anyways it would not necessarily mean your statements are untrue, but this is the internet :) and it would indicate a potential bias that ought to be stated. And btw thanks for your added info on JM firmware, that seems consistent with other observations here.

I feel like this enclosure performance debate deserves a separate thread really, if y'all are super interested in it.
 

ehbello

Junior Member
Oct 29, 2020
9
4
41
Is the drive SED/OPAL-locked maybe?
Have you tried it on Windows?
Would you be able to post dmesg extract from the drive working directly on the motherboard?

I don't think so. It seems that the unit does not support OPAL self-encryption.
$ sedutil-cli --query /dev/nvme0
Invalid or unsupported disk /dev/nvme0
$ sedutil-cli --query /dev/nvme0n1
Invalid or unsupported disk /dev/nvme0n1

I don't have any Windows machine and actually I don't think the result will be any different.

`dmesg` does not show nvme devices. However you can see here the output of `lshw` and `lspci`:
$ lshw -C storage
*-nvme
description: NVMe device
product: KXG50ZNV512G NVMe TOSHIBA 512GB
vendor: Toshiba Corporation
physical id: 0
bus info: pci@0000:02:00.0
logical name: /dev/nvme0
version: AADA4107
serial: <hidden>
width: 64 bits
clock: 33MHz
capabilities: nvme pciexpress pm msi msix nvm_express bus_master cap_list
configuration: driver=nvme latency=0 nqn=nqn.2017-03.jp.co.toshiba:KXG50ZNV512G NVMe TOSHIBA 512GB:<hidden> state=live
resources: irq:16 memory:d1000000-d1003fff

$ lspci -v -s 0000:02:00.0
02:00.0 Non-Volatile memory controller: Toshiba Corporation Device 0116 (prog-if 02 [NVM Express])
Subsystem: Toshiba Corporation Device 0001
Flags: bus master, fast devsel, latency 0, IRQ 16, NUMA node 0, IOMMU group 11
Memory at d1000000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [40] Express Endpoint, MSI 00
Capabilities: [80] Power Management version 3
Capabilities: [90] MSI: Enable- Count=1/32 Maskable+ 64bit+
Capabilities: [b0] MSI-X: Enable+ Count=32 Masked-
Capabilities: [100] Advanced Error Reporting
Capabilities: [260] Latency Tolerance Reporting
Capabilities: [300] Secondary PCI Express
Capabilities: [400] L1 PM Substates
Kernel driver in use: nvme
 
Last edited:

RTL

Junior Member
Nov 18, 2020
11
1
11
Your source of that info?
JMS583 specification directly from Orico https://www.amazon.ca/dp/B07QRZQC6D
"Two types of cables, extended compatibility: C-to-A interface (5 Gbps), 10 Gbps C-to-C interface" (2 lane design)

My RTL9210 on compatible hardware with C-to-A supports 10 Gbps (1 lane design)

I honestly admit your name being RTL makes me wonder if you work for or represent the Realtek company?
I wish :)

I don't think the result will be any different
I think ASM2362 is most likely to work with XG5 as it is explicitly compliant with the exact old NVMe revision 1.2.1 and when sold, includes XG5 on the compatibility list.


 
Jun 10, 2020
149
47
61
JMS583 specification directly from Orico https://www.amazon.ca/dp/B07QRZQC6D
"Two types of cables, extended compatibility: C-to-A interface (5 Gbps), 10 Gbps C-to-C interface" (2 lane design)

My RTL9210 on compatible hardware with C-to-A supports 10 Gbps (1 lane design)
Both rtl9210 and jms583 output 10Gbps (1000mb/s) with usb C to A cable.

I have not observed any difference with the two types of cables with either rtl9210 or jms583 when running 10gbps benchmarks.

“Both USB-C to C cable and USB-C to USB-A cable supplied, offering an ultra-fast USB 3.1 10 Gbps data transfer experience”
You won my mute. No more replies.
 

Attachments

  • 8A1A0DA3-C517-47F8-BEBF-19DDA78B57EA.png
    8A1A0DA3-C517-47F8-BEBF-19DDA78B57EA.png
    368.5 KB · Views: 31
Last edited:
  • Like
Reactions: YoAdrian and Andalu

Andalu

Member
Jun 25, 2020
93
68
61
Lately in this thread you can read some posts containing statements as if they were absolute truths even if they do not come from direct experiences that can be replicated and verified by anyone or for which no reliable source is quoted.

Some of them ("RTL9210 is faster and also supports 10Gbs on USB-A"), seems to be the proof of the non-reading of the whole thread and has already been opportunely rejected by @apoelistasaudi.

About the same statement and another one, perhaps the most interesting in the part concerning the reachable peak (1.212 MB/s vs 1 GB/s) (for the effective lanes no source has been provided until now, although explicitly requested by another user) from the two JMS583 and RTL9210 chipsets, I asked myself: what better opportunity to find a confirmation to this thesis than to use a PCI Express to USB 3.2 Gen.2x2 card (ASM3242 chipset) with a bandwidth of 20GBps?

And that's exactly what I did, using the same samsung 970evo NVMe and a Thunderbolt3 cable for both chipsets.
Here are the results, verifiable and replicable by anyone interested, where a different reality is highlighted:
the JMS583 chipset got better results in almost all the tests performed and I don't see the RTL9210 chipset reach the peak of 1.2 GB/s in any benchmark.

On the left side information and results for the RTL9210 chipset (firmware 1.23.9) and on the right side those related to the JMS583 chipset (revision A0 - firmware 2.0.9):

1. RTL9210 info.png 2. JMS583 info.png

1a. RTL9210 Anvil.png 2a. JMS583 Anvil.png

1b. RTL9210 AS.png 2b. JMS583 AS.png

1c. RTL9210 Atto.png 2c. JMS583 Atto.png

1d. RTL9210 CrystalDiskMark.png 2d. JMS583 CrystalDiskMark.png


P.S.: as already said, I didn't want to intervene anymore, but so approximate information has been reported that I couldn't avoid to do it.
 

Spicedaddy

Platinum Member
Apr 18, 2002
2,305
75
91
ssd.jpg


960 PRO 512GB is on the motherboard (boot drive) and 970 EVO 1TB is in JEYI Thunderbolt 3 enclosure. I'm impressed, it's performing better except for read speed because it hits the limit of TB3.

Also cool that Samsung Magician can see the drive and update firmware, etc. Not the case when using USB.
 

mountainmanjoe

Junior Member
Nov 8, 2020
4
0
11
I have stability problems with my RTL9210 based enclosure.

I didn't find any firmware files or even a datasheet on the REALTEK website.
 

YoAdrian

Junior Member
Nov 23, 2020
5
2
36
I have stability problems with my RTL9210 based enclosure.

I didn't find any firmware files or even a datasheet on the REALTEK website.
Bummer @mountainmanjoe that's where I was with my previous Orico enclosure, unstable RTL9210 and little support available.

My solution was to first confirm it was the enclosure's fault, then simply return it and look for a company that included controller info and current firmware, along with firmware updating tools...

I went with Sabrent's EC-NVME enclosure off their amazon storefront and so far it is working flawlessly as an external game drive for an XBox Series X; it uses a JMS583 A2 with current 209 firmware, their support was responsive to my questions, and they offer a tool to update firmware off their website (though I have not had need to use it). I am not affiliated with them at all, just happy they are trying to do the right thing for customers. They are not the cheapest, but I tried that route already and I just made myself unhappy. BTW it is "biggish" for a small drive and is weighty solid aluminum. That may or may not appeal to you.

Another option for you is scan through previous posts here on updating your RTL9210 firmware, find and download the tools, and update it yourself. Maybe someone can quickly point to a good post with links to the tools? Updating the firmware might/should work for you.

Third if you get in a bind you might politely ask @apoelistasaudi or @Andalu for assistance, or any of the other very helpful and knowledgable folks here. Good luck.
 
  • Like
Reactions: mountainmanjoe

ehbello

Junior Member
Oct 29, 2020
9
4
41
I have stability problems with my RTL9210 based enclosure.

I didn't find any firmware files or even a datasheet on the REALTEK website.

See the post #405
 

mountainmanjoe

Junior Member
Nov 8, 2020
4
0
11
See the post #405
Thank you.
How come the firmware is only available from forums, dodgy 3rd party vendors, and not from the REALTEK themselves?

What was changed in ver 1.23.9?

I used the flash program to do a dump of my controller. The version was reported as:

FW Ver : 9.20.4
FW Build Date : 2020.01.14

makes no sense.
 

yass95

Junior Member
Dec 3, 2020
3
1
36
Hey all. Just went through this nice 19 page thread. Thanks a lot for the wealth of information! :)

I am one of the (un)fortunate souls who has an early revision JMS583 A0 chip NVME generic adapter. I remember the firmware originally was 0205 and I updated it to 0209. However, I am still getting the adapter heating up very quickly and most likely causing me the issues I'm having with a Raspberry Pi 4.

Anyone using one with their RPi and a Samsung Evo 970 by any chance? Would love to know the proper settings to use for flashing. It seems my drive just falls off and won't boot probably due to throttling/heat shutdown. And this is with a heatsink on the NVME drive.

Here is the exact one I bought in case it helps: https://www.amazon.com/gp/product/B07K6GPXDV/

Here is the last thing I had flashed:

Code:
[setting]
USBWritePerformance=0
USBReadPerformance=0
ShowRWPerf=1
WriteFileName=test.bin
ProductModel=JMS583
WRLoop=0
RWDataSize=100
EEPROMOnly=0
SupportODD=0
CheckMaxSn=0
MPVersion=1
MPSafeRemove=0
MPEEPROMToLog=0
PerfShift=1
MPPassLabel=1
MPAutorun=0
MPResetWait=30
MPSnAToZ=0
MPPortReset=0
EnBarcodeMode=0
EnKey0SafeRemove=0
EnEPPTypeC=0
EPPPowerGPIODelay=1000
EPPPowerOnDelay=30000
EPPPowerOffDelay=1000
SCSITimeout=30
[JMEXECUTE]
CapacityCustomize=0
Capacity=0
FreeSpace=3998735138816
FreeSpaceRange=0
EnFreeSpaceCheck=0
EnPartition=0
EnFormat=0
EnRWTest=0
EnEEPROMUpdate=1
EnFWUpdate=1
DiskFormat=0
DiskLabel=NVME
FwFileName=JMS583_0209.bin
FmtSecPerClus=-1
EnVenderCheck=0
EnUSB30Check=0
EnSWCopy=0
SwImgPath=
SwDstFolder=
EnFWCheck=0
EnFolderCompare=0
bAdvenceCompare=0
EnCloneProduct=0
EnUSB31Gen2Check=0
nPartitionTblFmt=0
[JMEEPROM]
TableType=3
MapToHDName=1
StrBFromHDSN=0
VenderID=152D
ProductID=0583
StringA=JMicron Tech
StringB=USB to NVME Bridge
StringC=JMicron
String3=DD56419883893
StringAInc=0
StringBInc=0
String3Inc=0
FlashType=-1
StringMaxSn=0
EEPROMRetry=0
JMB509REU=0
JMB509WDHDD=0
StandbyTimer=1
JM539PWMode=0
ProductRevsion=0000
ODDSize=0
EnMultiSec=0
EnOver2TBMulLun=0
EnManuProdStrSourceCtl=1
EnInquiryStrSourceCtl=1
EnJMS561StandbyTime=1
EnSNfromHDDSN=0
BarcodeLength=16
[JMEEPROMVERIFY]
VenderID=152D
ProductID=0583
StringA=JMicron
StringB=USB to NVME Bridge
DiskName=JMS583
EnCheckDiskName=0
VolumeLabel=UsbDisk
EnCheckVolLabel=0
HDDFwRev=01.01V01
EnCheckHDDFwRev=0
[576PDswitch]
EnPD=0

Or is this all a wash and we still need to wait for a more reliable + affordable adapter?
 

Polarathene

Junior Member
Dec 3, 2020
3
0
6
the JMS583 chipset got better results in almost all the tests performed and I don't see the RTL9210 chipset reach the peak of 1.2 GB/s in any benchmark.

JMS583: https://www.jmicron.com/products/list/13
RTL9210 (no official source unfortunately): https://www.tomshardware.com/news/realtek-ssd-controller-flash-memory-summit,40147.html

Both are USB 3.1 Gen2x1... It seems there is some misunderstanding here when PCIe 3.0 x2 is mentioned, that's x2 PCIe 3.0 lanes, not USB 3.2 dual-lane. This is describing the amount of PCIe 3.0 lanes available to the M.2 connector, thus it'd have a maximum bandwidth of ~2GB/sec, more than enough to meet the needs of 10Gbps (~1.2GB/sec) for USB Gen2x1. Just like SATA, these are maximums, so hitting close to 1.1GB/sec is fine when considering other factors like additional overheads.

So if you want to test the difference between Gen2x1 and Gen1x2, you'd probably want to ensure you're using such a setup in the first place. Chances are Gen1x2 will perform slower than Gen2x1 all other things equal for the cited reasons earlier regarding performance optimizations that Gen2 brings.
 
Last edited:

Polarathene

Junior Member
Dec 3, 2020
3
0
6
However, I am still getting the adapter heating up very quickly and most likely causing me the issues I'm having with a Raspberry Pi 4.

While likely a separate concern, do note that NVMe disks can require up to 6W (or more for certain models), that's drawn at peak performance. I'm not sure if this would result in lower performance or if the disk attempts to draw that amount and fails, not unlike HDDs used to with externals usually needing to supply an extra boost for that power to spin the disk up initially (highest peak power draw for HDD).

I've not tested such to know what behaviour to expect in that situation. On a PC you'd usually get the desired power output from a USB root port, for USB 3.0 (or 3.1 Gen1) that's 900mAH @ 5V, a total of 4.5W.

SBC's have historically been known for not handling this peak output reliably/consistently, especially when other components or connected devices are drawing power as well. Your RPi4 is powered by USB-C 3A@5V(15W)? Seems a max of 1.2A is available to USB ports:

That allows for 4.5W on a USB 3.0 port that the RPi4 offers, while PC users with USB-C ports will enjoy 1.5A@5V (or potentially 3A or more if negotiated) providing their devices with up to 7.5-15W, usually more than enough for these NVMe SSDs.

Besides this, also account for any potential voltage drops (may be less of an issue on a RPi4 than prior generations?), as this can also occur from the SBC port, where on a PC it's typically only an issue over the cable. Quality of a cable for power delivery (even when not using USB-PD or other charging protocols) is impacted by cables resistance to voltage drops, getting a lower number for AWG rating helps maintain the initial voltage from one end to the other, 20AWG IIRC is preferable, and it might have been 28AWG that performed poorly losing a fair bit of voltage to the device that the total power needed was insufficient. Distance of the cable can also play a role, less cable length equals less resistance to go through thus less voltage drops. That's why it's common to get products like Samsung T5/T7 with thick(better AWG rating) 0.5M short USB cables.

I believe some users blame chipsets for disconnects, and while that may partially be true, sometimes it can also be due to lack of sufficient power being available. There are some power efficient NVMe SSDs like SK Hynix P31 I think, these might fair better.

Since you're considering it a thermal issue, which is generally related to power activity, it could very well be related that the RPi 4 is not able to meet the power demands of your 970 Evo. Should be easy to confirm if due to the device or RPi4 by testing against a PC as well? Your 970 Evo can use 6W on average for 1TB model, and up to 10W:

That far exceeds 4.5W. There are some products which can sit between the USB port and your USB cable to monitor power activity and verify if this is also bottlnecking it. Like the chipsets discussed here though, quality/reliability can also vary..