Disclosure: Some links on this page are monetized by the Skimlinks, Amazon, Rakuten Advertising, and eBay, affiliate programs, and Liliputing may earn a commission if you make a purchase after clicking on those links. All prices are subject to change, and this article only reflects the prices available at time of publication.

Raspberry Pi 5 add-on boards that allow you to attach a PCIe NVMe solid state drive to the little computer are becoming so common that I told myself I wasn’t going to write about new models anymore.

And then I saw the Geekworm X1004 Dual 2280 NVMe SSD shield. Available from AliExpress for $43, this little board is one of the more expensive options to date. But it offers a few things that most competitors lack: support for M.2 2280 SSDs (and not just M.2 2242 or smaller), and support for using up to two SSDs at once. It still might not be a great choice for everyone who wants to use an SSD with a Raspberry Pi 5 though.

The biggest drawback is that while you can use the X1004 to add high-speed storage to a Raspberry Pi 5, it’s designed for use as extra storage, not primary storage. You can’t currently boot from an NVMe SSD when using this add-on board.

Geekworm does make a point of saying that you can’t boot “with the existing firmware,” which suggests that it’s possible a future firmware update could theoretically allow you to install an bootable operating system to a solid state drive. But for now that appears to be a no go.

Another thing to note is that you’ll need to pay attention to power consumption when selecting SSDs. The board can supply up to 3.5A per SSDs, but no more than that. Since the board is designed to sit on top of a Raspberry Pi and draw power from the little computer’s 40-pin GPIO connector.

The X1004 board is only compatible with NVMe SSDs and will not work with SATA SSDs.

But once you get past those limitations, the board has a few things going for it including support for up to two 4TB SSDs (for a total of 8TB of storage), support for 5 Gbps speeds when using PCIe 2.0 drives or 8 Gbps when using PCIe 3.0, LED indicator lights to show drive status, and support for Raspberry Pi’s HAT + Standby power states, which means the board will automatically shut down when a Raspberry Pi 5 is powered off.

Geekworm also offers a few optional accessories including a Raspberry Pi heat sink + fan that can fit under the X1004 and a 27W power supply. A bundle with both accessories sells for $60.

via MiniMachines

Support Liliputing

Liliputing's primary sources of revenue are advertising and affiliate links (if you click the "Shop" button at the top of the page and buy something on Amazon, for example, we'll get a small commission).

But there are several ways you can support the site directly even if you're using an ad blocker* and hate online shopping.

Contribute to our Patreon campaign


Contribute via PayPal

* If you are using an ad blocker like uBlock Origin and seeing a pop-up message at the bottom of the screen, we have a guide that may help you disable it.

Subscribe to Liliputing via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 9,536 other subscribers

Join the Conversation


Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  1. I’m always up for more storage capacity, but I’ve often had difficulty trying to get actual numbers on power consumption of an NVMe drive (max/standby/avg), from manufacturers’ websites, which makes me a little hesitant to jump at this board. Looks like about 11.5W per M.2 slot, which should put most <=4TB Gen3 drives within range, based on my limited experience. A compatibility list would be a good resource, for Geekworm to supply.

    1. There’s absolutely no way any NVME drives will ever consume this amount of power when connected to the pi as the bandwidth will limit them long before they need it. Especially if it’s two drives sharing a single pcie3 lane.

      1. “Especially if it’s two drives sharing a single pcie3 lane”

        Would you mind expanding on that?

        1. Well, as said in the article, the max throughout via the rpi PCIe3 is 8 Gbps. Today’s good SSDs can do above 50 with full 4x pcie4, for example (64 Gbps interface speed). And only then do they need full power. If they are throttled to 8 Gbps by the interface, they won’t need a lot of power.

          Note Gb is gigabits, not gigabytes.

          1. So the max. bandwidth on the single pcie3 lane is 8Gb/s and that means that even if you connect two SSDs over the one lane then you’ll only be able to get max. 4Gb/s out of each SSD? That still strikes me as being not bad performance, compared with say a nanoUSB drive, eMMC or microSD?

          2. Upgrade pi-top [3]:

            No, it meant that you can get 8 Gbps max combined from both, so if one is idle, the other one can do 8.

            But this is still not great, as I wrote these are gigaBITS, not gigaBYTES. To get gigabytes, divide this by 8 and subtract the protocol overhead (~10%).

            ~900 MB/s is not very good for a modern SSD. Or 450 MB/s if both are used at the same time. Might as well use SATA in this case.

          3. Thank you, urostor, that’s helped clear things up for me!

            Even if it’s only 450MB/s that’s still better than you’d get from microSDs, eMMCs, or nanoUSBs but point taken RE SATA.

      2. I’ve seen some spikes on my miniPCs, while monitoring via a Kill-A-Watt meter, especially on startup. It looks like a single SSD is pulling about that much current, for a short period of time, when I first boot, sometimes at the beginning of a large data transfer. Power consumption ultimately tapers off, probably as you’ve said, due to bandwidth limiting, or maybe thermal throttling. But if the device needs more than the 11.5W for initial boot, won’t it disconnect? I’m pretty sure I’ve witnessed similar behaviour on my Pinebook Pro, with an NVMe drive that needed more juice initially, than the device was able to supply.
        Are you familiar with NVMe drive power requirements? Where did you find that data – it’s something I’m keen to understand better.
        Thanks for the reply BTW.

        1. No data, I just know they need less power when they are not 100% utilized, just like your CPU, GPU etc…

          And yes they may need this for initial boot up, forgot aboot this. I did not know it happens at the beginning of a large transfer. This might be why some SSDs don’t play nice with some SBCs I think.

  2. Every time I see these HAT systems I think about heat. Although nearly I’m totally unfamiliar with Pi devices, I believe they have 10 watt processors, which is a fair amount of heat. I’m more familiar with SSD devices, but I really don’t know how much heat they put off or how much heat they can tolerate. But this system just reminds me of people who used to put their tuner (or other device) on top of their integrated amplifier. Not a good idea. Am I wrong with this application?

    Also, as long as I’m asking questions, do the shorter M2 SSD devices have more of an issue with heat? Seems like they would given they probably generate the same amount of heat in a smaller area.

  3. Are you stupid? Who gives a shit how many SSDs you can add to rpi, when the bandwidth is limited to one pcie lane.

    1. For those of us who don’t yet understand, what does that bandwidth limitation mean in practice?

      1. If you want a threadripper, that option exists. Yeah performance isnt rpi’s biggest selling point.

        1. Sorry, by practical terms, I meant “the bandwidth is limited to one pcie lane implies that you won’t get the benefit of X because of Y”, where I presume “X” is more than one SSD but I don’t yet understand what the “Y” is.

          I get from CNX-Software’s comment below that in order to use this HAT on other SBCs, such other SBCs would also have to have a PCIE interface but I don’t yet understand what having only one PCIE lane means in terms of limiting bandwidth to SSDs.