ODROID-H3/H4 x86 SBCs get M.2 PCIe Gen 3 x4 expansion cards with two or four M.2 sockets

ODROID-H3 and ODROID-H4 x86 single board computers have gotten two affordable M.2 expansion cards with the M.2 2×2 card adding two PCIe Gen 3 x2 slots and the M.2 4×1 adding four PCIe Gen 3 x1 slots (ODROID-H4 only) to the Intel SBCs.

We’ve seen plenty of PCIe HAT+ boards for the Raspberry Pi 5 since the launch of the Arm SBC last year, but it’s limited by its PCIe Gen2/Gen3 x1 interfaces, and Hardkernel now provides two new M.2 cards leveraging the M.2 PCIe Gen3 x4 socket of the ODROID-H3/H4 family allowing users to add up to four M.2 PCIe modules for storage, wired or wireless connectivity, and/or AI acceleration.

ODROID-H4 M.2 4x1 card
ODROID-H4 fitted with M.2 4×1 card and various M.2 expansion modules from left to right: 5GbE M.2  adapter, Google Coral Edge TPU module, M.2 SSD, and WiFi 6E module.

M.2 2×2 card  for ODROID-H3 and H4 series

The M.2 2×2 card also named “M.2 – NVME” adds two M.2 Key-M PCIe sockets for 2280 size modules with each having a PCIe 3.0 x2 interface supporting up to 16GT/s.

ODROID M.2 card 2x2

There are two mounting holes that match the mounting threads on the ODROID-H3/H4 SBC. The image below shows it mounted to the board and fitted with two M.2 2280 SSDs.

M.2 card 2x2 ODROID-H4

Hardkernel measured the performance of the SSDs at 1600 to 1800MB/s or half of the PCIe Gen 3 x4 bandwidth as expected. Besides storage devices, users can install other M.2 modules including Key-E or Key-B wireless modules through adapters as shown in the very first photo in this article.

M.2 4×1 card for ODROID-H4 series only

The M.2 4×1 card (aka M.2 – 4NVME) uses the same principle but with four M.2 sockets for 2280-sized PCIe devices with each slot limited to one PCIe 3.0 lane at 8GT/s.

ODROID M.2 card 4x1

The M.2 4×1 expansion card is only supported on the ODROID-H4 because its larger footprint does not fit on the ODROID-H3. However, it could still work by using an M.2 male/female extension cable on either the ODROID-H3 or ODROID-H2.  The image below shows four NVMe SSDs connected to the ODROID-H4 SBC.

M.2 card 4x1 on ODROID-H4 with four NVMe SSD
M.2 card 4×1 on ODROID-H4 with four NVMe SSDs

Due to space constraints, the M.2 SSDs on the top and bottom overlap the ones in the middle. It works unless you plan to add a heatsink on top of the SSD, and some wireless and Ethernet modules may not fit in the middle. That’s why Hardkernel installed those on the top and bottom (left/right) sockets in the top photo. The performance further decreased due to the PCIe Gen3 x1 interface per socket, and Hardkernel measured 800 to 900MB/s for each SSD connector that way.

BIOS update required

The PCIe Gen 3 configuration (bifurcation) is embedded in the Intel microcode merged into the BIOS bin file at build time, so the different bifurcation options can’t be selected at boot time, and users need to flash a different version of the BIOS.

The M.2 4×1 card requires the same BIOS version as the NetCard 2.5 GbE with 4 bifurcated x1 lanes, and the M.2 2×2 card requires a BIOS that provides a 2×2 bifurcation. You’ll find the relevant BIOS and instructions on the relevant Wiki pages for the ODROID-H3 and ODROID-H4.

The M.2 2×2 card sells for $10 on the Hardkernel store, and the M.2 4×1 card goes for $15. Those are inexpensive, but depending on your country, the shipping fee may be pricey, so you may consider waiting for availability in a local distributor. Additional information may be found in the announcement on ODROID forums.

Thanks to Domi for the tip.

Share this:

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

ROCK 5 ITX RK3588 mini-ITX motherboard
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.
10 Comments
oldest
newest
Eliot
Eliot
1 month ago

Sorry, I’m a bit dumb on PCI-E maths.

Could the 4 slot expansion card allow for two/three drives and a 10gbe nvme?

Willy
1 month ago

That’s the point where it would make more sense to place a PCIe switch on the board but that’s definitely not possible at this price tag. And as you mentioned, power draw can be quite an issue too, even in the current design with 4 SSDs.

Eliot
Eliot
1 month ago

Aha, ok, thanks!

It’s still got to be comparable, with slightly more grunt, to the friendly elec board. I think it would make for the perfect lower cost UHD media server, in many ways. Especially compared to something like that AsusTor NAS.

Eliot
Eliot
1 month ago

Also important to remember that the H4 can host on SATA drives, also.

mobilejad
1 month ago

So all of this magic is done using pcie 3.0, how different would things be if the mini pc got a generational update with a newer cpu and pcie 4.0?

TLS
TLS
1 month ago

No difference, except the PCIe gen/speed per lane.

dmc
dmc
1 month ago

There are already few boards that work with bifurcation on pcie4, so there is nothing to worry 🙂

dmc
dmc
1 month ago

Same board for 2×2 bifurcation is available for Radxa ROCK 5B on forum as ready to order pcb schematics and BOM. On ARM only supported kernel is needed (not all have bifurcation enabled).

Khadas VIM4 SBC