Q100
Contents
Overview
The Q100 is an expansion board similar to X1000. It has the function of PCIE to NVME ssd and also has an attached a 1.3" 240x240 Color TFT(ST7789 chipset), The TFT can display system and SSD status information, making it ideal for use as an additional display for NAS or media systems.
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 |
Features
- NVMe Base PCB with M.2 Slot (M-Key NVMe SSD with 2242 sizes)
- With ACT LED Indicator(Flashing: Reading /Writing)
- With 40pin GPIO Header,it can supply power from GPIO,avoiding the problem of insuggicient power supply for ultra-large capactiy SSDs
- 1.3" 240x240 Color TFT (ST7789 chipset),The TFT can display system and SSD status information, making it ideal for use as an additional display for NAS or media systems.
- 'PCIe Pipe' Flat Flex Shielded Cable(50mm length FFC Shielded Cable),shielded cables can provide better PCIE performance, effectively solve the interference problem between PCIE and WIFI, and provide a more stable data link for SSDs.
PIN OUT
PIN | Raspberry Pi Interface (BCM) | Description |
---|---|---|
SCLK | P11/SCLK | SPI clock line |
MOSI | P10/MOS | SPI data line |
CS | P8/CE0 | Chip selection |
DC | P25 | Data/Command control |
RST | NOT USE | Reset |
BL | P27 | Backlight |
LCD and the controller
The ST7789VW is a single-chip controller/driver for 262K-color, graphic type TFT-LCD. It consists of 240 source line and 320 gate line driving circuits. The resolution of this LCD is 240 (H) RGB x 240(V), it supports horizontal mode and vertical mode, and it doesn't use all the RAM of the controller.
This LCD accepts 8-bits/9-bits/16-bits/18-bits parallel interface, that are RGB444, RGB565, RGB666. The color format used in demo codes is RGB565.
This LCD use a 4-line SPI interface for reducing GPIO and fast speed.LCD
LCD Working Protocol
Note: Different from the traditional SPI protocol, the data line from the slave to the master is hidden since the device only has display requirement.
RESX Is the reset pin, it should be low when powering the module and be higher at other times;
CSX is slave chip select, when CS is low, the chip is enabled.
D/CX is data/command control pin, when DC = 0, write command, when DC = 1, write data
SDA is the data pin for transmitting RGB data, it works as the MOSI pin of SPI interface;
SCL worka s the SCLK pins of SPI interface.
SPI communication has data transfer timing, which is combined by CPHA and CPOL.
CPOL determines the level of the serial synchronous clock at idle state. When CPOL = 0, the level is Low. However, CPOL has little effect to the transmission.
CPHA determines whether data is collected at the first clock edge or at the second clock edge of serial synchronous clock; when CPHL = 0, data is collected at the first clock edge.
There are 4 SPI communication modes. SPI0 is commonly used, in which CPHL = 0, CPOL = 0.
User Manual
Only provides tutorials for running on Raspberry Pi OS as following
NVMe SSD boot tutorial
Reter to NVMe SSD boot with the Raspberry Pi 5
LCD display tutorial
1. Enable SPI interface
Reter to How to enable SPI
2. Install Library
PS: If you use the bookworm system, you can only use lgpio library, bcm2835 and wiringPi can't be installed and used.
BCM2835
#Open the Raspberry Pi terminal and run the following command wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz tar zxvf bcm2835-1.71.tar.gz cd bcm2835-1.71/ sudo ./configure && sudo make && sudo make check && sudo make install # For more, you can refer to the official website at: http://www.airspayce.com/mikem/bcm2835/
WiringPi
#Open the Raspberry Pi terminal and run the following command cd sudo apt-get install wiringpi #For Raspberry Pi systems after May 2019 (earlier than that can be executed without), an upgrade may be required: wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # Run gpio -v and version 2.52 will appear, if it doesn't it means there was an installation error # Bullseye branch system using the following command: git clone https://github.com/WiringPi/WiringPi cd WiringPi . /build gpio -v # Run gpio -v and version 2.70 will appear, if it doesn't it means there was an installation error
lgpio
#Open the Raspberry Pi terminal and run the following command wget https://github.com/joan2937/lg/archive/master.zip unzip master.zip cd lg-master sudo make install # You can refer to the official website for more: https://github.com/gpiozero/lg
Python
sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil sudo apt-get install python3-numpy #sudo pip3 install spidev
Download Examples
git clone https://github.com/geekworm-com/Q100.git cd Q100
3. Run the demo
sudo python status.py
The results are as follows:
4. Auto-start when Power on
Configure the script to run automatically at startup
sudo nano /etc/rc.local
and python /home/pi/Q100/status.py& before exit 0 line
5. References:
Enable comment auto-refresher
Anonymous user #1
Permalink |