To this day it can still be treacherous to buy a storage adapter for your Raspberry Pi 4. There are many that will not work properly and perform very poorly.
I’ve covered which adapters work and don’t work in my Native USB Booting Guide as well as my old “workaround” SD + SSD method guide and over the years people have submitted hundreds of comments about which adapters do and don’t work.
From everything we’ve learned together in the comments and adapters I personally own/use I wanted to compile this information into a new “Best Storage Adapters for Raspberry Pi 4” list. Let’s get started!
How to choose a Pi SSD storage solution
There are a few different considerations and tradeoffs you need to weigh when you’re choosing a storage adapter/enclosure as well as the drive itself. The main considerations are:
- Specific project requirements
- Power
- Performance
- Budget
The easiest place to start is with your specific project requirements. Is this Pi going to be somewhere where you are okay with having an extra adapter/enclosure and SSD laying around? If you’re going to be using the Pi in something like a drone/vehicle then you may want to go with a USB thumbdrive style ultracompact SSD that plugs directly into a USB port and has no wires or adapters/enclosures. There are also lots of cases available specifically for the Pi that add an additional storage slot (such as M.2 SATA, the older m-SATA style, etc.) to the Pi that may work better with a tightly integrated build.
How much power is going to be available? Is your Pi going to be running off a battery where you want to use as little energy as possible? Do you have AC outlets around? Are you willing to add a powered USB hub to your setup? If your Pi is going to be sitting in a corner in the basement / a closet / some place like that then you can plan to have a powered USB hub and plentiful reliable power around. The lowest power options are going to be 2.5″ SATA drives WITHOUT an enclosure (using just an adapter instead with the drive laying in the open). I have never over years of usage used a powered USB hub with a 2.5″ SATA adapter but many enclosures won’t even boot without one.
What level of performance do you require? If your Pi is going to be running a server or hosting a database then you need a drive that has high random I/O performance as well as large throughput. Performance has a cost though both in power and budget. The highest performance NVMe drives are the most expensive and the NVMe enclosures are the most power hungry class of storage adapters and almost universally require a powered USB hub to be integrated into your setup but we’ll cover this more later in the “Power Requirements” section.
And finally what type of budget do you have? If you are looking to save money you may be wanting to reuse an old SSD or get one used for very cheap. NVMe is the most expensive and 2.5″ SATA / mSATA SSDs are the cheaper options. Places like eBay can be a great source of very cheap drives as well.
The bottom line is choose the type of solution that meets your project’s needs and your budget!
Top Performing Drives
M.2 NVME
This is the top performing (and most expensive) drive class! They require more power than other types of drives and the NVMe enclosures often bump the requirements up to potentially requiring a powered USB hub to boot (especially with an enclosure). See the “Power Requirements” section below for more information.
The Samsung 980 Pro (NVMe) is a professional grade SSD and one of the fastest in the world. The Samsung NVMe drives have been at the top of this category for a long time and are well trusted for both their performance and reliability / long life.
Links: AliExpress*, 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*
The Samsung 970 EVO Plus is a fantastic drive and has fallen in price substantially. It’s widely available around the world. The smaller capacities (such as the 250GB version) of this drive are perfect for the Pi! This is the top performance option without going into the “Pro” series of the lineup which are much more expensive.
Links: AliExpress*, 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*
The KingSpec 3D NAND M.2 NVMe drive is another very affordable choice that is widely available. It performs well and works great with the Pi!
Links: AliExpress*, Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.co.uk*, Amazon.de*, Amazon.es*, Amazon.nl*, Amazon.pl*, Amazon.se*, Amazon.sg*
M.2 SATA
M.2 SATA does not have the transfer rates that M.2 NVMe does but they are quite a bit cheaper and still a fantastic choice for the Pi.
The Kingston A400M is a cheap and reliable M.2 SATA SSD that has over 170 benchmarks on pibenchmarks.com. It’s extremely cheap and may even be cheaper than the recommended 2.5″ SATA drives in some countries!
Links: AliExpress*, 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*
The Western Digital Green M.2 SATA drive is the #26th most popular storage device overall on pibenchmarks.com so it definitely works well and is very affordable. This is another great budget option that can often come in at a lower cost (depending on availability, country and other market factors) than 2.5″ SATA SSDs often do while having a much lower profile!
Links: AliExpress*, Amazon.com*, Amazon.ca*, Amazon.com.*a*u*, Amazon.co.jp*, Amazon.co.uk*, Amazon.de*, Amazon.es*, Amazon.fr*, Amazon.it*, Amazon.nl*, Amazon.pl*, Amazon.se*, Amazon.sg*
2.5″ SATA
2.5″ SATA drives are limited by the transfer speed of the SATA interface like the M.2 SATA drives. On the Raspberry Pi this is not as important as on desktop. This is usually the cheapest option and performance is still fantastic!
The Kingston A400 has been a great drive to use with the Pi for years. It’s reliable, widely available around the world, has low power requirements and performs very well. It’s also very affordable. This drive has been benchmarked over 1000 times at pibenchmarks.com and is the #1 most popular SSD among the Pi community!
Links: AliExpress*, 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*
The Crucial BX500 is another great choice for a drive to use with the Pi. It’s the 2nd most popular SSD benchmarked with over 840 benchmarks submitted. Low power requirements and widely available!
Links: Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.co.jp*, Amazon.co.uk*, Amazon.de*, Amazon.es*, Amazon.fr*, Amazon.nl*, Amazon.pl*, Amazon.se*, Amazon.sg*
The Western Digital Green 2.5″ SATA SSD is another option to investigate. Depending on your country and other market factors this may come in as the best deal. It’s a solid performer and commonly shows up on the storage benchmark.
Links: AliExpress*, 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*
The XrayDisk SSD is popular worldwide and available relatively inexpensively from AliExpress
Links: AliExpress*
Portable
Portable SSDs are ones that are designed to be used through USB and aren’t meant to be installed internally. The nice thing about these is they do not require a storage adapter. They are also extremely fast. The ones recommended here will beat 2.5″ SATA drives on the performance benchmarks since internally they are usually M.2 SSDs inside a fancy outer shell. They’re usually more expensive than internal drives but not quite as expensive as the top performing internal NVMe drives. Tends to be cleaner than a adapter/enclosure setup but not as clean as the ultracompact setup.
The Samsung T5 Portable is one of the most popular USB SSDs for the Raspberry Pi with over 350 unique benchmarks. It’s also one of the fastest with an average score of over 8300 points! No storage adapter required for this one, it is a USB based drive and will plug right in.
Links: AliExpress*, 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*
The SanDisk Extreme Portable is a very small portable SSD that can easily be put on a keychain or a loop with the built in notch. It’s also very fast with an average score of over 8,000. The drive has been tested over 147 times making it one of the more popular ones to use with the Raspberry Pi.
Links: AliExpress*, 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*
Ultra Compact
The cleanest possible setup option. The drive will only plug into your USB port and stay there taking up no extra footprint and adding no extra cables. These recommendations are both actually faster than 2.5″ SATA drives (internally they are M.2 NVMe drives and they perform at that level). You pay a premium for this option vs. something like a 2.5″ SATA setup but lower capacities are much more affordable.
The Orico GV100 is a portable NVMe usb-stick style drive. It’s extremely fast due to actually being a true NVMe drive in a very compact form. This is an excellent choice if you are building a setup that has very limited space or having a dangling adapter/enclosure would be problematic.
Links: AliExpress*, Amazon.ca*, Amazon.com*, Amazon.com.au*, Amazon.co.jp*, Amazon.co.uk*, Amazon.de*, Amazon.fr*, Amazon.it*, Amazon.nl*, Amazon.se*, Amazon.sg*
The SanDisk Extreme Pro USB SSD is a true solid state drive. This is different than a typical “flash drive” which uses extremely cheap memory and has very low random I/O performance/throughput compared to a real solid state drive. I’ve used both the USB 3.1 and USB 3.2 variants with the Pi successfully and they benchmark very well!
Links: AliExpress*, 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*
Recommended Adapters / Enclosures
M.2 NVMe
The ICY BOX is basically a giant heatsink that you mount a high performance M.2 NVMe drive inside of. This enclosure is really fast but requires a powered USB hub. Not even the 3.5A adapter can reliably power it! The enclosure works well and will physically feel warm to the touch as it is pulling the heat off your NVMe drive!
Links: Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.co.uk*, Amazon.de*, Amazon.es*, Amazon.fr*, Amazon.it*, Amazon.nl*, Amazon.pl*, Amazon.se*, Amazon.sg*
If you really want to take things over the top the ASUS Rog Strix M.2 NVMe enclosure uses the latest USB 3.2 Gen2 specification, is RGB capable and works with the Pi! Unsurprisingly, adding the extra lighting does take extra power! A powered USB hub is also required for this enclosure. More widely available than the ICY BOX but tends to be on the expensive side.
Links: Amazon.com*, AliExpress*, 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*
M.2 SATA
The UGREEN M+B enclosure is a great enclosure for the Pi for M.2 SATA 2280 NGFF drives. It supports both B-key and M-key drives. Does not support newer NVMe drives. As with other types of enclosures it requires more power than other options!
Links: AliExpress*, 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*
The Argon ONE M.2 is a M.2 SATA Pi 4 case / storage solution. With the case and M.2 SATA expansion board you can completely enclosure your Pi 4 and have a built in M.2 slot! The M.2 SATA board is sometimes sold separately from the case itself and can be used as well. Does not support NVMe, this is for SATA M.2 drives only!
Links: Amazon.com*, AliExpress*, 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*
2.5″ SATA
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*
m-SATA
mSATA adapters are getting less common but they are still incredibly useful. Lots of old laptops that came with SSDs have this older style from before the M.2 style slot existed and took over. Often these drives are still very fast and are available for very cheap since they use an obsolete connector that no longer comes on new motherboards. The VL716 isn’t a brand but is instead the name of the chipset that lots of these adapters use. This chipset works great with the Pi!
The VL716 mSATA enclosure lets you connect micro SATA drives to the Pi. These drives are an older type of SSD (usually seen in laptops) predating the M.2 slot but are still widely available and perform extremely well!
Links: AliExpress*, Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.co.jp*, Amazon.co.uk*, Amazon.de*, Amazon.es*, Amazon.fr*, Amazon.it*, Amazon.nl*, Amazon.se*, Amazon.sg*
Power Requirements
Most types of adapters can be powered by the Pi itself. One notable exception is NVMe enclosures. Throughout the years we have had hundreds of comments from people who had no trouble powering 2.5″ SATA enclosures but couldn’t get a NVMe one to work at all without a powered USB hub.
Very large older 3.5″ SATA drives are known to require more power than the Pi can provide as well as some types of very high performance models that were designed to burn more power to get extra performance gains.
For solid state storage older models of solid state drives (SSDs) are also known to draw more power than their newer counterparts. If you have a drive that you think may fall into this category then definitely be on the lookout for power related issues and extra cautious about your power setup. High end “extreme” performance models also tend to draw more power (Samsung 970 NVMe drives* are some of the fastest in the world but also pretty power hungry for the Pi).
Insufficient Power Symptoms
Symptoms of a lack of power to the drive can include the system only booting sometimes (or not at all) or working for a while and then locking up. Just because the drive boots does not mean it is getting enough power. Some commenters on previous articles have described this as working fine until there was a sudden spike in CPU usage while they tried to do several things at once (high CPU, accessing storage, activating various hardware all at once) and then they would get a lockup/crash.
This is because the Pi is teetering on the edge of not having enough power and that spike caused it to drop enough where the drive actually lost power (likely only for tiny fractions of a second). This is enough instability to easily cause a crash and worse if it happened to be in the middle of writing something important! Usually nothing will happen other than you’ll have to restart the Pi but because of the risk of data loss and eventually corrupting files. That being said, if you’re particularly unlucky you will have to fsck the drive or potentially even reimage it if fsck is unable to repair the damage!
The best answer is to test for stability. Do this by stressing out the Pi and make sure you are doing activities that stress the CPU and storage at the same time like browsing the web, etc. and if you can do that for a few hours/days without a lockup/crash then you have a stable power setup!
Powered USB Hub Solution
For NVMe enclosures and power hungry drives I personally use this Sabrent powered USB hub and have been recommending it here on the blog for a long time:
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
If this hub isn’t an option for you and you don’t have one already you can try with it then look in the reviews for people saying that it is working with Raspberry Pi. Some powered USB hubs will not play nice with the Pi so before buying one definitely check reviews and do some careful research about what to expect with the Raspberry Pi!
Oversized Power Adapter Solution
This solution will work for setups that are right on the border of having enough and not having enough power. An example would be if you can get a stable boot but are getting occasional lockups/freezes when the power dips just below the threshold it needs.
If you are using a powerful NVMe drive/enclosure combo like the ICY BOX with a high performance Samsung NVMe drive even with the extra 500 mA it will still not even boot. I have had these oversized adapters and they are great but for a very powerful drive/adapter combination you are going to need more than 500 mA.
It’s a lot less extra wires and one less AC plug though if you are right on the border and just need a little bit more. It will depend on your individual drive/adapter combo whether it’s enough or you will have to go full powered USB hub!
The CanaKit 3.5A adapter has an extra half an amp (500 mA) of capacity to give some breathing room to your accessories. This is bigger than the official Pi power supply which provides 3.0A.
Links: Amazon.com*, Amazon.ca*, Amazon.com.au*, Amazon.sg*
Look for a USB-C power supply rated to supply around 3.5A. 3.0A or lower won’t do much good as that is almost certainly what you already are using. You can use a higher one (at your own risk). The largest one I’ve ever used is my Dell laptop’s 30W USB-C power adapter. It’s probably not a good idea to go too much bigger than this or to even use one this big over the long term (I didn’t, just for occasional testing and as a emergency backup) but USB-C does have some specification improvements related to power management that seem to provide some flexibility here.
Power Limits
The Pi can only pass through a limited amount of extra power. On the Pi 4 this is up to 1.2A of extra power for peripherals (combined) on top of the board’s 3.0A power rating. This is much more than the Pi 2 and some other previous models could do which was only around 0.5A. This also means that getting a power adapter bigger than about 4.2A of rated current is pointless because the Pi won’t allow any more power to flow through to the board to the peripherals through USB anyway even if it’s available.
I’m oversimplifying a little bit to illustrate the point but if you want the full technical details they are available here in the Raspberry Pi USB documentation. The important takeaway is that going much above 3.5-4.0A or so will not actually provide any more power to the Pi because of these limits. If you’ve hit this ceiling and it still isn’t enough you need to go powered USB hub.
I’ve also used ones that charge cell phones to power Pis before and these ones are the most likely to fall into a range close to what the Pi uses. Most of the ones I had around the house for phones were 2.5A (just barely not enough) or 3.0A so it was enough for a backup spare but not enough to provide extra power. Nevertheless, it’s definitely worth it to check what you already have around and see if there are USB-C chargers around to test with!
Note that a powered USB hub essentially bypasses these limits because the power for your peripherals such as your USB storage will come from the AC adapter connection to the powered USB hub instead of the Pi having to provide that power.
Powered USB Hub Troubleshooting
Most hubs including the Sabrent one above can feed back power into the Pi which can cause it to not boot when the power is connected. The reason for this is that the Pi is detecting power and is trying to power on using that source but the current provided isn’t enough for the Pi to actually boot.
The solution to this is to remove the USB hub’s connection from your Pi momentarily and then connect the power. Plug your USB hub back in quickly after reconnecting the Pi’s power (if you have native USB booting set up) and unless you really fumble with reconnecting it you will have it plugged in well before it tries to boot from the SSD!
If this trick doesn’t work then unfortunately you may have a powered USB hub that is not going to work with the Pi. It’s worth checking to see if there are any firmware updates available for your USB hub before you give up on it as some readers have let me know in the comments of previous articles that they were able to get some hubs working after a firmware upgrade!
Full Storage Adapters Compatibility List
These lists are compiled from my two USB booting posts here and here.
Known Working Adapters
This is a compiled list of known working adapters built by myself from adapters I’ve purchased and commenters from ones they have purchased in this article and my newer guide that utilizes the new Raspberry Pi 4’s native bootloader for USB booting.
StarTech 2.5″ SATA to USB 3.1 Adapter* | 2.5″ SATA to USB 3.1 | Verified working in comments (thanks Fredrick) |
StarTech 2.5″ SATA to USB 3.0 Adapter* | 2.5″ SATA to USB 3.0 | Verified working great by myself and others on Pi 4 |
Inateck FE2004 2.5″ SATA to USB 3.0 Hard Drive Enclosure* | 2.5″ SATA to USB 3.0 | Mirco reports that this enclosure is working but trim is not supported |
Samsung 2.5″ SATA to USB 850 EVO Kit /w Adapter* (Alternate amazon.de link*) | 2.5″ SATA to USB 3.0 Kit | This is a kit that comes with a drive and adapter. Rene confirms the adapter works including with non-Samsung drives. |
CSL 2.5″ SATA to USB 3.0 Adapter* | 2.5″ SATA to USB 3.0 | The CSL SL adapter is confirmed to be working by Krikitt in the comments. Available in Europe. Not available in US. |
UGREEN 2.5″ SATA to USB-C 3.1 Enclosure Drive Caddy* | 2.5″ SATA to USB-C 3.1 | Confirmed to be working by CAProjects in the comments. Available in both Europe and US |
UGREEN 2.5″ SATA to USB-C 3.1 “Protect What You Love” Case* (AliExpress Listing* – Make sure to select USB-C 3.1) | 2.5″ SATA to USB-C 3.1 | Reported working by Michal in the comments, thanks! |
UGREEN 2.5″ to USB 3.0 “SATA USB Converter” Adapter* (AliExpress Listing*) | 2.5″ SATA to USB 3.0 | Also reported by Michal as working in the comments, thanks again! |
UGREEN 2.5″ SATA to USB 3.0 Adapter Cable with UASP Converter* | 2.5″ SATA to USB 3.0 | This adapter is reported to be working by Mirco in the comments |
SABRENT 2.5″ SATA to USB-C 3.1 Type A Adapter* | 2.5″ SATA to USB-C 3.1 Type A | The new USB-C 3.1 Type A version of the Sabrent adapter is reported as working in the comments by UEF. DO NOT get the USB 3.0 version as that one is below on the naughty list and won’t work! |
SABRENT 2.5″ SATA to USB 3.0 Dual Bay Docking Station* | 2.5″ SATA to USB 3.0 | One of very few Sabrent adapters/enclosures to work. Reported working well by William Grey in the comments. Has two bays! |
AliExpress Generic 2.5″ SATA to USB 3.0 3 colors Hard Disk Case* | 2.5″ SATA to USB 3.0 | Reported as working with UASP support by pierro78 in the comments |
Orico 2.5″ 2139C3-G2 2.5 inch USB 3.1 Gen 2 10Gbps Transparent Enclosure* | 2.5″ SATA to USB 3.1 Gen 2 10Gbps | Make absolutely sure it’s the 10Gbps USB 3.1 Gen 2 version. There is another one that looks identical that is a USB 3.1 Gen 2 6Gbps that will not work. Confirmed working by RRT in the comments. |
ASUS ROG STRIX Arion Aluminum Alloy M.2 NVMe SSD External Portable Enclosure Case Adapter* – (AliExpress Listing*) | M.2 NVMe (B+M Key) to USB/USB-C 3.2 Gen 2 | It’s bold. It’s beautiful. It’s also confirmed working by TADRACKET and Steve B. However, be warned, it takes a *lot* of power! Steve B. reports that even with the oversized 3.5A CanaKit adapter* it does not work. If you have the standard 3.0 adapter you can be practically certain it won’t power this enclosure. Does work with a powered USB hub*. |
ICY BOX M.2 NVMe (M Key) to USB-C 3.1 Gen 2 Enclosure* (Alternate amazon.de listing*) | M.2 NVMe (B+M Key) to USB-C 3.1 Gen 2 | Returning legendary commentary Frank Meyer reports: Does not work with a 3.0A power adapter (also reported by TTE). It’s not enough power for this enclosure. Does work with a powered USB hub*. |
TDBT M.2 NVMe (B+M Key) to USB-C 3.1 Gen 2 Enclosure* | M.2 NVMe (B+M Key) to USB-C 3.1 Gen 2 | Confirmed to be working well by WorkHard in the comments |
AliExpress Generic M.2 NVMe (B+M Key) to USB 3.1 “M2 SSD Case NVME Enclosure”* | M.2 NVMe (B+M Key) to USB 3.1 Type A | Confirmed working by Jens Haase, thanks Jen! |
SSK Aluminum M.2 NVMe (M Key) to USB 3.1 Gen 2 SSD Enclosure* | M.2 NVMe (M Key) to USB 3.1 Gen 2 | Brian L reports this is working well with beta firmware upgrades, but that it did not work at all without them! |
ORICO M.2 NVMe SSD Enclosure, USB 3.1 Gen 2 (10 Gbps)* (AliExpress Listing*) | M.2 NVME to USB 3.1 Gen 2 | M.Yusuf has given the first ever report of a working Orico adapter! Make sure it’s the USB 3.1 Gen 2 version that says “Support UASP for NVMe SSD”. This is the way. |
DELOCK 42570 M.2 SATA (B Key) to USB Micro-B 3.1 Gen 2 SSD Enclosure* | M.2 SATA (B Key) to USB Micro-B 3.1 Gen 2 | Andreas Franek reports that the enclosure works with a 3.0A power adapter (gets a little warm) |
Shinestar M.2 NVMe (M Key) to USB 3.0 Adapter* | M.2 NVMe (M Key) to USB 3.0 | This is the adapter I’m using in the picture at the top of the article. It is for NVMe M.2 drives only and is getting hard to find |
UGREEN M.2 NVMe (B+M Key to USB-C 3.1 Gen 2 SSD Enclosure* | M.2 NVMe (B+M Key) to USB-C 3.1 Gen 2 | Confirmed working in comments by Chad D |
UGREEN M.2 SATA (B+M Key) to USB 3.1 Enclosure* | M.2 SATA (B+M Key) to USB 3.1 Enclosure | Reported as working well in the comments by John H. Reinhardt with a ASM1051E chipset |
QNINE M.2 SATA (B Key) to USB 3.0 Enclosure* | M.2 SATA (B Key) to USB 3.0 | I used this enclosure to benchmark M.2 SATA Lite-On and SanDisk drives — working great in 3.0 ports |
Argon One M.2 SATA (B+M Key) Pi 4 Case* | M.2 SATA (B+M Key) Pi 4 Case | This case gives you a M.2 SATA port for your Raspberry Pi and is also a case! Confirmed working by Frank. |
Tanbin mSATA to USB Adapter* | mSATA to USB 3.0 | I used this mSATA to USB adapter for my Crucial M550 benchmark — working in 3.0 ports |
Generic mSATA to USB 3.0 Adapter (fe2008)* | mSATA to USB 3.1 | Confirmed working in comments by Nico |
Canakit Raspberry Pi 4 Power Supply (USB-C)* | 3.5A USB-C Power Supply | Canakit has been making very reliable power supplies for several Pi generations now. Using a 3.5A power supply will give enough extra power for your Pi to power the drive without causing instability |
Simplecom SE502 M.2 SSD Adapter* | M.2 SATA (B Key) to USB 3.0 | Quirks required, reported working by alan but only with quirks |
Delock #61883 SATA to USB 3.0 Converter* | 2.5″ SATA to USB 3.0 | Reported working well by Joerg_H |
Vantec SATA/IDE TO USB 3.0 Adapter* | 2.5″ SATA to USB 3.0 | Reported as working by JeffG but with an ugly messy appearance |
Known Problematic Adapters (Naughty List)
Here is a list of common USB adapters that are known to have problems with the Raspberry Pi 4. You can get some of these adapters working by using quirks mode (see the “Fix (some) USB Adapter Problems Using Quirks” section below).
FIDECO M207CPS USB3.2 to M2 NVME/SATA SSD Enclosure* | M.2 NVME to USB 3.2 Gen 2 | Lee Myring reports that the FIDECO M207CPS has issues working with the Pi |
UGREEN 30848 2.5″ SATA to USB 3.0 Hard Drive Enclosure* | 2.5″ SATA to USB 3.0 | Reporting as not working properly and disconnecting often by Mirco, thanks! |
Sabrent USB 3.0 to 2.5″ SATA adapter* | 2.5″ SATA to USB 3.0 | Only works in the USB 2.0 ports. Will not boot in a USB 3.0 port. I have two of these and can confirm they don’t work. RIP to Sabrent, our previous king of the Pi 3 era of adapters. |
Sabrent USB 3.0 to 2.5″ SATA Tool-Free External Hard Drive Enclosure* | 2.5″ SATA to USB 3.0 | Another nonworking Sabrent adapter reported by Alex, thanks Alex! |
ELUTENG 2.5″ SATA to USB 3.0 Adapter* | 2.5″ SATA to USB 3.0 | Despite earlier reports as working Ryan and one other have reported this adapter does not work unless you enable quirks mode! Don’t make Ryan’s sacrifice in vain and avoid this one. |
USB 3.0 to 2.5″ SATA III Hard Drive Adapter UASP Support-20cm, Black* | 2.5″ SATA to USB 3.0 | reported by dzm in the comments as having very poor I/O performance |
ORICO 2.5″ SATA to USB C 3.0 Enclosure (Transparent)* | 2.5″ SATA to USB 3.0 | Several commenters have stated the transparent ORICO is not working. Avoid! |
ORICO 2.5″ SATA to USB 3.0 Enclosure (Black) 2588US3-BKT* | 2.5″ SATA to USB 3.0 | Commenters report that the USB-C variant of the transparent ORICO enclosure also does not work |
ORICO 2.5″ SATA to USB 3.0 Enclosure (Black/White) 2520U3* | 2.5″ SATA to USB 3.0 | Reported as not working by by Richon in the comments |
ORICO 2.5″ SATA to USB-C 3.1 Gen 1 Enclosure (Transparent)* | 2.5″ SATA to USB-C 3.1 Gen 1 | Confirmed as not working by Andrea De Lunardi in the comments (thanks!) |
Vantec 2.5″ SATA to USB 3.0 USB Adapter with Case* | 2.5″ SATA to USB 3.0 | Does not work after hours of testing and frustration by Moshe Katz in the comments! |
AliExpress Generic 2.5″ SATA to USB 3.0 “New USB 3.0 To 2.5in SATA 7+15Pin Hard Drive Adapter”* | 2.5″ SATA to USB 3.0 | Extremely cheap adapter from AliExpress — MADATALIEXPRESS bought 5 of them and none worked, PPCM had one working, very unreliable and slow when it does work, not recommended even if you get lucky! |
EWENT USB 3.0 to SATA EW7017 | 2.5″ SATA to USB 3.0 | Does not work – reported by Wouter in the comments, thanks! |
CableCreation USB 3.0 to SATA Adapter Compatible 2.5″ SATA III HDD Hard Disk Driver, 0.5FT, Black* | 2.5″ SATA to USB 3.0 | Morgon reports not working in the comments — I also recognize this adapter as the “fake” StarTech adapter that is sold on AliExpress, thanks Morgon! |
JSAUX USB 3.0 to SATA Adapter, USB 3.0 to 2.5 Inch SATA III Hard Drives/SSD/HDD Adapter* | 2.5″ SATA to USB 3.0 | Reported as not working by Bennie in the comments, thanks! |
EZCast M.2 NVME SSD Enclosure Adapter* | M.2 NVMe to USB 3.1 Gen2 | Reported as problematic due to duplicate USB ids — best to avoid — thanks MikeC |
Sabrent 2.5″ Aluminum Enclosure* | 2.5″ SATA to USB 3.0 | Reported as not working by JeffG |
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.
Hey James, I couldn’t resist, I placed an order for the new X9 pro 2tb from Crucial, it looks so nice and found it at a good price on launch sale, and it comes with 5 years warranty.
I won’t receive it until the first week of September. It mounts the sm2032 chip and tlc nands.
I suppose it’ll be similar to the Kingston xs2000 performance and should support trim.
Hopefully power consumption will be ok on the pi400.
I’m sorry for having invested so much of your time on the X8, still, I found your replies so interesting and informative!
I’ll of course benchmark it when I get it so we can compare how it performs in real life and add data for your website.
Best
Luca
Hey Luca,
That’s very exciting, I can’t wait to see the benchmarks! I think this will be a really good choice. Definitely let me know when you get a chance to benchmark it!
Hey James,
about 5 month ago, you answered a comment by a user named Gozdal who had a problematic Startech USB312SAT3CB. The vendor:device combo for him was 14b0:0270. Guess what, I got the same adapter now and it also doesn’t work. Without quirks enabled, I get resets within seconds and even just formatting the drive using EXT4 took almost half an hour. I’m certain it’s an original. It was ordered from DirectfromStarTech on Amazon and came in a StarTech bag, with a little quick start guide etc. I also double and triple checked the model number on he bag and on the adapter itself. It’s definitely a USB312SAT3CB, USB 3.1 (10Gbps) adapter.
I haven’t tried the firmware update yet because it looks pretty old to me (from 2016). So well, back to square one. I’m slowly getting tired of the adapters and consider just getting a Samsung T7. Question is if that is guaranteed to solve the problems.
Hey Carsten,
Yes, that issue is so annoying honestly, I’m not pleased that StarTech changed their chipset mid-run. A few others brought this up in various threads as well.
So to answer your question yes the Samsung T7 would definitely fix this issue. That’s a great drive choice for sure and I don’t blame you for being sick of the adapters. Hopefully that helps!
Here are 3 more Pi 3B bootable adapter cases for USB SATA and NVME I had checked this month or already for over 7 months.
After a first good experience with an Orico adapter / sata case mentioned above as the first that should be working I got the cheapest ORICO SATA CASE from Amazon on Prime DAY for less than 7€ or 9$ which has been described as ORICO 25PW1-C3-BK but forget about the last 3 characters cause -BK stands for the colour black so any 25PW1-C3 should work at least with my old Pi3+ B , I mean a quite old one from the first production year or the second which has been rarely used in the RV.
I got 2 of these USB C 3.1 Gen 1 SATA SSD Case 6 Gbit/s that are supporting UASP Trim support and also boot with a cheap sata drive (intenso 128GB).
6 GBit/s is not the best , but who cares on a Pi3 or even Pi4 ?
I guess this is one of the cheapest cases currently available and the third I use that is booting (Pi 3B+ only tested)
Here is the link to the german amazon offer but you will get most likely an amazon offer to switch to the domestic amazon shop or you can read the specs which are usually in english.
But be aware that this is – although working fine – the cheapest looking plastic you can find but at the end a better protection than any sata cable adapter even for 6€.
You might find better looking ORICO ones for just 2€ more or so and I have also observed that they lower and raise the prices every 2 weeks or every week by 20% so might be worth to wait for those on budget or those who have to buy them in packages of 10 where 20€ saved is quite a lot.
I had been following these instructions to make the Pi3 SSD bootable and tested that with HA OS and a cheap intenso or memorking SSD
And I can also tell you that the ORICO M2PV USB C 3.2 aluminium case for M.2 SSD NVME for 17€ in January and Prime Day is also working quite well with Pi 3B+
For 17€ it was a great offer and with a good performance.
Finally I also tested this Aluminium USB 3.0 SATA one which was about 11€ on ebay in January and it booted too.
You can find more details on the manufacturers site here
Be carefull cause this one with the -alu at the end has somehow disappeared and is only offered on ebay as LC-25U3-7B where B means black and W stands for white but I am not sure if that is out of aluminium.
I would expect plastic cause at least the white versino looks a bit like plastic. Before there had been a black and silver version which were from aluminium.
Here is the fourth , a simple cheap cable adapter from which at least a pi3b can boot too. ABout 6,50€ right now, but prices are changing every second week or so between 9€ and 6,5€.
Here it is my 4th running installation of HA OS 10.3 today and all worked fine so far. This one is a cable only and the simplliest Orico with a cheap plastic case is just 1€ or so more but offers the additional protection and fit quite nicely under a usual pi3 in a case. The better aluminium cases for Pi’s start with the LC POWER SATA GEHÄUSE LC-25U3-7B-Alu I had mentioned this evening at about 11€ or so incl. 19% VAT.
At least I got mine on ebay for that price and that looks and feels great, so best one for mobile use with a laptop on the road.
But for a HA OS installation any of Orico 25PW1-C3 (the further 3 characters represent only the colour) might work out quite well as a USB C 3.1 Gen 1 SATA SSD case 6 Gbit/s and UASP Trim support
great work you had started and helped me a lot to found an entry to understand where to look for and how it should work cause it is important to at least start with a successfull attempt then struggling from the very first order.
Chapeau – Hats off !
Hey John,
Looking very good, thanks for the kind words and for giving such a detailed account of your journey as well as the links!
Hi James,
I started a new thread. I got the X8 in the end. So far it works very well.
Interestingly, my X8 is a different model and ID CT2000X8SSD9 and 0634:5602. Most devices on your website say MicronX8SSD and 0634:5600 respectively instead.
I’m using your fantastic tool storage.sh (I disabled the submit results call) and it seems there is a considerable oscillation in the results:
(ranging between 8200 and 9720)
Time result
10.00am first reboot
10.04am 8685
10.06am 8960
10.09 rebooted
10.10am 9421
10.30am 8494
10.55am 9143
10.56am 8716
11.01am rebooted
11.03am 9044
11.10am 9790
11.11am 8995
11.43am 8766
1.40pm 8801
1.42pm 9051
1.56pm 9719
1.58pm shutdown
Is this to be expected? Any ideas James?
Please note I’m running retropieOS and have killed Emulationstation so there shouldn’t be anything running on the Pi400.
Thanks, have a great Friday!
Luca
Hey Luca,
Great results and great question! So the fluctuations are mainly due to the drive’s cache. The Crucial drive has a very good cache and is constantly rebalancing itself and trying to learn which files/data to cache so you get the highest performance.
The result of this is that you tend to get the highest score right after rebooting the device (or especially from a cold boot). This is because the cache is emptied/cleaned out so it will use the maximum amount of caching for the test.
As you can see though your results would sometimes go back up substantially. This is a sign of the drive having a really good cache/storage controller. It’s definitely normal and a good thing that it goes back up eventually. Drives with really poor storage controllers and cache utilization will tend to *only* go down after your first test. The fact that they’re going back up again means it’s working effectively to not cache useless stuff and to cache more important things.
I saw earlier that you got everything up to date as well. This is smart and with that drive I would run the latest firmware it will let you install on it. It will further optimize the caching / performance of the drive. Hopefully that helps and let me know if I missed anything from the previous posts!
thank you, that’s reassuring to hear about the Cache. Are you sure absolutely sure it tried to rebalance and learn? it sounds quite clever!
I’m asking because I’m aware that it comes with 240GB of fast cache, but was not aware that it constantly tried to rebalance and learn and I imagine that with an idle system, storage.sh would take way longer than 10 runs to fill the cache.
Anyway, so far so good!
Hey Luca,
Great question! I’m actually massively simplifying. Check out this page here to get an appreciation of how much your storage controller is doing and how many types of caches it manages.\
Typically in this case we’d be talking about the DRAM controller:
The DRAM is used mainly as a buffer memory to match the dataflow from the Flash array to the I/O interface. This memory can also be utilized as a data cache to improve overall performance. This requires firmware programming
Notice they mention that this requires firmware programming. The version of firmware you have installed can make a performance difference for this reason. Updates can improve the performance and utilization of this cache!
Not all SSDs even have a DRAM cache. Super cheaply made ones typically don’t. Yours definitely does and that’s part of why you’re seeing it helping your score to varying degrees depending on how much of the cache is already used by things other than the tests we’re running for the storage benchmark.
There’s other factors as well I should mention. If background tasks are running while the storage benchmark is running (and they always are, but usually they’re idling but not always) then depending at what intensity they are running at this is going to cause your score to fluctuate as well.
In other words the test won’t be consistent every time because to achieve that I’d basically have to make it a boot disk (like a live bootable USB) that has basically nothing else happening in the background. All of the background tasks will have an impact. Anything that touches the storage while the test is running will have an impact. It would be cool to create a version of the benchmark like this that runs off a bootable image that runs nothing but the test so that it’s consistent across different tests.
Because of this it’s best to get an average of a few runs and statistically speaking these things will work themselves out and leave you with a fairly consistent average. I’d say there’s nothing wrong with the setup and that it’s running fantastic.
Hopefully that helps!
It makes perfect sense, thank you for the thorough explanation.
I just noticed Crucial just released the X9 Pro and X10.
Both smaller and faster, they look good too.
Regarding the X9 Pro, I know it’s early to say, do you think power consumption could be within the limits of the Pi4 usb3 ports?
Hello, I saw in this article that the SanDisk Extreme PRO Flash Drive was a hypothesis. Is this a viable option over SSDs? I also saw similar flash drives, for example the kingston datatraveler max, would that also work on the raspberry, and is it feasible?
Hey Nuno,
Great question! So it works fine. I’ve had it for years. You can see all of the benchmarks people have taken with the drive at pibenchmarks.com here. It’s completely viable and we have 257 tests so far using it.
Hopefully that helps!
Thank you James, for your quick reply!
Hi James,
Wish I did a bit more research and found this website because it would have saved me from buying needless adapters. I originally bought this however I could not maintain connectivity to the SSD. I have a few Kingston DC600M 960G and when I attempted to put some low/moderate IOPs on them they would just disconnect and no longer be visible to the RPi4. I do have the RPi4s powered via the Canakit power adapter. I then made the mistake in buying the older Sabrent USB/SATA 3.0 adapter that is known to not work (Price I pay for taking a 10 minute trip to best buy)…
Based on all the comments it appears StarTech.com USB 3.1 to 2.5″ SATA Hard Drive Adapter – USB 3.1 Gen 2 10Gbps with UASP External HDD/SSD Storage Converter (USB312SAT3CB) is the most compatible so I picked up a few of them recently.
One question I do have is, has anyone tried to use Kingston DCM series SSDs hooked up to the Pi? I know the “go to” seems to be the A400 series.
Hey Curtis,
Thanks for the kind words and great question! We have seen some people use the DCM series of drives hooked up to the Pi on pibenchmarks.com. It should be okay.
Hopefully that helps!
Hi again James,
I hope you’re well. I’ve been using the old WD passport 2TB Hdd (Usb3.0) as main and only Retropie drive on my Pi400 for some time.
Then, over the past few days, I noticed that the fsck full scan is invokes roughly 50% of the reboots.
Upon investigation, I noticed in kern.log the following:
Jun 14 20:58:56 retropie kernel: [ 18.601910] EXT4-fs error (device sda2): ext4_mb_generate_buddy:805: group 7072, block bitmap and bg descriptor inconsistent: 3 vs 6 free clusters
Jun 14 20:58:56 retropie kernel: [ 18.626468] JBD2: Spotted dirty metadata buffer (dev = sda2, blocknr = 0). There’s a risk of filesystem corruption in case of system crash.
Jun 14 20:58:56 retropie kernel: [ 18.936593] EXT4-fs error (device sda2): ext4_mb_generate_buddy:805: group 7073, block bitmap and bg descriptor inconsistent: 3721 vs 3720 free clusters
Jun 14 20:58:56 retropie kernel: [ 18.961979] JBD2: Spotted dirty metadata buffer (dev = sda2, blocknr = 0). There’s a risk of filesystem corruption in case of system crash.
In an attempt to fix this, I then rebooted the pi400 using a small sdcard and plugged the HDD afterwards. Then unmounted sda1 and sda2,
and run fsck -fy /dev/sda2:
fsck from util-linux 2.33.1
e2fsck 1.44.5 (15-Dec-2018)
Pass 1: Checking inodes, blocks, and sizes
Inode 358, i_blocks is 16, should be 8. Fix? yes
Inode 728, i_blocks is 24, should be 8. Fix? yes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Unconnected directory inode 55293385 (/tmp/???)
Connect to /lost+found? yes
Unconnected directory inode 55293525 (/var/tmp/???)
Connect to /lost+found? yes
Pass 4: Checking reference counts
Inode 27 ref count is 7, should be 8. Fix? yes
Inode 115972 ref count is 1, should be 2. Fix? yes
Inode 55293385 ref count is 4, should be 3. Fix? yes
Inode 55293525 ref count is 4, should be 3. Fix? yes
Pass 5: Checking group summary information
Block bitmap differences: -231755487 -231755743 -(231767694–231767697) -231767700 -231767702 -231767706 +231776759 -231777111 -231777289 -231777409 -(231791117–231791119) -231792128 -(231799876–231799880) -487818753 +487818754
Fix? yes
Free blocks count wrong for group #7057 (6685, counted=6681).
Fix? yes
Free blocks count wrong for group #7072 (7, counted=13).
Fix? yes
Free blocks count wrong for group #7073 (3721, counted=3733).
Fix? yes
Free blocks count wrong (219839780, counted=219839794).
Fix? yes
Free inodes count wrong for group #7024 (7145, counted=7141).
Fix? yes
Directories count wrong for group #7024 (359, counted=363).
Fix? yes
Free inodes count wrong (116968092, counted=116968088).
Fix? yes
retropie: ***** FILE SYSTEM WAS MODIFIED *****
retropie: 340456/117308544 files (1.8% non-contiguous), 268464078/488303872 blocks
and then I run fsck -fy /dev/sda1:
fsck from util-linux 2.33.1
fsck.fat 4.1 (2017-01-24)
/dev/sda1: 312 files, 12526/65467 clusters
I don’t know what caused this, perhaps a bad shutdown?
Do you think is the file system and my data healthy now? Any chance of something corrupted?
As always, thanks for looking and for your help
Luca
Ok, it has happened again today, on first boot: EXT4-fs error (device sda2): ext4_mb_generate_buddy
and full fsck check, now it’s doing a second full fsck check after having rebooted again.
Hey Luca,
Have there been any unsafe shutdowns that you know of? It sounds like it happened so fast again that it seems unlikely. It may be worth checking the health of the disk with smartctl. Does S.M.A.R.T. report any issues with the drive?
Unsafe shutdowns are definitely the #1 cause but aging disks can definitely be the cause as well. I could see it going either way with yours. For example:
ext4_mb_generate_buddy:805: group 7073, block bitmap and bg descriptor inconsistent: 3721 vs 3720 free clusters
That one was off by one block which is low enough that an unsafe shutdown could definitely explain that. However we also have one that was 3 vs 6. Again though that was group 7072 and the other group was 7073. It seems like one spot on the disk was impacted.
I wouldn’t panic yet from having to fdisk it again once *if* it fixes it. If it keeps happening or smartctl reports super high error counts / any bad blocks / etc. that the disk may be failing.
Definitely let me know what you find or if it happened again after both of those repairs!
Hey James,
Hold on to your hat, it’s going to be a long post.
So, I replaced the usb cable and plugged it into the other usb3 pi400 port to reduce variables involved.
It’s also worth noting that I often shut down my Pi400 by using FN+Power, which invokes the shutdown. But this issue happened even when a reboot was invoked via terminal.
Also, I’ve updated retropie and emulationstation before noticing this behaviour starting to happen 3 weeks ago.
There have been no unsafe shutdowns AFAIK.
I did run the smart command. See results below #1.
I then went ahead and rebooted via sdcard and run fsck /fy on the disk and found that
/dev/sda1 has an issue, and now /dev/sda2 has no issues. See results below #2.
I rebooted a couple of times, and lo and behold, fsck on the full disk started again. And this time it found this error during boot:
[848.053946] EXT4-fs error (device sda2): ext _mb _generate_buddy :805: group 70
Rebooted again, this time to a fsck full disk check where no errors were found.
I finally went ahead and rebooted via sdcard and run fsck /fy on the disk and found that
/dev/sda1 now has no errors, and /dev/sda2 has no erros either. See results below #3.
It feels like it’s going in a loop now.
Apologies how long this comment is, results can be found below. Thanks again, have a great weekend.
#1 smartctl result:
pi@retropie:~ $ sudo smartctl -a /dev/sda
smartctl 6.6 2017-11-05 r4594 [armv7l-linux-5.10.103-v7l+] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: Western Digital Elements / My Passport (USB, AF)
Device Model: WDC WD20NMVW-11AV3S2
Serial Number: WD-WX41A4400794
LU WWN Device Id: 5 0014ee 25fe9af5e
Firmware Version: 01.01A01
User Capacity: 2,000,398,934,016 bytes [2.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 5200 rpm
Device is: In smartctl database [for details use: -P show]
ATA Version is: ACS-2 (minor revision not indicated)
SATA Version is: SATA 3.0, 3.0 Gb/s (current: 3.0 Gb/s)
Local Time is: Fri Jun 16 19:06:44 2023 BST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART Status not supported: Incomplete response, ATA output registers missing
SMART overall-health self-assessment test result: PASSED
Warning: This result is based on an Attribute check.
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 0) The previous self-test routine completed
without error or no self-test has ever
been run.
Total time to complete Offline
data collection: (39060) seconds.
Offline data collection
capabilities: (0x7b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 2) minutes.
Extended self-test routine
recommended polling time: ( 431) minutes.
Conveyance self-test routine
recommended polling time: ( 5) minutes.
SCT capabilities: (0x7035) SCT Status supported.
SCT Feature Control supported.
SCT Data Table supported.
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 4
3 Spin_Up_Time 0x0027 217 204 021 Pre-fail Always - 4150
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 801
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0
9 Power_On_Hours 0x0032 099 099 000 Old_age Always - 1058
10 Spin_Retry_Count 0x0032 100 100 000 Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 100 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 496
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 327
193 Load_Cycle_Count 0x0032 199 199 000 Old_age Always - 5400
194 Temperature_Celsius 0x0022 127 084 000 Old_age Always - 25
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline - 0
SMART Error Log Version: 1
No Errors Logged
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Conveyance offline Completed without error 00% 285 -
SMART Selective self-test log data structure revision number 1
SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
1 0 0 Not_testing
2 0 0 Not_testing
3 0 0 Not_testing
4 0 0 Not_testing
5 0 0 Not_testing
Selective self-test flags (0x0):
After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
#2 fsck result:
pi@retropie:~ $ sudo umount /dev/sda1
fsck from util-linux 2.33.1
fsck.fat 4.1 (2017-01-24)
0x25: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt.
Automatically removing dirty bit.
Performing changes.
pi@retropie:~ $ sudo fsck -fy /dev/sda2
fsck from util-linux 2.33.1
e2fsck 1.44.5 (15-Dec-2018)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
retropie: 340463/117308544 files (1.8% non-contiguous), 268853089/488303872 blocks
#3 fsck result:
pi@retropie:~ $ sudo fsck -fy /dev/sda1
fsck from util-linux 2.33.1
fsck.fat 4.1 (2017-01-24)
/dev/sda1: 312 files, 12526/65467 clusters
pi@retropie:~ $ sudo fsck -fy /dev/sda2
fsck from util-linux 2.33.1
e2fsck 1.44.5 (15-Dec-2018)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
retropie: 340464/117308544 files (1.8% non-contiguous), 268853174/488303872 blocks
Hey Luca,
Great testing and observations! So the smartctl report looks okay. I only see 4 errors for the disk in the first category and none for the other error categories. This part looks okay.
The ext _mb _generate_buddy error is pretty mysterious in itself. Take a look at this link here if you haven’t seen it already:
Whilst the meaning of the ext4_mb_generate_buddy is understood, the root cause for the block count mismatch is not understood. Often times this was caused by an issue in storage hardware.
When troubleshooting this issue, it would be useful to collect the following data before repairing the filesystem:
The whole dmesg output (not just parts)
The whole /var/log/messages file (not just parts)
Diagnostic image of the file system in question, using a command like:
e2image -r /dev/ - | bzip2 > .e2i.bz2
For the solutions they recommend this:
Problematic SAN firmware. An upgrade to the firmware may fix the issue.
Problems caused by storage hardware. Hardware diagnostics are recommended.
Memory corruption. Hardware diagnostics are recommended.
In other words these errors usually point to firmware and hardware issues. This may explain why it keeps coming back. I don’t know if Western Digital has firmware updates available for that drive or not but it would be worth checking using your exact model to see if there are any available.
My guess is that if you tried a different drive this would not be happening. I’d check for firmware updates though here to see if we can resolve it without something so drastic.
Hopefully that helps!
I found a second hand
Samsung 860 EVO 2TB SSD 2.5″ MZ-77E2T0 SSD for £65
Remaining Drive Lifetime: 97 %
Lifetime Writes: 55.17 TB
Total Power-On Time: 187 days
What do you think of this ssd for the price?
I’m thinking of getting and using with my existing ugreen enclosure, which was tested and running fine with my samsung evo 850 1tb ssd.
I do prefer the samsung t7 2tb, but can’t justify the £120+ price.
Best!
on second thoughts, I think I might go for the t7 2tb at £112 brand new with Samsung warranty…
I did look into the WD passport firmware and other solutions but couldn’t find much. I think i’ll just use that old HDD for storage.
Hey Luca,
The warranty is definitely something to consider. You get a 3 year warranty with the Samsung T7 and so you can be guaranteed it will be good for at least that long. In reality it will probably last much longer.
I actually really like both of the choices you are considering. I think you can’t go wrong with either and it will come down to your preferences but definitely both are amazing choices!
Hey Luca,
The Samsung 860 EVO would be a great choice! The 2TB size is very nice as well. I think this would solve most of your issues. I think this would be a more cost effective way than upgrading over the T7.
Hopefully that helps!
thx James, I don’t know, I’m also looking at the crucial x8 2tb that is a sweet deal and it comes with warranty.
I think I won’t be pulling the trigger on the used evo.
t7 2tb is sweet bit pricier at £131 actually (got the price wrong earlier).
crucial x8 2tb sounds nice for £97.
The used evo I would prob. go for the crucial for just £35 more.
Also with new online purchases, I can always test it and iron out issues and consider returning if there are problems.
sorry I have many things on my mind right now and it feels like I may need to stop breath and come back to this in a while.
Best!
Hey Luca,
Great thoughts, I agree with you especially that if it’s new you can return it if there’s any problems. The Crucial X8 would be a great choice as well and has a lot of benchmarks on pibenchmarks.com.
Definitely let me know what you end up trying!
Hi James,
I got the X8 in the end. I’ve run pibenchmark and got 8200-8300. So far it works very well.
Interestingly, my X8 is a different model and ID CT2000X8SSD9 and 0634:5602.
Most devices on your website say MicronX8SSD and 0634:5600.
By the way, I have a quick question about firmwares and eeproms. I’d like to run sudo apt-get upgrade in order to get the latest firmware. Currently it’s based on a version from the 1st Dec 2021. And It could be updated to the 9th May 2023.
Do you think could this mess something up with retropie/retroarch/emulationstation?
I hear the curator of the image I’m using, he does this every 6 months and never had a problem.
Best!
Luca
Ignore my second point, I just upgraded the OS and got everything up to date.
Regarding the x8, I’m noticing I can feel electric current when touching the x8, when attached to the pi400. It’s the same feel I have on a macbookpro when charging. That’s the only negative, not sure if it is expected or what.
Benchmark wise, it varies between 8200 and 9500 (I run several of them actually, perhaps the fast 240gb cache is playing a factor depending on how much it fills up).
IGNORE
I’ll start a new fresh new thread.
p.s. the current feel to the touch is only present with the usb3.0 port nearer to the power supply, perhaps it’s just bad shielding on the pi400