Fixing Storage Adapters for Raspberry Pi via Firmware Updates

StarTech USB312SAT3CB
StarTech USB312SAT3CB*

I’ve covered how to get the right type of storage adapter for your Raspberry Pi for years on this site and cataloged storage adapters that both work and don’t work with the Raspberry Pi. Over the years we’ve learned that many of these adapters can be “fixed” with a firmware update to work with the Raspberry Pi.

In this article I’ll put together an evolving list of firmware adapters that can be fixed with these updates from my own experience as well as comments people have left over the years!

Overview

The preferred and safest way to identify your device is by brand name. This will work if you have a “popular” or “name brand” storage adapter.

If you have a generic / unbranded adapter then the next best way is by chipset. We can identify your chipset by using the following command:

sudo lsusb

This yields the following result:

pi@pi:~ $ lsusb
Bus 002 Device 002: ID 174c:55aa ASMedia Technology Inc. Name: ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge, ASM1153E SATA 6Gb/s bridge
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 04d9:0007 Holtek Semiconductor, Inc.
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Yours will look similar to mine. I’ve bolded the important line which is our storage adapter. The above result is for the StarTech 2.5″ SATA to USB 3.1 (USB312SAT3CB) adapter. This example is a name brand adapter that will be on the list but if it wasn’t the generic chipset would be the ASMedia ASM1153E chipset for this adapter. Other common chipsets include JMS-578, etc.

If you’re confused about which is which use this version of the command to get a lot more detail (including device properties that often make it much easier to identify):

sudo lsusb -v

This will yield something like this:

Bus 002 Device 002: ID 174c:55aa ASMedia Technology Inc. Name: ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge, ASM1153E SATA 6Gb/s bridge
 Device Descriptor:
   bLength                18
   bDescriptorType         1
   bcdUSB               3.10
   bDeviceClass            0
   bDeviceSubClass         0
   bDeviceProtocol         0
   bMaxPacketSize0         9
   idVendor           0x174c ASMedia Technology Inc.
   idProduct          0x55aa Name: ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge, ASM1153E SATA 6Gb/s bridge
   bcdDevice            1.00
   iManufacturer           2 asmedia
   iProduct                3 ASMT1051
   iSerial                 1 123456799FA6
   bNumConfigurations      1
   Configuration Descriptor:
     bLength                 9
     bDescriptorType         2
     wTotalLength       0x0079
     bNumInterfaces          1
     bConfigurationValue     1
     iConfiguration          0
     bmAttributes         0xc0
       Self Powered
     MaxPower                0mA
     Interface Descriptor:
       bLength                 9
       bDescriptorType         4
       bInterfaceNumber        0
       bAlternateSetting       0
       bNumEndpoints           2
       bInterfaceClass         8 Mass Storage
       bInterfaceSubClass      6 SCSI
       bInterfaceProtocol     80 Bulk-Only
       iInterface              0

The above example didn’t give us the name “StarTech” anywhere but it did give us some clues. This is identified as a “Mass Storage” interface class device which definitely narrows things down. Your other peripherals will show as the category they are from like mouse, keyboard, etc. You should be able to narrow things down by unplugging everything else from your Pi if you are still having trouble identifying which is which.

Many of these updates need to be applied using a Windows machine as that will be the only platform these updates will be offered on from their web site. Some manufacturers have update utilities for multiple platforms available but from what I’ve found if you’re lucky enough they offer them at all it will usually be for Windows.

Warning / Disclaimer

This is not an entirely risk free procedure. If something goes wrong during a firmware update it is possible to brick it. This doesn’t happen very often but understand it’s possible. If you lose power at the moment you are updating the firmware for example that could definitely do it.

There is less risk for the “branded” adapters as these are the manufacturer’s tools intended for the manufacturer’s devices. It’s as safe as it gets but even in these cases things can go wrong (like the examples I mentioned above). There is also some risk that even chipsets identifying as the same chip may have slight variations in how they are actually implemented or which revision they are.

Make sure you understand this is not a completely risk free procedure (and carries the same risk as firmware updates on any other device, and a little bit extra risk even for the generics since they may not have been intended for that exact device) before proceeding!

StarTech Adapters

StarTech 2.5″ SATA to USB 3.1 Adapter

StarTech 2.5" SATA to USB 3.0/3.1 Adapter
StarTech 2.5″ SATA to USB 3.1 Adapter

The USB 3.1 variant of the StarTech 2.5″ SATA adapter works well with the Pi 4. The USB 3.0 variant doesn’t have firmware updates available and is not recommended.

Links: Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.co.jp*, Amazon.co.uk*, Amazon.de*, Amazon.es*, Amazon.fr*, Amazon.it*, Amazon.nl*, Amazon.pl*, Amazon.se*, Amazon.sg*

There are a few different variants. Check the tag on your cable to see which exact model you have.

usb312sat3cb – USB 3.1 Gen2 Version

usb31csat3cb – USB 3.1 Gen1 Version

usb3s2sat3cb – USB 3.0 Version – No updates available

Click the “downloads” tab and choose “firmware.zip”. This must be ran on a Windows machine. It will update the firmware almost instantly when you launch the program with the adapter plugged in and say “SUCCESS – UNPLUG AND REPLUG THE DEVICE”.

Sabrent Adapters

Sabrent and Orico both have the worst track records for working storage adapters for the Pi. I don’t recommend them at all but they can sometimes be fixed.

The following Sabrent JMicron adapters can be updated with their official tool:

Important Note: After the update the Sabrent adapters often work but usually only with quirks mode enabled (see bottom Quirks section of article).

For Sabrent’s version of the JMicron firmware update tool: Sabrent JMicron Update Tool

EC-SNVE*

PSiler has reported that you can fix UAS support on the EC-SNVE* with a firmware update available at: Sabrent EC-SNVE Download Page

For the general Sabrent adapters firmware update list (check if your adapter is listed): Sabrent Firmware Update Download Page

Generic Adapters

Note with generic adapters there is some risk. These may not necessarily be by the same manufacturer of your device. It usually doesn’t matter as these all have the same storage controller but due to slight variations in the way some manufacturers implement this technology it’s possible it could cause an issue / brick it. Make sure you understand that there is some risk before proceeding!

JMicron JMS578 Firmware

This is a copy of the JMS578 firmware that has fixed this issue for many people (but not everyone) on the Raspberry Pi. You may still need to enable “quirks mode” (see quirks mode section) even with the updated firmware in some cases.

It’s a little bit trickier to use than some of the other ones but not too extraordinarily difficult. You will need the updater utility and the .bin file.

Here is the updater utility: ODroid – jms578fwupdater.tgz

Here is the JMS578 firmware update: ODroid – jms578_fw_update

And finally the how to use the updater utility / instructions here: ODroid Wiki – How to use jms578_fw_update

This thread is worth a read as well to see the different types of adapters/chipsets people tried with this and their different results: Raspberry Pi Forums – Topic 245931

Watch Out For Power Issues

If you are using a drive that has high power demands a common solution I’ve been recommending for years is to use a Sabrent powered USB hub to power the drive. This eliminates your Pi from having to use it’s own power to power the drive at all. This is often required for higher performance NVMe drives.

Sabrent Powered USB Hub
Sabrent Powered USB 3.0 Hub

The Sabrent powered USB hub delivers a whopping 2.5A of dedicated power for your USB attached devices. This is almost as much as the Pi adapter itself is rated for (3.0A). It will easily power the most thirsty of setups such as NVMe enclosures.

Links: Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.co.uk*, Amazon.es*, Amazon.it*, Amazon.nl*, Amazon.pl*, Amazon.se*

Note: Make sure Amazon doesn’t try to take you to the non-powered version and that it’s the one with the AC adapter that plugs in to provide extra power

Verify Drive Performance

You can make sure everything is running correctly (and as fast as it should be) by running my quick storage benchmark. You can run the benchmark with the following one-liner:

sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

This will give you a score you can compare to the other Raspberry Pi Storage Benchmark results and make sure that you are getting an equivalent speed to your peers with the same device!

Benchmarking / Testing Storage

If you want to verify your drive’s performance you may want to run my storage benchmark with:

sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

If you search for the model of your drive on Pi Benchmarks you can compare your score with others and make sure the drive is performing correctly!

Fix (some) USB Adapter Problems Using Quirks

Some adapters can be made to work by using USB quirks to disable UAS mode on the drive. This lowers performance, but it’s still much faster than a SD card and your adapter won’t go to waste. Some adapters also require it even with the updated firmware!

To find out the quirks we need to find the device ID string for your adapter and then add an entry to cmdline.txt telling the kernel to apply them on boot.

Find Your Adapter

To apply the quirks we first need to get the adapter id. We will use the sudo lsusb command:

$ sudo lsusb
 Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 002: ID 174c:55aa ASMedia Technology Inc. Name: ASM1051E SATA 6Gb/s bridge, ASM1053E SATA 6Gb/s bridge, ASM1153 SATA 3Gb/s bridge, ASM1153E SATA 6Gb/s bridge
 Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
 Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

On line 2 we can see my ASM1051E SATA 6Gb/s bridge adapter (it’s the known working StarTech.com 2.5″ SATA to USB 3.0* adapter). You will see something very similar to mine when you run the command and it shouldn’t be too hard to figure out which device it is. If you need more information add a -v switch to make the command sudo lsusb -v. This can sometimes add some additional details to make it easier to figure out which one is your adapter.

If you’re still not sure, we have another command that between the two that can narrow things down. Type / paste the following:

sudo dmesg | grep usb

 [0.828535] usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 4.19
 [0.828568] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
 [0.828597] usb usb3: Product: DWC OTG Controller
 [0.828620] usb usb3: Manufacturer: Linux 4.19.75-v7l+ dwc_otg_hcd
 [0.828644] usb usb3: SerialNumber: fe980000.usb
 [0.830051] usbcore: registered new interface driver uas
 [0.830182] usbcore: registered new interface driver usb-storage
 [0.836488] usbcore: registered new interface driver usbhid
 [0.836511] usbhid: USB HID core driver
 [0.971598] usb 1-1: new high-speed USB device number 2 using xhci_hcd
 [1.154217] usb 1-1: New USB device found, idVendor=2109, idProduct=3431, bcdDevice= 4.20
 [1.154254] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
 [1.154281] usb 1-1: Product: USB2.0 Hub
 [1.301989] usb 2-1: new SuperSpeed Gen 1 USB device number 2 using xhci_hcd
 [1.332965] usb 2-1: New USB device found, idVendor=174c, idProduct=55aa, bcdDevice= 1.00
 [1.332999] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
 [1.333026] usb 2-1: Product: ASM105x
 [1.333048] usb 2-1: Manufacturer: ASMT
 [1.333071] usb 2-1: SerialNumber: 123456789B79F

This is the dmesg log showing the hardware detection as hardware is activated on the Pi. If your log is really long you can generate fresh entries by just unplugging a device and plugging it back in and running the command again. Here we can clearly see that the ASM105x is what our StarTech adapter is being detected as.

Now we can go back to our first lsusb command and we want the 8 characters from the ID field that comes right after the Device:

Bus 002 Device 002: ID 174c:55aa ASMedia Technology Inc. Name: ASM1051E SATA 6Gb/s bridge

Our adapter’s ID is: 174c:55aa

Applying Quirks

To apply the quirks to our USB adapter we are going to edit /boot/cmdline.txt. Type:

sudo nano /boot/cmdline.txt

We are going to add the following entry into the very front of cmdline.txt:

usb-storage.quirks=XXXX:XXXX:u

In place of the X’s above you will put in your adapter’s ID that we got before. With the example commands I gave above mine would look like this: usb-storage.quirks=174c:55aa:u. After this my cmdline.txt looks like this (everything should be one continuous line, no line breaks!):

usb-storage.quirks=174c:55aa:u console=serial0,115200 console=tty1 root=PARTUUID=d34db33f-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

Now reboot the Pi. If the Pi fails to boot you can plug the SD card into the computer and go to /boot/cmdline.txt and undo the change we did so you can boot back in with your SD card.

Verifying Quirks

Once you have rebooted after changing cmdline.txt we can verify the quirks have been applied by doing another dmesg | grep usb command:

sudo dmesg | grep usb
 [1.332924] usb 2-1: New USB device found, idVendor=174c, idProduct=55aa, bcdDevice= 1.00
 [1.332957] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
 [1.332983] usb 2-1: Product: ASM105x
 [1.333006] usb 2-1: Manufacturer: ASMT
 [1.333028] usb 2-1: SerialNumber: 123456789B79F
 [1.335967] usb 2-1: UAS is blacklisted for this device, using usb-storage instead
 [1.336071] usb 2-1: UAS is blacklisted for this device, using usb-storage instead
 [1.336103] usb-storage 2-1:1.0: USB Mass Storage device detected
 [1.336479] usb-storage 2-1:1.0: Quirks match for vid 174c pid 55aa: c00000
 [1.336611] scsi host0: usb-storage 2-1:1.0

This time we can see in dmesg that UAS was blacklisted for the device and it has loaded with the usb-storage driver instead. This driver tends to be more compatible with the “problematic adapters” but the performance is usually significantly lower. It’s definitely worth a try though as some adapters do better with the quirks performance-wise. The only way to know for sure is to run a benchmark (see “Verify Drive Performance” section).

Other Resources

For the CM4 (Compute Module 4) check out Raspberry Pi Compute Module 4 and using real PCI-Express/NVMe on the Pi

To find out where to get the 64 bit Raspberry Pi OS beta check out my Where to get 64 bit Raspberry Pi OS article here

If you are looking for storage adapters or the best SSDs to use for Raspberry Pi my Best Storage Adapters / SSDs for the Pi 4 / 400 guide should be able to be of some assistance

Subscribe
Notify of
guest

104 Comments
Inline Feedbacks
View all comments

Michele
Michele
2 months ago

Hi James, please suggest me.
I have an Odroid XU4 working perfectly on eMMC (and/or SD too). Using your method I’m able to move the eMMC content to an SSD Crucial MX300 through a Startech USB312SAT3CB.
And the new system works very well and fast. I did many speed measurements https://pibenchmarks.com/user/Michele/
Thanks a lot for all your suggestions and your tool to measure speed.

But I have an issue: after some time (randomly about 3, 5 days, 7 days) the system hangs. I thought it was an issue related to power, I bought a powered Sabrent hub (Sabrent Hub USB 3.2 Gen 1, the same suggested by you), but no way to solve the systems continues to hang randomly (after 3 days or 5 day…).
The system is used in an intensive mode: 24/7 for ipcamera surveillance. I dont’ have issue related to CPU temperature (about 60 C).
Please suggest me, what could cause the hangs? I thought an incompatibility related to UASP. I tried many OS coming from Hardkernel: from 16.04 to 22.04. No way, system continued to hangs.
Did you hear such or similar issue?
Thanks Michele

Michele
Michele
2 months ago

Hi James,
thanks a lot for your fast and long answer. Unfortunately, I did your same thoughts. I was too short in my previous post.
Let me add:
1. yes, thinking it was a matter related to main power, I bought the original HK 5V/6A power supply (the big one). Directly from HK Korea. πŸ™‚ Since persisting the hangs I bought a 5V/10A Meanwell switching supplier with special cable/barrel for high current. No way, hanging phenomenon continued.
2. after the hangs, I examined the contents of /var/log/syslog. I didn’t find anything strange in the last operation the boards did before hanging. And also in previous ones. I don’t have /var/log/messages.
3. I bought another XU4 board, I bought other 2 SSD by Samsung (0,5 and 1 TB).
4. I tried with 10 A Meanwell power supplier for the Odroid board and the 6A HK power supplier for the Sabrent with a barrel adapter since the Sabrent barrel is more little (thinking the 2,5A original power supplier by Sabrent was not enough).
5. Thinking to temperature I have a dedicated fan with a dedicated power supplier
6. Odroid board power supplier is dedicated
7. Sabrent power supplier is dedicated
8. the suirvellance tool is Zoneminder streaming in LAN. The streaming is captured by the odroid ethernet connection
9. eache camera is powered by its indipendent power supplier.
10. I tried with differerent operative system for the board
11. I tried with different USB2SATA adapters

In short, I became crazy and spent more money than the board’s cost… πŸ™‚
I wrote in the Odroid forum too…
The only I bought the 2 odroid boards from the same vendor…belonging to a on perfect lot or probably it’s a matter of power and Hardkernel knows….
You was the last temptative… πŸ™‚ thinking it was a knew issue of the XU4 board. And probably it is a matter of power..
It means I will continue to use the board with the eMMC.
thanks a lot Michele

Michele
Michele
2 months ago

Hi James,

thanks a lot for everything. Probably there is something not working perfectly when related to USB to SATA.
The hang issue is only when rootfs is on SSD. With rootfs on eMMC (or on SD for the second odroid board) and SSD used as external disk it seems there is no issue.
In this case the intensive read/write operations are on eMMC (or on SD) and there are no hangs.
anyway thanks James

Michele
Michele
2 months ago

Hi James, again thanks for the explanation. I’m not an expert and your confirmation is important. I was becoming crazy trying to solve! πŸ™‚
I’m sorry I wrote in the Odroid xu4 forum claiming for the issue. And I didn’t receive a clear explanation. And there are many experts there, from hardkernel or strictly linked to HK. They know….
Anyway James you already answered to my next question: what’s next board to buy? I was thinking exactly to a board using directly an M.2 slot. I saw Odroid M1, but a little bit disappointed by their reticent approach on the matter we discussed.
I saw too Radxa Rock 5B, but I had a bad experience in the past in terms of poor support by Radxa. I bought the first Radxa Rock board, not comparable to the power of XU4 and with a shameful support. Their OSs were very poor and full of bugs.
So, the Orange Pi 5 and the Radxa Rock 5B are your suggestions.
thanks a lot. I will read the links you suggested.
Michele

Michele
Michele
1 month ago

Hi James, thanks for all the info you gave me. Definitively the new boards will be an Orange PI 5. I know and like Armbian used for XU4 too.
I will come back after its usage.
Thanks a lot Michele

Michele
Michele
1 month ago

Hi James,
just bought on Ali. Cheap price: 70 eur with shipment in Europe included. To start: bought an Orange Pi 5 with 8 GB RAM. It should arrive on 26th April. I think I have now to buy an M.2 NVMe drive.
Excuse if I take advantage of you, do you have suggestion for it? I read about compatibility concern.

I’m curios to compare Orange PI 5 performances vs Odroid XU4: currently I’m using the XU4 for my ipcam surveillance tool (with 14 cameras).
The tool is famous, named Zoneminder. Not so easy to configure, but free of charge. And very fast under Ubuntu.

Currently I have 2 bottlenecks:

1. system crash, as we wrote, each 5 days if rootfs is on SSD through USB2SATA (on the other side when rootfs is on SSD the system is very fast)
2. memory issue: since only 2 GB on XU4, I have to go with low camera resolution at 640×480

So, I’m curious to compare performances, but I think big improvement with an NVMe drive and 8 GB on the board.
I will let you know.
Good Easter and thanks for everything.

Michele
Michele
1 month ago

Hi James,

So I understand any NVMe size is ok: 2230, 2242 and 2280 too. That’s good because I saw 2280 usually are cheaper than 2230 and 2242.

About compatibility with 2280, on this link I found
“there is an M.2 Key-M slot on the bottom. This slot is, however, mounted in such a way that only 2230 and 2242 NVMe SSDs fit. ”
and
“Additionally, it’s worth noting that such SSDs use the screw as a physical grounding point. It’s not required, but it’s good practice (multiple grounding pins are exposed in the M.2 slot itself) – nigh impossible to do without proper threads on-board.”

Thanks for the benchmark of your great tool. Michele in XU4 top scores is me!! πŸ˜‰ with my XU4 with memory overclocked at 933!

James, 2 questions:

1. incredible 32,551 with a Samsung 860 EVO (it is not an NMVe drive!) and xu4…do you confirm it is not a mistake?
2. for Orange PI 5 it seems Western Digital SN530 is very good. I found it on Amazon at a good price in 2280 form. If it is not a mistake and you confirm 2280 is ok for orange pi 5, I will buy it: only 34 eur.

Again James thanks for your support. I’m convinced that Orange PI 5 is really the best balance between performance and price…great suggestion!

Michele
Michele
1 month ago

Crystal clear! Thanks a lot, James, for all your sugegstion.

Michele
Michele
1 month ago
Reply to  Michele

Please. James. delete the link on Aliexpress I posted. I discovered it’s a fraud. That’s the reason of a so cheap price.
So to avoid other people will use it.
Thanks and my excuses.

Michele
Michele
1 month ago

Hi James, little update. Not technical but let me say “commercial”, interesting for other customers.
I won the dispute on Aliexpress and received the chargeback. Anyway I was the stupid guy since bought from a vendor with no feedback.
So tried again with a more serious vendor on Ali πŸ™‚ the price should be right ..105 eur (board) + 11 eur (shipping), a PI 5 8GB.
ETA is 19 mag 2023. Curios to check read/write performance (I bought too a 256 NVMe) with your fantastic tool. I’ll let you know.
Michele

Dusan Dakic
Dusan Dakic
1 month ago

Hey James – Dusan from Magazin Mehatronika here, one of the lead technical editors of the publication. Thanks for pointing out that our little remark on the M.2 drive might be misleading – it really does sound like it cannot fit at all, which is not the case! We’ve edited this mistake out. Michelle, what James said here is fully true – 2280 drives can fit technically work but are quite easy to yank out and hard to secure to the board.

Cheers!

Michele
Michele
10 days ago

Hi guys!
Just reading now about the 2280 misleading. It is my first SSD of such format. Now, having in the hand the board and the SSD it’s clear: I understand and confirm: 2280 drives too can fit and technically work. The only (aesthetic) problem is that the sdd comes out of the board. Not an issue.
Anyway, guys, PI 5 arrived and fully working! James, that’s the benchmark I reached with my SK Hynix BC511 https://pibenchmarks.com/benchmark/70431/
Great result compared with XU4! Thanks, James, for your suggestion. Great balance between performance and cost!
I will come back after further tests, in particular if the system randomly hangs (as per XU4)!
thanks Michele

Michele
Michele
9 days ago
Reply to  Michele

Hi James,
installed on the Orangepi the same setup I had on the Odroid. The new board is faster and more reactive. CPUs temperature is low (<55C without fan). Since RAM is 8GB there is no saturation of memory usage: 2.9G/7.1G.
Your benchmark test is very good. That's the latest . HTOP shows a lower load on CPUs….and the most important: no hangs till now.
Currently no old fashion SSD (thru USB3) is connected. After my preliminary tests (2-3 weeks) I will mount and external old fashion SSD (thru USB3).
You gave me a strong suggestion!!!
Thanks Michele

Frederico
Frederico
2 months ago

Hi James,

I wanted to report that the StarTech USB312SATA3CB purchased from Amazon in February 2023 is not accepting the firmware update linked on StarTech’s website.

When firmware.zip is extracted and the XY_135xFWUpg2030_150708B10103_V3.exe tool is run on Windows 10, a pop-up appears that reads:

Error: Configuration mismatch.

When OK is clicked, another pop-up appears with:

Asmedia USB Mass Storage Firmware Upgrade Tool: vUpdateFirmware Failed.

lsusb reports the adapter with a StarTech vendor ID, versus the Asmedia ID that is shown on this page:

Bus 001 Device 007: ID 14b0:0207 StarTech.com Ltd

Adding the verbose option to lsusb shows:

Product: ASMT105x
Manufacturer: ASMT

The file date for the upgrade tool is from 2016, so I wonder if either the correct firmware is already present, or the Asmedia controller model was changed in newer StarTech units.

I’m trying to find a way to retrieve the unit’s current firmware version number, or if TRIM is already supported.

On a related note, do you know why both the ASM1053E and ASM1153 models appear in your lsusb output?

Thanks.

Frederico
Frederico
2 months ago
Reply to  Frederico

The datasheet (document properties show it was updated in December 2022 for what it’s worth), say the chipset ID is ASM235CM.

Frederico
Frederico
2 months ago

Hi James,

Confirmed that it is not the 3.0 model, but it appears Amazon dropped the price a bit on the 3.1 model:

https://imgur.com/a/hlm4hMB

– Frederico

Frederico
Frederico
2 months ago

Hi James,

The certifications are indeed on the back:

https://imgur.com/a/qBLesnu

I haven’t tried using it much yet, because I realized that my spare Pi is reporting an under voltage message, and I’m trying to find a different power supply.

All I did is check lsusb and ran “lsblk -D” as the internet suggested that would report TRIM compatibility (the command did not report compatibility, but I’m also not sure if I trust what the internet suggested).

To play devil’s advocate, do we know what happens when an update is attempted on an up to date adapter? This may be normal.

Or more than likely, Asmedia’s tool checks for their Vendor ID and it aborted when it read StarTech’s.

If you recall, the verbose lsusb output reported ASMT105x, and in this blog post, part of your lsusb reported ASM1053E, which could fit that pattern (ignoring the “T”).

Do you know how to check the current firmware by any chance?

I’ll write to StarTech in the meantime.

Frederico
Frederico
2 months ago

Hi James,

I submitted a few questions to StarTech using their website form (although frustratingly, I haven’t gotten a confirmation email acknowledging it), but I wanted to report that I think the trim operation worked:

user@host:~ $ sudo fstrim -v /media
/media: 223.5 GiB (239951990784 bytes) trimmed

Thanks for crafting the udev rule!

-Frederico

Frederico
Frederico
2 months ago

No word yet but this makes me nervous:

https://github.com/raspberrypi/linux/issues/5076

It reports an issue with ASM235CM controllers, which StarTech notes on their datasheet. Interestingly in the lsusb output on that ticket, the same USB product ID of the 1153E is used.

So that suggests that the firmware update failed because the VID/PID didn’t match.

Frederico
Frederico
2 months ago

Hi James,

I interpreted that GitHub issue page to mean that Asmedia has further overloaded the ASM1053E/ASM1153E 174c:55aa IDs to include the ASM235CM chipset. If that’s true, that would be unfortunate and benchmarks won’t always reveal which chipset is actually in use (unless, limer in StarTech’s case, the whole VID/PID is rebranded by the manufacturer of the overall adapter).

Good idea checking the benchmarks for StarTech’s IDs. Builds confidence πŸ™‚

-Frederico

Frederico
Frederico
2 months ago

James,

No response needed here, but I wanted to close the loop — StarTech responded like you suspected.

They said that the chipset was updated in 2021 from (according to them) “ASM1351” to ASM235CM, and has the latest firmware available from the factory.

I don’t know if 1351 is a typo for 1153, or if it’s just another Asmedia chipset that also uses the same PID like 1053.

They claim that the firmware update wasn’t accepted because it’s already updated. I’m sure the firmware is fine, but I think it’s more likely that it wasn’t accepted because it has StarTech VID/PIDs and not Asmedia’s. Unless someone wants to potentially sacrifice / try to update an already-updated pre-2021 unit, I don’t think we’ll know πŸ™‚

Thanks again,
– Frederico

Daniel
Daniel
4 months ago

A caveat with quirks is that it disables UAS (duh), which in turn disables TRIM on some adapters (JMicron 568 and 578 chips come to mind, that’s the ones I’ve tested, and they support translation from SCSI UNMAP into ATA TRIM). If you’re booting with a SSD and you’re doing something write-heavy, disabling UAS (and TRIM) will make cheap SSDs slower over time.

Rafael
Rafael
6 months ago

Hi James, do you know if the firmware of other versions of StarTech works on USB3S2SAT3CB? I can’t find it under the 3.0 page.

Jim
Jim
9 months ago

Hi there i managed to destroy my case with asm235cm
by updating with the wrong firmware
And windows dows not recognize it/see it anymore noe any asmedia flasher tool
Is there a way to recover it???

Jim
Jim
9 months ago

I can see the hdd case from linux/raspberry pi
Do you know how to install the asm firmware from there???

Jim
Jim
9 months ago

Its pointless it sees the asm controller but thats alll i cannot tlash it,qnyway i will try to return it its still on waranty

Irrelevant now

This is my zero1 as a hotspot.

Jim
Jim
9 months ago

Have you been experimenting with zero2??
People is buying them like crazy they are sold out everywhere,

Jim
Jim
9 months ago

They put 2.4ghz wifi probably to lower the cost,or its just the miniature of the Rpi3B and not the 3B+, i never use wifi anyway the lan cable is faster for slow connections,the biggest thing in my opinion is the 512ram only.
It saves space thought compared to the Rpi3.
Odroid mania n2 is the king it can play easily gamecube games,you must have a room full of sbc”s πŸ™‚

I have orange pi one,cubieboard 2,mk802,mk808 pro,Rpi0,Rpi0-2,Rpi1,2,3,4 Odroid c4. Thats all

Jim
Jim
9 months ago
Reply to  Jim

You need to put a review of windows 10 and 11 on the raspberry pi4

And also a review of box86,wine i managed to run a bunch of old window games in full speed like age of empires 2,sudden strike etc

What work are you doing?

Im it technician

Jim
Jim
9 months ago

You doing the best thing if i could i would do the same,last computer i fix was 3 years ago,there is no future in greece for computer technicians,.im using berryboot in general if you know it,but last update was over a year ago looks like the project its abandoned the creator is not responding etc.,and i cant compile/build a new version on my own since my laptop broke down months ago.cant build it on raspi thought
You can review berryboot for a change maybe is going to wake up the creator you never know

Jim
Jim
9 months ago

Yeah the creator is doing pi-imager now i dont blame him probably is taking a lot of money from raspberry foundation for it.so not time for non profit projects maybe.
Berryboot has a lot of potential.

Jim
Jim
9 months ago

Is the price so high now,i took it when it first came out 17euro, scalpers season:p

Jim
Jim
9 months ago

Do you happen to know any of the specs of the upcoming Raspberry pi 5??

Jim
Jim
9 months ago

Can you use your influence so it can have at least a sata 3 port and an sdr104 memory card controller or faster??

That two is a must have if you agree!! πŸ™‚

Thanks

Jim
Jim
9 months ago
Reply to  Jim

I saw your review of xu4q nice
The only downside for me is the emmc,its expensive,slow,hard to find and wears out faster than an ssd, let’s hope Rpi5 wont have it,a normal ssd can go 3-4 times this speed cost less and last longer. literally i don’t understand why emmc’s are still been used on some sbc’s.
M2/Sata slots are way better.

Cubieboard had native sata 2 back in 2012
But didn’t have software support at all.

Jim
Jim
9 months ago

I think the Petitboot exist in xu4,they remove it in xu4q?

There is a little piece of software that helps a lot with sd card/emmc/ssd/flash drive wear check it out

I use it always even with hdds

M2 yes they are cheap and fast although with sata you are limited to 600mb/sec but is it possible for an arm board to get this speeds anyway?

I got max 350mb/sec with my patriot p210 on the raspi.

If they are pros they will put m2/sata and no more search for the best usb case/controller and buying and testing all the time,etc.

Jim
Jim
9 months ago

I will test this days my 7200rpm 2.5″ hdd,i still believe they go fast enough to challenge ssd’s at least on arm platforms,and by saying fast i dont mean the max speed but the access time,in laptops you cannot see it since they have installed the OS on them that slowdown their perfomance significant,in arm the os is very light compared to x86-x64 cpu’s

To see the real difference you need a non uasp controller,uasp might work better with ssds but there is delay that you cannot really see it due to the type of memory chips they use with hdds you can see it coz they go slow,or im just wrong.

Do you have any retro consoles?

Goodnight james

Jim
Jim
9 months ago
Reply to  Jim

Anyone who uses mechanical hdd in the Raspberry Pi should know that the drive/s perform at full speed with a non uasp controller/case by using an uasp case and disabling uasp with quirks it has no effect,as the drive will go terrible slow,you need an old usb 3.0 case with no uasp support, hard to find this days thought,the drive perfoms similar to ssd believe it or not,you just have to try and see for your self.

Arthur Gribensk
Arthur Gribensk
1 year ago

I’m not sure if it’s because I’m using the new Raspberry Pi OS but I just started using the Sabrent EC-SSHD again and am getting great performance. I have it automatically mount under /mnt and using hdparm with a Crucial SSD, I’m getting 998.76 mb/sec cached reads and 267.36 mb/sec buffered disc reads.

rbhr
rbhr
1 year ago

Thanks for all your efforts. I can confirm:

Works great:
* Samsung SSD 980 PRO 250G NVMe in UGREEN CM238 Realtek RTL9210
* Kingston KC3000 2TB NVMe in UGREEN CM238 Realtek RTL9210

Does not work even with Quirks:
* Simplecom SE509 NVMe M.2 SSD to USB 3.2 Gen 2 Type C Enclosure JMicron

rbhr
rbhr
1 year ago

The Kingston happened when I did a “sort by price high to low” – a quick way to get to the Samsung but then I checked the specs and wow nice piece of kit. Durability of 1.6TBW.