#raspberry-pi #cm5 #carrier-board #nvme #homelab
# Overview
Buying guide for Raspberry Pi Compute Module 5 (CM5) carrier / IO boards, with a focus on M.2 NVMe support. Written around the specific module being considered: **CM5002000** — 2GB RAM, **no wireless**, **no eMMC (Lite)**.
Two consequences drive every decision below:
- **Lite = no onboard storage.** The carrier must supply boot media. microSD works to bootstrap, but NVMe is the real target.
- **No wireless variant = no onboard WiFi/BT at all.** Plan on wired Ethernet, or budget a USB dongle. The CM4/CM5 antenna kit is irrelevant on this SKU.
# Design
## PCIe constraints (applies to every board below)
- CM5 exposes a **single PCIe x1 lane**, same as Raspberry Pi 5.
- Defaults to **Gen 2** (~450 MB/s real-world).
- **Gen 3** (~900 MB/s) is available but officially unsupported — add `dtparam=pciex1_gen=3` to `/boot/firmware/config.txt`.
- Multi-slot boards (e.g. Geekworm X1502) put a PCIe switch behind that one lane. Those are a **capacity** play, not a bandwidth play — four drives still share ~450 MB/s.
## M.2 physical sizes
Not all boards take a full 2280 stick. Check before buying a drive:
| Board family | M.2 sizes |
|---|---|
| Official CM5 IO Board | 2230 / 2242 / 2260 / 2280 |
| Waveshare CM5-IO-BASE-A/B | 2230 / 2242 / 2260 / 2280 |
| Waveshare Mini Base Board (Pi 5 footprint) | 2230 / 2242 only |
| Seeed CM5 MINIMA | 2242 only |
| Pineboards Modulo5 IO PoE+ | 2280 |
# Resources
## Board options
Prices verified 2026-09-11.
| Board | Price | NVMe | Notes |
|---|---|---|---|
| [Official RPi CM5 IO Board](https://www.raspberrypi.com/products/compute-module-5-io-board/) | $20–31 | M.2 M-key, 2230–2280 | 160×90mm. microSD slot for Lite, 2×full-size HDMI, 2×USB3, GbE + PoE+ HAT+, RTC socket, power button, fan header. In production until at least 2036. **Get Rev 2** — see [[Raspberry Pi CM5 IO Board Rev 2]] |
| [Waveshare CM5-IO-BASE-B](https://www.waveshare.com/cm5-io-base-b.htm) | $23.99 | M.2 M-key | Credit-card sized. 2×USB3.2 Gen1 + 2×USB2, dual HDMI, RTC, microSD, 40-pin, onboard EEPROM + ATSHA204 crypto chip. $28.95 at PiShop as "Mini Base Board (B)" |
| [Waveshare CM5-IO-BASE-A](https://www.waveshare.com/cm5-io-base-a.htm) | $19.99 | M.2 M-key | Same idea as B, without the EEPROM/crypto chip. $26.95 at PiShop as "Mini Base Board (A)" |
| [Seeed CM5 MINIMA](https://www.seeedstudio.com/CM5-MINIMA-p-6485.html) | $65 | M.2 2242 | 61×61mm — exactly CM5-sized. Open source (CERN-OHL-S v2). USB-C PD, GbE, HDMI, CSI/DSI. Takes a Hailo AI module instead of an SSD if wanted. $55 at 10+ |
| [Geekworm X1502](https://geekworm.com/products/x1502) | $72 | **4× M.2** | 1GbE + 2.5GbE. Up to 4×4TB. All four share the single Gen2 lane |
| [Pineboards Modulo5 IO PoE+](https://pineboards.io/products/modulo5-io-poe) | ~€47 ⚠️ | M.2 2280 | Official IO board layout + UK-made PoE+ (25W continuous / 30W peak). ==Price unverifiable — see vendor warning below== |
| [Pineboards Modulo5 Basic](https://pineboards.io/products/modulo5-basic) | ~€35 ⚠️ | via PCIe HAT | Turns CM5 into a **Pi 5 form-factor board** with a PCIe FFC connector — NVMe comes from a HAT, not onboard. ==Price unverifiable — see vendor warning below== |
| [Waveshare CM5-PoE-BASE-A](https://www.waveshare.com/cm5-poe-base-a.htm) | $31.99 | M.2 2230–2280 | 802.3af/at PoE, dual HDMI, USB 3.2, microSD. To $44.99 boxed with case + PSU |
| [Waveshare CM5-DUAL-ETH-BASE](https://www.waveshare.com/cm5-dual-eth-base.htm) | $54.99 | M.2 M-key | 1GbE + 2.5GbE, dual 4K HDMI, dual MIPI, 40-pin. Router/firewall candidate. To $69.99 boxed |
| [Waveshare CM5-DUAL-ETH-4G/5G-BASE](https://www.waveshare.com/cm5-dual-eth-4g-5g-base.htm) | $55.99 | M.2 SSD + M.2 WWAN | Adds a second M.2 for a 4G/5G modem. To $69.99 boxed |
### Official IO board — it's worth shopping around
Same board, three prices as of 2026-09-11:
| Reseller | Price |
|---|---|
| [CanaKit](https://www.canakit.com/raspberry-pi-compute-module-5-io-board.html) | $20.00 |
| [Seeed Studio](https://www.seeedstudio.com/Raspberry-Pi-Compute-Module-5-IO-Board-p-6303.html) | $20.00 |
| [PiShop US](https://www.pishop.us/product/raspberry-pi-compute-module-5-io-board-rev-2/) | $26.95 |
| [SparkFun](https://www.sparkfun.com/raspberry-pi-compute-module-5-io-board.html) | $31.00 |
raspberrypi.com no longer shows a static price on the product page — it hands off to a reseller widget.
### ⚠️ Pineboards vendor warning (2026-09-11)
`pineboards.io` does not resolve to the Pineboards store. It redirects to an unrelated Indonesian gambling site. This is not a maintenance page — the domain appears compromised, expired, or hijacked. **Do not enter payment details there.** If the Modulo5 boards are still wanted, source them through a known reseller (The Pi Hut, Welectron, Botland) rather than the vendor domain.
## The module itself
**⚠️ Module pricing has risen sharply since this note was written.** The CM5002000 was ~$34 in August 2026; it is **$67.50** as of 2026-09-11 at both Seeed and PiShop. The $45 figure quoted in most launch coverage is the November 2024 launch floor and is long stale. This changes the economics of the whole build — the carrier is now a small fraction of the cost, so optimising for a $7 board difference is false economy.
- [Seeed — CM5002000 (2GB / no wireless / Lite)](https://www.seeedstudio.com/Raspberry-Pi-Compute-Module-CM5002000-p-6271.html) — **$67.50** (also $67.50 at [PiShop](https://www.pishop.us/product/raspberry-pi-compute-module-5-2gb-ram-lite-cm5002000/))
- [Seeed — CM5 IO Board](https://www.seeedstudio.com/Raspberry-Pi-Compute-Module-5-IO-Board-p-6303.html) — $20, bundled as an add-on on the module page
- [Seeed — CM5 IO Case](https://www.seeedstudio.com/Raspberry-Pi-Compute-Module-5-IO-Case-p-6302.html) — $15
- [Seeed — CM5 Passive Cooler](https://www.seeedstudio.com/Raspberry-Pi-Compute-Module-5-Passive-Cooler-p-6312.html) — $5
### SKU ladder (PiShop US, 2026-09-11)
The 32-SKU matrix is RAM × eMMC × wireless. Wireless is a flat **+$5**. eMMC is **+$25** for 16GB, **+$35** for 32GB or 64GB (32 and 64 are the same price — always take the 64).
| RAM | Lite | +16GB eMMC | +32GB eMMC | +64GB eMMC |
|---|---|---|---|---|
| 2GB | $67.50 | $92.50 | $102.50 | $102.50 |
| 4GB | $100.00 | $125.00 | $135.00 | $135.00 |
| 8GB | $165.00 | $190.00 | $200.00 | $200.00 |
| 16GB | $335.00 | $360.00 | $370.00 | $370.00 |
Add $5 to any cell for the wireless variant. Full listing: [PiShop CM5 category](https://www.pishop.us/product-category/raspberry-pi/raspberry-pi-boards/compute-modules/compute-module-5/)
RAM is where the money goes — 2GB → 4GB is +$32.50, 4GB → 8GB is +$65, 8GB → 16GB is +$170.
## US / UK resellers
- [PiShop US — Waveshare Mini Base Board (A)](https://www.pishop.us/product/mini-base-board-a-for-raspberry-pi-compute-module-5/)
- [PiShop US — Waveshare Mini Base Board (B)](https://www.pishop.us/product/mini-base-board-b-designed-for-raspberry-pi-cm5-onboard-eeprom-encryption-chip/)
- [The Pi Hut — Mini Base Board (B) for CM5](https://thepihut.com/products/mini-base-board-b-for-cm5)
## Documentation
- [CM5 IO Board datasheet (PDF)](https://datasheets.raspberrypi.com/cm5/cm5io-datasheet.pdf)
- [CM5 IO Board product brief (PDF)](https://datasheets.raspberrypi.com/cm5/cm5io-product-brief.pdf)
- [CM5 module datasheet (PDF)](https://datasheets.raspberrypi.com/cm5/cm5-datasheet.pdf)
- [Waveshare CM5-IO-BASE-B wiki](https://www.waveshare.com/wiki/CM5-IO-BASE-B) — best step-by-step for NVMe partition/mount/boot
- [RPi Compute Module hardware docs](https://www.raspberrypi.com/documentation/computers/compute-module.html)
- [Raspberry Pi PCIe Database — CM5 boards](https://pipci.jeffgeerling.com/boards_cm/)
- [Bootloader BOOT_ORDER reference](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-bootloader-configuration)
# Decisions
- **Default pick: official CM5 IO Board Rev 2.** $20 at CanaKit or Seeed, best documented, fully open design files, guaranteed production through 2036, full-size M.2 up to 2280, microSD for Lite bootstrapping. Hard to justify anything else for a first build. Specify **Rev 2** for the FAN-output pull-up (Rev 1 will spin some third-party fans continuously after shutdown); mechanically the two revisions are identical. Detail note: [[Raspberry Pi CM5 IO Board Rev 2]]
- **If space matters: Waveshare CM5-IO-BASE-B** at ~$24 — credit-card footprint with the same NVMe capability plus RTC.
- **If Pi 5 accessory compatibility matters:** Pineboards Modulo5 Basic gives the Pi 5 footprint and PCIe HAT connector, but NVMe then costs an extra HAT. The Waveshare Mini Base boards keep NVMe onboard but cap at 2242.
- **Skip the multi-slot boards** unless the goal is raw capacity — they don't add bandwidth.
- **PoE variants** only earn their premium if the deployment location has no convenient power.
# Configuration
## Enable PCIe / NVMe
```bash
sudo nano /boot/firmware/config.txt
```
```ini
# Enable the PCIe x1 lane (some carriers need this explicitly)
dtparam=pciex1
# Optional: force Gen 3 (~900 MB/s). Unofficial but generally stable.
dtparam=pciex1_gen=3
```
Reboot, then confirm the drive appears:
```bash
lsblk
sudo fdisk -l
```
## Boot from NVMe on a Lite module
1. Boot from microSD first and verify the SSD is detected.
2. Flash Raspberry Pi OS to the NVMe (Imager, or `dd` from the running system).
3. Set the boot order — either via `sudo raspi-config` → Boot Options, or directly:
```bash
sudo rpi-eeprom-config --edit
# change BOOT_ORDER=0xf41 to BOOT_ORDER=0xf416
```
4. Reboot, then pull the microSD card.
## Notes
- CM5 requires Raspberry Pi OS **Bookworm 2024-11-19 or later**. Older images will not boot.
- Waveshare boards limit total USB output to **2A** across all ports.
# TODO
- ==Decide between official CM5 IO Board (full-size, 2280) and CM5-IO-BASE-B (compact, RTC) — depends on whether this ends up rack-mounted or on a shelf==
- ==Confirm which NVMe drive to pair — 2242 vs 2280 decision is locked in by the board choice==
- ==2GB RAM is the low end; verify it's enough for the intended workload before ordering==
- ==No onboard WiFi on this SKU — confirm wired Ethernet is available at the deployment location==
- ~~pipci lists a "Waveshare CM5 Base A/B" in Pi model B footprint that doesn't appear under that name in Waveshare's own catalog~~ (resolved 2026-09-11) — confirmed the same product. pipci groups Waveshare's CM5-IO-BASE-A and -B under the single entry "Waveshare CM5 Base"; PiShop and The Pi Hut sell them as "Mini Base Board A/B". Three names, one board family. See [[Raspberry Pi CM5 Carrier Board Landscape]] for the full naming-collision list
# References
- [[Raspberry Pi CM5 Carrier Board Landscape]] — full 42-board survey across all categories, flagging independent coverage and open design files
- [[SATA Storage on Raspberry Pi 5 and CM5]] — SATA HATs, M.2-to-SATA cards, and the USB route
- [Raspberry Pi PCIe Database (geerlingguy)](https://pipci.jeffgeerling.com/)
- [CNX Software — CM5 PoE carrier boards](https://www.cnx-software.com/2024/12/17/raspberry-pi-cm5-gets-carrier-boards-poe-poe-plus/)
- [CNX Software — CM5 MINIMA](https://www.cnx-software.com/2025/07/31/cm5-minima-raspberry-pi-cm5-carrier-board-features-m-2-2230-2242-socket-for-hailo-ai-accelerator-or-nvme-ssd/)
- [Pineboards — Introducing the Modulo series](https://pineboards.io/blogs/news/introducing-the-modulo-series-our-compute-module-carrier-boards)
- [Electromaker — Which CM5 variant should you buy?](https://www.electromaker.io/blog/article/raspberry-pi-compute-module-5-cm5-which-variant-should-you-buy)
- [bret.dk — CM5 review](https://bret.dk/raspberry-pi-compute-module-5-review-cooler-faster-better/)