Add two M.2 NVMe SSDs to Raspberry Pi 5 with Geekworm X1004 HAT+

We’ve seen a range of PCIe HAT(+) for the Raspberry Pi 5 taking one NVMe SSD, but Geekworm X1004 is different as it can take up to two standard M.2 2280 SSDs over the Pi 5’s PCIe connector and 40-pin GPIO header.

The official Raspberry Pi 5 M.2 HAT+ is not available yet, but we already have an embarrassment of choice with products such as the PineBerry Pi HatDrive, Waveshare PCIe To M.2 HAT+, Pimoroni NVMe Base, and the Geekworm X1003. The latest X1004 adds even more options with support for two M.2 SSDs for up to 8TB storage, although this may not make that much sense on the Pi 5 as we’ll discuss further below.

Raspberry Pi 5 Dual NVMe SSDs

Geekworm X1004 specifications:

  • Supported SBC – Raspberry Pi 5 only
  • Chipset – ASMedia ASM1182e PCI express packet switch with 1x PCIe x1 Gen2 upstream port and 2x PCIe x 1 Gen2 downstream ports
  • 2x M.2 sockets for up to 8TB storage capacity (4TB+4TB) with M.2 NVMe solid-state drives (2280 size only)
  • Max data transfers – Up to 5 Gbps PCIe 2.0, up to 8Gbps with PCIe 3.0 (note: this seems impossible with the ASM1182e)
  • Host interface – Raspberry Pi 5 PCIe FFC connector (30mm FFC cable provided) and 40-pin GPIO header
  • Power Management
    • 5V DC via 40-pin GPIO header
    • 2x DC/DC step-down converters delivering a maximum of 3.5A+3.5A to power SSDs
    • compatible with the HAT+ standby power state, automatically turning off when the Raspberry Pi 5 shuts down.
  • Dimensions – 87mm x 57mm

SupTronics RPi5-PIP NVMe Shield X1004

The Geekworm X1004 HAT+ expansion board looks to be made by SupTronics Technologies and is also called the “RPi5-PIP NVMe Shield X1004”. The PCIe switch is not named in the specifications provided by the company, but if I read that correctly that would be the ASM1182e PCIe 2.0 x1 switch. If the information on the website is correct then PCIe Gen 3 is not an option meaning the top speed should be limited to 5 Gbps, or in practical terms we would have 400MB/s shared between the two storage devices (200MB/s if both are used simultaneously).

Some people are using an SSD instead of a microSD card for booting the OS on the Raspberry Pi, but the ASM1182e is not supported by the Raspberry Pi 5 firmware at this time (and likely never will be), so you’d need a microSD card to boot Raspberry Pi OS, Ubuntu 23.10 or other supported OS, and the two SSDs can only be used for storage as highlighted on Geekworm’s wiki. You might as well connect a cheaper 8TB USB 3.0 hard drive that should deliver acceptable sequential read and write speed (e.g. 160 MB/s for a Seagate Desktop Drive), although I reckon random I/O will be much slower, most people won’t care for storing data, as opposed to running the OS from there.

Geekworm X1004 dual NVMe SSD HAT plus boardIf despite the caveats mentioned above, you’d still think it’s something you’d like to try, the Geekworm X1004 can be purchased on Aliexpress for $42.99 plus shipping, and should soon be offered on Amazon with the other M.2 NVMe HAT+ boards. It’s quite more expensive than other SSD HAT+ for the Raspberry Pi due to the PCIe switch.

Via Liliputing and MiniMachines

Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK Pi 4C Plus
Subscribe
Notify of
guest
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
7 Comments
oldest
newest
Willy
2 months ago

At first I didn’t understand why you said the chip was not supported by the Pi5 firmware, since it’s just a bridge and doesn’t require drivers, but in fact it’s likely just that the current firmware doesn’t support enumerating NVME devices behind a bridge. I find it odd not to support bridges when you bring a single PCIe lane, as it’s definitely expected that almost anything will be placed behind a bridge. Also I noticed that the product vendor suggests 5G/8G for the transfer speeds, but it’s clear that ASM1182e is only gen2 and 5G. Unfortunately Asmedia doesn’t seem to… Read more »

tkaiser
tkaiser
2 months ago

>  it’s likely just that the current firmware doesn’t support enumerating NVME devices behind a bridge

Exactly. The excuse with CM4 was lack of space in the proprietary bootloader, the RPi 5 excuse is still waiting to be announced: https://github.com/raspberrypi/firmware/issues/1833

But maybe it’s just market segmentation since an upcoming CM5 might expose another externally available PCIe lane…

Hedda
Hedda
2 months ago

Google Coral TPU AI accelerator + NvME combination would be great if this allowed it?

Teckno
Teckno
2 months ago

The x1003 from Geekworm has a few reviews about it simply not working, so perhaps wait for some third party reviews to see if this works at all.

Jeff Geerling
2 months ago

Some vendors seem to be in the “throw things at the wall and see what sticks” stage. One thing I’ve noticed is many vendors are building products with simple/cheap FFC cables, which are prone to errors with many devices (most notably, the Coral TPU requires extremely strict PCIe timing, and those cables are terrible for that).

I’ve been slow to recommend new boards, even though they’ve been coming out at a fever pitch lately, mostly because I can’t recommend one to someone if I haven’t personally verified the thing works!

Paolo Redaelli
2 months ago

I guess that CPU cooling will become quite a problem. Such additions should be put below the board

Conor Stewart
2 months ago

I think the hole in the PCB may be to allow airflow, I have seen it done on a few of these NVME boards now that mount on top. The hole and space under the NVME drive might provide enough airflow for the pi5.

Khadas VIM4 SBC