X1001
Contents
Overview
The X1001 V1.1 shield is an NVME M2 SSD PIP (PCIe Peripheral Board) for the Raspberry Pi 5 that uses the new PCIE interface of the Raspberry Pi 5 to utilise the NVME M2 SSDs for fast data transfers and ultra-fast booting.
This shield follows the new "PIP" design guideline from Raspberry Pi fundation ensuring that it will be easy to use and be supported long term by updates to Raspberry Pi OS - though it is very early days and things are improving rapidly there!
Geekworm PCIe to NVME Sets:
After the release of the Raspberry Pi AI Kit, we tested four PIPs: X1001, X1004, X1011, and M901. X1001, X1004, and M901 all support the hailo-8 ai accelerator, but X1011 does not.
It should be noted that X1004 uses ASMedia ASM1182e PCIe switch, and X1011 uses ASM1184e, they can't support PCIe Gen 3 speed, so even though we forced to enable PCIe Gen 3.0 setting in Raspberry Pi 5, it is limited by ASMedia ASM1182e PCIe switch, and speed is still PCIe Gen 2.0 5Gbps speed. when you use an hailo-8 ai accelerator, Raspberry Pi Fundation highly recommends using PCIe 3.0 to achieve best performance with your AI Kit.
Our tentative conclusions are as follows:
- If you need to use hailo-8 ai accelerator with high performance, it is recommended to use X1015/X1002/X1003/M901/ the official M.2 HAT+ etc. When choosing these PIP boards, you should focus on whether there is a conflict between the camera cable and the PIP board installation, and enable PCIe3.0 to use hailo-8 ai accelerator. At the same time, you need to prepare an SD card as the system disk.
- If you don't care about the high performance brought by PCIe 3.0, then you can consider using X1004, so that you can use any socket of X1004 to install NVME SSD as the system disk, and another socket to install hailo-8 ai accelerator, so as to have both.
Model | Compatible with | Position | NVMe M2 SSD Length Support | Matching Case | Matching Cooler | Support NVMe Boot | Support PCIe 3.0 | Support Hailo-8 AI Accelerator |
---|---|---|---|---|---|---|---|---|
X1000 | Raspberry Pi 5 | Top | 2230/2242 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Not tested |
X1001 | Raspberry Pi 5 | Top | 2230/2242/2260/2280 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Yes |
X1002 | Raspberry Pi 5 | Bottom | 2230/2242/2260/2280 | P580 / P580-V2 |
Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | NO |
X1003 | Raspberry Pi 5 | Top | 2230/2242 | P579 / P425 | Official Cooler / H501 Only | Yes | - | Not tested |
X1004 | Raspberry Pi 5 | Top | Dual ssd: 2280 | P579-V2 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes (Requires EEPROM 2024/05/17 and later version) | NO | Yes |
X1015 | Raspberry Pi 5 | Top | 2230/2242/2260/2280 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Yes |
X1005 | Raspberry Pi 5 | Bottom | Dual ssd: 2230/2242/2260/2280 | P580-V2 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes (Requires EEPROM 2024/05/17 and later version) | NO | Yes |
X1011 | Raspberry Pi 5 | Bottom | 4 ssds: 2230/2242/2260/2280 | X1011-C1 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes (eeprom 2024/05/17 and later version) | NO | NO |
X1012 | Raspberry Pi 5 | Top | 2230/2242/2260/2280 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Not tested |
M901 | Raspberry Pi 5 | Top | 2230/2242/2260/2280 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Yes |
Q100 | Raspberry Pi 5 | Top | 2242 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Not tested |
Q200 | Raspberry Pi 5 | Top | Dual ssd: 2280 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | NO | - | Not tested |
M300 | Raspberry Pi 5 | Top | 2230/2242 | P579 | Official Cooler / Argon THRML Cooler / H505/H501 | Yes | - | Not tested |
M400 | Raspberry Pi 5 | Top | 2230/2242/2280 | P579 | Official Cooler/ Argon THRML Cooler / H505/H501 | Yes | - | Not tested |
Important Notes
NVMe SSD Incompatibility List
We recommend avoiding the following NVMe SSD drives which is equipped with a Phison controller due to their proven incompatibility:
- WD Blue SN550 series (Solved! Refer to New rpi-eeprom-update 2024-01-24 WD Blue SN550 nvme works now.)
- WD Blue SN580 series
- WD Green SN350 series (Solved! Refer to NVMe_SSD_boot_with_the_Raspberry_Pi_5#comment-4602)
- WD Black SN850 series
- WD Black SN770
- WD SN740
- Inland tn446 nvme drive
- Corsair MP600 SSD
- Micron 2450 SSD (Can be recognised but not support boot from NVME)
- Other NVMe SSD drivers equipped with the same Phison controller
These specific models have demonstrated compatibility issues, and it is advisable to avoid them when considering NVMe SSD options for the X10xx series NVMe shield. You can run "lspci" command to check the controller brand of the SSD.
We confirm that the following SSDs are incompatible:
- Micron 2200 256GB M.2 NVMe Gen3 x4, MODEL: MTFDHBA256TCH, The SSD is recognized but I cannot boot from it.
Also note:
- Compatible with M.2 NVMe SSDs only, Not compatible with M.2 SATA SSDs, M.2 PCIe AHCI SSDs, or other M.2 non-NVMe devices
- Older NVMe drives with less efficient flash media may not perform as well as newer drives
- New NVMe SSDs are not partitioned and will need to be both partitioned and formatted when first connected to the Raspberry Pi before they will be accessed in the Explorer.
- We get feedback from customers that Polaris Controller will also have compatibility problems. Please replace the other SSD test if it not work, whether it is compatible with the Raspberry Pi 5 does not depend on the X100X series boards
- NVMEs using the MAP1202 controller may not support PCIe Gen 2, and must be forced to enable PCIe Gen 3 in order to be recognised. This is due to the fact that the controller is not backward compatible with PCIe Gen 2, and NVMEs using this controller will have compatibility issues, and are not recommended for use. Can refer to https://zhuanlan.zhihu.com/p/644984347
PS: There is also feedback from buyers that even NVME SSDs with Phison controller are supported after updating the latest firmware. Please refer to go to: X1001#comment-4638
Features
- Minimalist design, easy to install
- Compatible with other HAT shield;
- FFC is only 30mm length.
- Supports installation of official active coolers;
- PCIE LED Indicators: PCie - The LED will be on if the SSD is recognised;
- According the Raspberry Pi Foundation's specification for PCIE, we have redesigned and retained only the ACT LED indicator in the next production batch (starting December 20, 2023).On: Power OK/Standby,Flashing: Reading/Writing
- Supports 2230/2242/2260/2280 NVME M2 SSD.
- Can power the X1001 shield directly from the FFC PCIe ribbon (providing maximum 5W of continuous power)
- Integrated with XH2.54 5V power connector, just use it if you are using a ultra large capacity SSD if the current is not enough;
PS:
- Maximum current for pcie connector is 1A, and voltage is 5V
- If you find that the SSD is not working properly, it is possible that the power supply of SSD is not enough, then you need to check the current requirement of your SSD to decide whether power the SSD separately.
- The X1001 hardware has no limit on NVME SSD capacity, which is dependent on the Raspberry Pi OS.
How to Power
Can power the X1001 shield directly from the FFC PCIe ribbon (providing maximum 5W of continuous power)
Matching Case
Refer to P579/P579-V2
Test Reviews
By default the PCIe connector is not enabled. To enable it you should add the following option into /boot/firmware/config.txt and reboot:
sudo nano /boot/firmware/config.txt
Then add the following comment;
# Enable the PCIe External connector. dtparam=pciex1 # This line is an alias for above (you can use either/or to enable the port). dtparam=nvme
Press Ctrl-O, then enter, to write the change to the file.
Press Ctrl-X to exit nano (the editor).
And the connection is certified for Gen 2.0 speed (5 GT/sec), but you can force it to Gen 3.0 (10 GT/sec) if you add the following line after:
dtparam=pciex1_gen=3
You also can refer to official documentatio:Enabling PCIe
After I forced Gen 3.0 speeds, in my many tests I found that some NVMEs were able to run stably, but some NVMEs caused some problems: such as slow startup and running laggy, really really laggy. As the official statement says:
The Raspberry Pi 5 is not certified for Gen 3.0 speeds, and connections to PCIe devices at these speeds may be unstable.
Run the following command on Teminal window to test:
dd if=/dev/zero of=./Testingfile bs=100M count=10 oflag=direct dd if=./Testingfile of=/dev/zero bs=100M count=10 oflag=dsync
Nomral PCIE 2.0 test data with dd command;
Forced Gen 3.0 speeds test data with dd command:
Packing List
- 1 x X1001 V1.1 NVMe SSD Shield
- 1 x PCIe FFC Cable(30mm length)
- 3 x M2.5x17mm F/F Spacers
- 6 x M2.5x5mm Screws
- 1 x M2x4mm Screws (to fix M2 SSD)
- 1 x Copper pillar (Used to fix 2242/2230 SSDs, add it in April 2024)
NOTE:
The M2*4 screw is to fix M2 SSD;
User Manual
- X1001 hardware description: X1001 Hardware
- X1001 software tutorials: NVMe SSD boot with the Raspberry Pi 5
- Raspberry pi 5 pcie connector pin out
- Dimensions source file (DXF): File:X1001-V1.0.dxf - You can view it with Autodesk Viewer online
Video Guide
Installation Video of X1001: https://youtu.be/X1GxqLKpPfg
X1001/X1001/X1002 Test Video by leepsvideo https://youtu.be/XMA8e4r1AUQ
Which NVMe drives work with a Raspberry Pi 5? https://youtu.be/3mUgVTBmKio
Thanks for the test video by Computadoras y Sensores! https://youtu.be/DgIAfzBMTA0
Thanks for the video by Code Fallacy! https://youtu.be/IUxP31rNRY4
Thanks for the test video by Andy Yong! https://youtu.be/nq90S1vxfUU
FAQ
In fact, some PIPs such as X1001 / X1002 / X1003 / X1000 etc are just an extension of the Raspberry Pi 5 PCIe, and their own hardware functions are limited. If the OS configuration and PCle FFC cable faults can be ruled out, the normal operation of PCIe (recognizing and booting) depends more on the firmware and SSD compatibility. Since October 2023, the Raspberry Pi Foundation has been updating the bootloader version to solve similar problems. You can learn more from the link below.
Raspberry Pi5 bootloader EEPROM release notes
After several major version updates, the bootloader has basically solved the firmware issue, so the remaining is the OS configuration and SSD compatibility issues.
If you are using a very old SSD, if you are experiencing issues with it being recognised and not being able to boot, the first thing you should consider is replacing the NVME SSD.
Q1: Can't boot/recognize from NVMe SSD?
Q2: Don't recognize / boot from NVME SSD?
Q3: How to fix the 2230/2242/2260 SSD on X1001 or other PIP?
Q4. X1002 can't boot when install into the P580 case?
Q5: Which NVMe drives work with a Raspberry Pi 5?
Q6: Can they support gen3 PCIe speeds or only gen2?
Q7: Why can the SSD be recognized but not bootable?
Q8: Why does the LED of X1001/X1004 still blinking after issuing the shutdown command poweroff?
Enable comment auto-refresher
Anonymous user #43
Permalink |
Lisa
Anonymous user #42
Permalink |
Lisa
Anonymous user #41
Permalink |
Lisa
Anonymous user #41
Permalink |
Anonymous user #40
Permalink |
Lisa
Anonymous user #38
Permalink |
Lisa
Anonymous user #39
Anonymous user #36
Permalink |
Anonymous user #35
Permalink |
Anonymous user #33
Anonymous user #33
Permalink |
Lisa
Anonymous user #32
Permalink |
Lisa
Anonymous user #34
Anonymous user #31
Permalink |
Anonymous user #30
Permalink |
Anonymous user #29
Permalink |
Lisa
Anonymous user #28
Permalink |
Anonymous user #27
Permalink |
Anonymous user #26
Permalink |
Lisa
Anonymous user #25
Anonymous user #25
Lisa
Anonymous user #25
Permalink |
Lisa
Anonymous user #25
Anonymous user #24
Permalink |
Lisa
Anonymous user #23
Permalink |
Lisa
Anonymous user #22
Permalink |
Anonymous user #22
Harry
Anonymous user #22
Anonymous user #21
Permalink |
Anonymous user #19
Permalink |
Lisa
Anonymous user #18
Permalink |
Lisa
Anonymous user #17
Permalink |
Lisa
Anonymous user #16
Permalink |
Lisa
Anonymous user #15
Permalink |
Anonymous user #15
Anonymous user #14
Permalink |
Harry
Anonymous user #20
Anonymous user #20
Anonymous user #37
Anonymous user #37
Anonymous user #37
Lisa
Anonymous user #13
Permalink |
Lisa
Anonymous user #12
Permalink |
Lisa
Anonymous user #11
Permalink |
Anonymous user #10
Permalink |
Anonymous user #9
Permalink |
Anonymous user #9
Permalink |
Anonymous user #8
Permalink |
Lisa
Anonymous user #7
Permalink |
Anonymous user #6
Permalink |
Lisa
Anonymous user #5
Permalink |
Lisa
Anonymous user #4
Permalink |
Walker
Anonymous user #1
Permalink |
Anonymous user #6
Anonymous user #1
Permalink |
Nahumb
Permalink |
Anonymous user #3
Permalink |
Walker
Anonymous user #1
Permalink |
Anonymous user #2
Anonymous user #2
Walker