From 52Pi Wiki
Jump to navigation Jump to search

CN01 M.2 M-key PCIe3.0


This is a compact PCIE 3.0x1 expansion board specifically designed for the PCIe interface of the Raspberry Pi 5. It features an M.2 M-key specification, ensuring compatibility with a wide range of SSD devices.


  • Compact Design : The board is small and lightweight, making it ideal for space-constrained projects.
  • PCIE 3.0x1 Interface : Supports the latest PCIe 3.0 standard with a single lane, offering high-speed data transfer capabilities.
  • M.2 M-key Specification : Compatible with a variety of SSDs, providing flexibility in storage options.
  • Aluminum Alloy Enclosure : The enclosure not only protects the SSD but also enhances heat dissipation, ensuring stable operation.
  • Enhanced Cooling : The design includes effective thermal management to prevent overheating and prolong the life of the SSD.
  • Plug-and-Play : Easy to install and use, requiring no additional drivers for most operating systems.
  • High Compatibility : Designed to work seamlessly with Raspberry Pi 5, enhancing its functionality with additional storage or network capabilities.


  • Form Factor: Compact PCIe 3.0x1 expansion board for Raspberry Pi 5.
  • Interface Type: PCIe 3.0, 1-lane interface.
  • M.2 Slot Type: M-key (Key M) supporting both NVMe and SATA protocols.
  • SSD Size Compatibility:
2230 (22mm width and 30mm length)
2242 (22mm width and 42mm length)
2260 (22mm width and 60mm length)
2280 (22mm width and 80mm length)
  • SSD Power supply: Via PogoPin contact with soldering points on Raspberry Pi 5's GPIO.
  • Physical Dimensions: Dimensions tailored to fit the Raspberry Pi 5 without obstruction.
  • Material: Durable aluminum alloy casing for enhanced protection and heat dissipation.
  • Heat Dissipation: Efficient cooling design to maintain optimal SSD performance.
  • Operating Temperature: Suitable temperature range for reliable operation.
  • Compatibility: Confirmed compatibility with various Raspberry Pi 5 models.
  • Mounting: Secure mounting solution included for attachment to the Raspberry Pi.
  • Connectors: Necessary PCIe and M.2 connectors for SSD integration.
  • Software Requirements: Modify /boot/firmware/config.txt and adding `dtparam=pciex1` and `dtparam=pciex1_gen=3`



How to assemble it?


How to enable PCIe on Raspberry Pi 5 ?

We assume that you are using Raspberry Pi OS 64bit on Raspberry Pi 5. (codename: bookworm) 
  • Step 1. Modify /boot/firmware/config.txt file and adding following parameters:
dtparam=pciex1_gen=3  # Optional, force to use gen3 speed on NVMe SSD, if can support this function is depends on your NVMe SSD's feature.
Config.txt file.png

  • Step 2. Save it and reboot your Raspberry Pi 5 to take effect.

Disk Operations

  • Check if SSD drive has been recognized by Raspberry Pi 5.
Check disk infor.png

  • Make sure the PCIe devices information

  • Create Partition
sudo fdisk /dev/nvme0n1 

create one partition by input following characters:

n -> p -> 1 > Enter -> Enter -> w  -> Enter 

n - new p - primary partition 1 - partition number Enter -> first cylinder Enter -> take the whole disk as last cylinder. w - write the partition table to SSD q - quit

  • Format the partition
sudo mkfs.ext4 /dev/nvme0n1p1 
  • Mount Partition to Raspberry Pi 5
 mkdir -pv disk1 
sudo mount -t ext4 /dev/nvme0n1p1 /home/pi/disk1 -v 
  • Check if the partition has been mounted properly.
df -Th

  • Automout the partition by modify /etc/fstab file, you can use vim or nano editor to modify this file /etc/fstab.
sudo vim.tiny /etc/fstab

NOTE: Please take care of the modifications due to wrong parameters may cause the system corrupted.

/dev/nvme0n1p1   ext4   /home/pi/disk1    defaults,noatime   0  0 

Save it and try to auto mount

sudo mount -a 
  • Check it by using
df -Th 

Package Includes



  • CN01 M.2 M-key PCIe3.0 adapter board, KZ-0067 pcie adapter, PCIe3.0x1.