I'm a fan of Raspberry Pi cases that keep my Pi cool. And the cases made by Argon Forty have great cooling, which is one reason they're a popular choice. Their latest Argon One M.2 case also adds a built-in high speed SSD drive slot!
A few months ago, someone from Argon Forty reached out and asked if I'd like to review the Argon ONE M.2, after they watched my video on booting a Pi 4 from an external SSD, and I accepted.
Unlike most Pi cases, this one actually adds features through it's design, like putting all the ports on the back, and adding a mostly-internal SSD, and so I decided to put it through its paces and see what I liked, and what I didn't like.
I also posted a video version of this blog post on YouTube:
First, let's look at the hardware design. It's not my favorite, and it gets dangerously close to being an angular gaming monstrosity, but it's muted enough and doesn't have any annoying bright LEDs. I don't like flashy or gaudy designs, and this is mostly sleek and minimal. One thing I don't like, though, is the angled top, which makes it hard to stack anything else on it. I often stack Pis in other cases, like my favorite passively-cooled Pi case, the Flirc.
But for most people that's not a big concern—if you're going to put one of these on your desk as a computer or next to your TV as a gaming or media device, stackability isn't as important.
Assembling all the parts was a little bit of a burden. There were a number of small screws and things that had to be put together to get the whole case together, but as long as you're slow and careful, everything fits together nicely.
It's definitely not a case where you'll get quick access to the Pi itself if you need to pull it out and use it elsewhere sometimes. And even something simple like swapping the microSD card requires the removal of four long screws on the bottom.
But it does have a few really neat tricks up its sleeve.
First, it's really solid, as the entire top case is metal. Up on top, there's a little magnet cover over a 40-pin GPIO header, with colored labels for all the pins, which is convenient.
On the front, there's an IR receiver, so you could use a remote control with your Pi if you want. Since IR requires a transparent window, you can also see the Pi's status LEDs through it, which is a feature missing from some other metal cases.
The back is where the party is, though, and there are a few things I really like:
Instead of micro HDMI, you get two full size HDMI ports. The USB-C and audio jack are both put out the back as well, through a little 90° daughter card that plugs into the side of the Pi.
There's also a little power button, which can be disabled if you want the Pi to work like it normally would, where it powers up when you plug it in. That's a really nice touch, because they could've just as easily made it so you have to use the power button.
Then there's an extra USB port at the bottom, and that's the feature I'm most excited about on this case. The whole bottom of the case is a custom internal USB 3.0 to M.2 SSD adapter.
M.2 SSD Adapter
It accepts any M.2 SATA SSD, but I should note that it may be confusing figuring out which drives will work with it—on the label it mentions 'B Key & B+M Key', but that's just the physical connectors it's compatible with.
I've found in all my testing with NVMe and M.2 storage that the labels on the drives themselves are often confusing, and some drives that physically fit don't actually work with the interface, depending on the USB storage controller chip that's used!
I had the following drives on hand:
- Kingston SA400 120 GB SSD
- Samsung 970 EVO Plus 250 GB NVMe SSD
- WD_Black 500GB SN750 NVMe SSD
- XPG SX6000 Lite 120GB SSD
If you look at the names of all these drives, they all have keywords like SSD, some of them mention NVMe, but NONE of them mention anything about SATA or the M.2 key in the title.
You have to dig into the drive specs to find any information about the key or whether the drive uses SATA or NVMe.
And it's even more annoying because you can technically fit M-key NVMe drives into the B and B&M key slot on the Argon One (if you push with a little force), even though M-key drives shouldn't fit.
It's not Argon Forty's fault, but it is really annoying to me, as a consumer, that I have a number of different adapters and USB devices, and all of them work with a different set of almost-identical looking drives, all of which say they're M.2 SSDs.
Anyways, sorry about that little side rant.
Can you guess how many of my drives work with the Argon One M.2? Only the Kingston, since it's a SATA drive with a B+M key connector.
Again, this isn't Argon Forty's fault, but you do have to be careful when choosing an SSD. Make sure it has a B or B+M key connector, and make sure it says SATA, and not PCIe or NVMe!
I went one step further and pulled the M.2 adapter board out of the case, so I could look at the chip on the bottom, and it's an ASmedia ASM1153E, which is a good SATA III controller with UASP support, so it should work great for any modern SATA SSD.
If you don't know what UASP is or why it matters, check out my video on UASP and the Raspberry Pi.
Kingston SSD performance
Now that I have a working SSD, I wanted to see how it compared to the microSD card for general performance. And since I learned from my network testing in previous videos that the CPU clock speed on the Pi can have an impact on IO performance, I also ran my benchmarks with a 2 gigahertz overclock.
And as I've found with all the other SSDs I've tested, even a cheap low-end SSD like the Kingston SA400 smokes even the fastest microSD cards.
The SSD is 10x faster writing large files, and 7x faster writing small files.
There's no competition, and if you're going to run a Raspberry Pi 4 as your main computer, or as a little server, the M.2 slot on the Argon One is a no-brainer. Everything will feel faster using an SSD, and the storage should be more reliable too.
Also, because the Pi 4 supports USB boot now (I made a whole video about it), I tested that too, and it worked great. You don't even need a microSD card in the Pi.
The one downside to the way this case works is the way the USB to USB adapter is made; it sticks out a bit on top, and that means the top USB 3.0 port on the Pi has a tiny bit less space available for thicker USB devices, like my Corsair Voyager flash drive.
You can fix that issue by using a separate USB 3 cable, but that takes up a LOT more space and doesn't keep the Argon case as tidy. Most USB devices are fine, though, it's just the thicker plugs you have to worry about.
Keeping its cool
Besides the built-in SSD storage, one other reason a lot of people like Argon Forty's cases is for better cooling.
I tested the thermals on my Raspberry Pi 4 and found the case to work pretty well with it's included fan—but it also works well enough without the fan that I'm tempted to recommend leaving it disconnected unless you really need that extra cooling, like for overclocking or tons of disk IO.
Looking closely at the temperature graph, the Pi never hit more than 60°C with no fan, meaning there's a ton more thermal headroom before it would start throttling.
And if you look at an infrared picture of the case you can see why; the whole top of the case acts like a giant heat sink, and that's plenty for the Pi to stay cool.
The top of the case does get a little warm, but it's never hot to the touch; it only got up to about 40°C at the hottest point, near the middle.
I should note that during these benchmarks, I had the fan either disconnected, or connected and running at 100% the entire time. When the fan is running full speed, it makes a slightly annoying sound, but it's nowhere near as loud or annoying as the official Raspberry Pi Case Fan (video review here) I tested a few weeks ago.
Fan, IR, and power control
To use all the features of the Argon One case, you can install the Argon One software for the Pi. It gives you control over power button functionality, fan speeds, and the IR receiver. I'm not going to cover all that in this video, but I was interested in playing around with the fan settings.
I installed their software:
curl https://download.argon40.com/argon1.sh | bash
Then I ran
When you enter the tool, you can choose between running the fan all the time, setting different fan speeds for different temperatures, or even go and manually edit the Argon One Daemon config file.
I tested a few different settings, and in every case, even when the fan was at 30% power, the fan was still about as loud as it was at 100%. Again, it's not too bad, but unless you need the fan running, passive cooling seems to work well.
If you want to do a lot of disk IO with an M.2 SSD, though, you might want to leave the fan on continuously, because there's no direct heat sink between the case and the SSD, and there's also no temperature probe in the drive area, so even if the Pi isn't overheating, the SSD could.
At $45, this case is the most expensive Raspberry Pi case I've used, and is more expensive than the cheapest Pi 4 model B. The built-in M.2 SSD slot saves the cost of an external adapter, and it's the nicest overall package for a Pi 4 plus fast SSD storage I've seen.
The little USB to USB adapter on the back is a little annoying, but that's the price you pay for having the nicest, fastest, most compact Pi 4 model B setup.
I would really love to see what Argon Forty can do with a Compute Module 4, though—with native NVMe support, and more stable overclocking with the better SoC in the CM4, you could get even more speed from that setup, with an even smaller case!
I assembled mine today using a WD GREEN M.2 2280 SSD. Unfortunately I found that TRIM support does not appear to be working. Perhaps it's me or this SSD, but I suspect the firmware in the Asmedia chip.
[ 1.571978] usb 2-2: Manufacturer: Argon
[ 1.571992] usb 2-2: SerialNumber: 0000000000B6
[ 1.592176] scsi host0: uas
[ 1.593462] scsi 0:0:0:0: Direct-Access Argon Forty 0 PQ: 0 ANSI: 6
[ 1.595151] sd 0:0:0:0: [sda] 468862128 512-byte logical blocks: (240 GB/224 GiB)
[ 1.595316] sd 0:0:0:0: [sda] Write Protect is off
[ 1.595333] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[ 1.595643] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 1.596257] sd 0:0:0:0: [sda] Optimal transfer size 33553920 bytes
[ 1.598783] sda: sda1 sda2
[ 1.601416] sd 0:0:0:0: [sda] Attached SCSI disk
[ 1.660854] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null)
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
I've spoken to Argon 40 about the lack of trim and it turn's out the current firmware doesn't support it and they haven't got an ETA when a version with trim will be available. It's a bit of a pain it wasn't supported from the get go but it doesn't appear to affect the overall performance and I'm hoping Argon 40 will provide a firmware update that doesn't require a Windows PC to run.
Maybe the ASmedia chip runs an older firmware - I've not tried this chip interface, only found that info here:
To save people some legwork I found these links to other peoples research regarding TRIM support.
Something I regret not doing before buying my "Argon one m.2".
See last paragraph for news that TRIM is not supported yet and has no ETA for new Argon40 firmware.
I have not contacted Argon40 myself about this.
People discussing replacing the stock firmware with potentially sketchy firmware to get TRIM support.
Appears to work, any downside unknown. Presumably warranty issues.
I have not tried replacing the firmware myself.
Prompted by the comment by Martin below, I contacted Argon40 about their progress with an upgrade tool. There response was disappointing: "We've decided not to release one as there is a High Failure Rate when updating the firmware via USB." So it looks like owners of early models are stuck with DIY firmware upgrade. Does anyone have a source for 141126_A1_1D_80 firmware that Martin mentioned.
A word of caution, I've just found that the chipset changed at some point from ASM1153E to ASM235CM [article: https://www.martinrowan.co.uk/2021/06/argon-one-m-2-ssd-case-wifi-issue… ] so if you
can't get TRIM going and want to try a DIY firmware upgrade check for the ASM1153E on the PCB first for compatibility with the upgrade methods mentioned above in earlier post. With luck it's possible that all of the ASM235CM ones are TRIM capable, but I have no information on that.
Hi Nick H
I used a WD Blue 1TB 3D NAND SSD M.2 2280 and have not been able to enable TRIM.
It seems "WD Blues" support "dynamic and static wear-leveling, bad block management and background garbage collection. Other features include S.M.A.R.T. commands, TRIM, and NCQ with queue depth 32." 
I have submitted a separate comment against this article that is in the moderation queue.
Thanks for your post.
Interesting Case. I like to use it for a desktopreplacement Raspi 4 instead of my 3B now.
besides the SSD I would like to upgrade sound to hifi-Berry-diggi for SPDIF connection to my Audio
Is it possible to use HATs with this case, especially one of the Hifi-Berry diggi cards?
Hi All! Thanks for the great posts Jeff.
Does anyone know where to get an official version of the ASM1153E driver firmware which supports TRIM?
I have asked Argon, the supplier of the chipset and case, for a copy of the latest firmware (2021-01-31).
This version on station-drivers.com is said to support TRIM , but I don't want to install something that could have been tampered with.
I'm trying to enable TRIM on my drive in the case's M.2 slot using one of Jeff's older posts . Unfortunately sg_vpd -p bl /dev/sda shows a maximum unmap LBA count of 0, which I take to understand TRIM is not supported.
I'm not sure how important TRIM is in reality but I understand it might helps maintain the performance of my SSD in the long term, which is important . It would be a shame not to get the best out of your SSD due to old firmware!
I love the passive cooling ability of the case, as Jeff has shown, so it feels like its being let down somewhat by this TRIM limitation.
 https://arstechnica.com/gadgets/2015/04/ask-ars-my-ssd-does-garbage-col… "So, always use TRIM if you can. It will make your SSD’s garbage collection work a lot better. But if you find yourself in a situation where TRIM isn’t available, don’t panic—it’s nice to have, but it isn’t a requirement."
There is a nice argon one fan control daemon here that I'm using at the moment.
After getting my Pi 4 up and running with this case (Pi Firmware update and all that jazz), I promptly forgot the password to get into the Pi OS.
I figured rather than going down the hole of reloading the entire OS, I could connect the lowest USB port to my PC and just see if I can overwrite the passwd file.
But since Argon used a USB A there, I have to buy an A to A cable since their little dongle is all but useless, even with a slim laptop.
Wondering if anyone knows of any specific requirements here for connecting the USB A on the Asmedia daughter board to a PC?
I see a number of $5-10 "Data Transfer" cables on Amazon. Will that do it?
I guess the other option would be to just create a new USB thumb drive with Pi OS and stick that in the upper slot and then after it boots, plug the lower M.2 dock port back in.
To image the SSD from my laptop, I just removed the lower part of the Argon case, plugged in the USB-USB adaptor supplied with the case and used an old USB 2.0 male-female extension cable I had lying around between the free USB plug on the adaptor and a USB 3.0 port on my laptop. It wrote the image fast enough so was probably USB 3.0 speed (can't say for sure though).
I just bought this case to run my Pi4 off an SSD but I also want to get a Coral.
Unfortunately, the Coral USB is not in stock anywhere at the moment, are there any other options that you know off to get other Coral boards installed?
Jeff, Thanks for the review. This helped me greatly for my Kodi/LibreElect build. I used a 1TB Samsung 860 EVO SSD with the Argon M.2 and I did not have any of the issues presented here. I was on the latest firmware (09-03-2020) and I used a m.2 enclosure to write image to the chip via Raspberry Pi Imager. Performance is good, but the unit does get pretty warm. I overclocked it to 1700mhz for now and will see how my video playback performance goes (This is a carry along media player for the van on long road trips). Thanks for the review!
So far so good using the Argon One M.2 as a music player with Moode Audio. I had to edit config.txt to get my Pi to boot, putting it in "safe mode" which reduced video resolution during setup, not a real problem since it's now running headless. The unit is clunky looking but sits hidden in an audio console with my DAC and amplifier. It does get warm during the day and I try to remember to shut it down at night. Hoping to use Moode's alarm clock feature to shut it off automatically. A WD Blue 250GB SSD installed and saved music files without a hitch. The heat issue has me a little worried about lifespan but for now it "just works".
Jeff I just received an Argon1 m.2 and pi with a 513Gb SSD. I am receiving a failed to open device 'sdcard' error when trying to boot off the SSD. Boots fine off of my SD card. Any help would be appreciated.
Which method do you use to populate the SSD with raspbian os ?
Did you run a new installation ?
Did you clone the SD card with dd ?
Did you have the latest raspberry-pi firmware ?
If anyone is interested, I collected a list of Argon ONE projects here: https://github.com/sagikazarmark/awesome-argonone
I just found the solution myself:
The M.2 adapter board's ASM1153E USB SATA bridge chip firmware is outdated.
with this firmware: 141126_A1_EE_82 from station-drivers
and some preparations following this tutorial:
trim works as intended:
sudo fstrim -v /
/: 209,8 GiB (225292222464 bytes) trimmed
Just bought this case, and it has firmware 141126_A1_1D_80 installed. Trim works out of the box.
Has anyone tried a hat? Does not even power on with a hat. No red light. Remove hat no problem. Thought it might be a power issue. Tried with sd card and SATA not connected. Same result.
hat update: Moved the power on jumper to always on. Now OK
I really like this case with SATA. I like to mess around with writing GPS software. Having an SATA for the file system is great. Now if only the GPIO pins were rotated 180 degrees. I had to put 'legs' on the GPS hat to support to it. The hat sticks out over the cables, would be MUCH BETTER if hats were over the case. Unlikely there is a rev 2 in the works. Thanks Jeff for all the cool RPi stuff you do.
I'm traying to setup as main SSD WD BLUE 3D NAND SATA SSD M.2 2280 2TB on argo one m.2 case I'm using a raspberry pi 4b 8gb ram
I think about the same setup with 1TB, because the Kingston SA400 SSD is only available up to 500GB.
I still use a original Argon One and think about only the upgrade Kit, but I want to have the boot on power jumper and full size HDMI from the new one.
Do the Argon One M.2 still have the same trouble with audio via HDMI which only works with ALSA ?
Maybe I will switch my choice to the new DeskPi Pro V2 which support 2.5 Inch SSD or NVME
@Jeff do you plan a review or test with the DeskPi Pro V2
How has this been working out for you? Any power issues?
My Pi4B 8GB seems very unreliable using the exact same setup as you (500GB version instead though)
I can't work out the cause behind this error popping up which immediately drops all access to the SSD until I pull the plug and plug it back in
kernel: [43114.041300] sd 0:0:0:0: [sda] tag#24 uas_eh_abort_handler 0 uas-tag 2 inflight: CMD OUT
kernel: [43114.041318] sd 0:0:0:0: [sda] tag#24 CDB: opcode=0x2a 2a 00 1a df e1 02 00 00 94 00
Indeed not having easy access to the SD card is a little bit of a problem but, if you want to dual boot the PI4, you can do so by choosing USB Boot from the raspi-config utility. This will boot from the SSD but, if you also have an SD card with a different OS, and you remove the USB connector you will be booting from the SD card. That's how I dual boot Batocera from SSD and Twister OS from SD card. It doesn't solve the SD card access issue but it gives you more boot options.
I had the same problem with it, currently I don't reattach the bottom screws, the USB bridge hold the parts enough in place from my point of view. But I have also seen a solutions with a slim micro SD extension cable which you pull out of the case. At least cutting a hole throuh the case should work, but I would not do it.
To use a micro SD card I just pull the USB bridge and use USB SD adapter to hold the SD card. An adapter is also useful to move an image from an SD card to a SSD in the case. Just boot the image from the SD card mounted in the adapter with the USB bridge removed. Then insert the USB bridge and use the image utility to transfer the SD image to the SSD. The image will be resized on the first boot from the SSD.
For what it’s worth, I emailed Argon40 support about the TRIM issue, and here’s what I got in reply:
I run my ArgonOneM2 case with the official Raspberry power supply 5,[email protected], but I run into Low Voltage issues even with a simple flash drive or card reader if the M.2 is connected. Do somebody has the same issue ? Currently I bought a official Argon power supply which is able to deliver 5,[email protected],5A.
Official Raspberry power supply measured:
3A static load: 4,8-4,9V maybe to low for the Pi and USB
Argon power supply measured:
3A static load: 5,1-5,2V
Max of 3,5A is not reachable, because it drops down to 4V at 3,3A maybe it runs in overload protection, but it should be enought.
But I'm a little bit worried about the max. Voltage in idle state if I would connect it to. Is it a porblem for the Pi itself or do you know if the Argon Case has some protection ?
This is probably not an issue of the power supply (if >= 3A) but rather the max output via the USB ports. The rpi4 can only deliver 1.2A in total accross the USB ports. So if you have multiple high power seeking devices on the USB ports, some may fail or work unreliable. Solution would be to feed their power from an external power supplier rather than directly from the rpi
Hi Jeff, I cant find anywhere... is it possible to use official Raspberry Pi PoE+ HAT with this Argon One M.2 Raspberry Pi SSD Case???
Thank you very much for clarification, and many thanks for all the work and amazing stuff you are doing.