PCIE TO 4-CH NVME Board (B)
| ||
Overview
Overview
PCIe To 4-Ch M.2 M key adapter board is specifically designed for Raspberry Pi 5, compatible with M.2 hard drives of 2230 / 2242 / 2260 / 2280 sizes. It supports Gen2 mode only, and supports booting PI5 from SSD
Features
- Supports NVMe protocol M.2 interface hard drives, featuring high-speed read and write, and high work efficiency
- PCI-E×1 only supports Gen2
- Only supports PI5 and some CM5 baseboards with PCIe 16PIN
- Compatible with M.2 hard drives of 2230 / 2242 / 2260 / 2280 sizes
- Onboard operational indicator lights, the PWR is continuously lit when powered on, and the ACT blinks during read and write operations
- Support NVME SSD Boot
- Can supply power to PI5
Note
- Raspberry Pi does not support NVME boot by default, and the boot needs to be modified
- PI5, NVMe hard drive, power chip, and expansion chip all generate heat. If they need to be installed in a closed box, please add sufficient heat dissipation
- The onboard PWR LED indicator light will not light up when the PCIe cable is not connected, and is controlled by the PCIe power enable signal. The 5V power supply is not controlled
Usage Instructions
Hardware Connection
Pay attention to the direction of the cable, and the connection is shown in the figure:
Power Supply
Onboard DC power supply, supports 7~24V power supply
Mount
1. Enable PCIE interface
PI5B defaults to enabling the PCIE interface. If it fails to boot, add the following to /boot/firmware/config.txt: dtparam=pciex1
2. The module only supports PCIE gen2 x1
3. After the modification, reboot the PI5, and the device can be recognized
As shown in the figure below, the four Non-Volatile memory controllers are identified as SSD solid-state controllers, and the Ethernet controller is Raspberry Pi RP1 chipOr use dmesg | grep pci to view PCIe logs Use lspci -vvv to view PCIe card details
4. Partition, skip this step if you have partitioned and formatted on other platforms (Note: partitioning will delete all data on the SSD, proceed with caution)
Lsblk This command is executed to view the disk (if you want to see the details, run the sudo fdisk -l command)Partition: sudo fdisk /dev/nvme0n1 The device number is the total device number, do not add p1, that is just a partition How to use the partitioning tool fdisk: n New partition q Quit without saving p Print the partition table m Print the selection menu D Delete the partition w Save and exit t Modify the ID number Add the partition and execute n, then save and exit with w
5. Format
sudo mkfs. Execute the command and press Tab key, you will see a lot of different suffixes, and the different suffixes are the formats you need to formatIf I want to format it in ext4 file format, then execute the command: sudo mkfs.ext4 /dev/nvme0n1p1 Wait a moment, once all "done" appear as below, it indicates that the formatting is completed
![]()
6. Mount
Create a mount directory sudo mkdir toshiba Mount the device sudo mount /dev/nvme0n1p1 ./toshiba Check the disk status df -h
Read/Write Test
Enter the directory where the disk is mounted
cd toshiba
- Free up the memory
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
- Copy Raspberry Pi memory content to the hard disk (write)
sudo dd if=/dev/zero of=./test_write count=2000 bs=1024k
- Copy the hard drive content to the Raspberry Pi memory (/etc/fstab read )
sudo dd if=./test_write of=/dev/null count=2000 bs=1024k
- Note: The test results vary for different cards and environments. The Raspberry Pi is significantly affected. If you want to test accurate performance, use a PC for the test
Auto Mount
Test shows there's no issue. If it's not required to be used as a system disk, but only for expanding the disk, set it to auto-mount
sudo nano /etc/fstab #Add at the end /dev/nvme0n1p1 /home/pi/toshiba ext4 defaults 0 0 #/dev/nvme0n1p1 is the device name, /home/pi/toshiba refers to mounting to a directory, ext4 is the file system type, defaults uses the default mount option #Make the changes take effect (reboot only after testing, otherwise it will fail to mount and boot) sudo mount -a #Then reboot Check the device with lsblk
NVMe SSD Boot
1. Boot the Raspberry Pi with a TF card first, mount and test it, and make sure the hardware can work properly
2. Use a TF card to boot Raspberry Pi and modify the boot. Modify the BOOT_ORDER in the Raspberry Pi boot loader configuration:
sudo rpi-eeprom-config --edit
Add:
NVME_CONTROLLER=1
Modify:
Modify BOOT_ORDER=0xf41 to BOOT_ORDER=0xf416For more information, please refer to BOOT_ORDER If you want to prioritize TF card boot, change it to BOOT_ORDER=0xf461 Note: The board has two or more M.2 interfaces, with one used for booting, and it is recommended to connect the SSD for booting to NVME1, with priority given to NVME1
3. Reboot Raspberry Pi:
If you find you can't modify it multiple times, please reconnect to the network and then try to modify it (wait for the network to self-calibrate), or modify the file after setting the correct time
4. Flash the system to NVME, then connect to the board, remove the TF card and power it on again
Resources
FAQ
Support
Technical Support
If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)