PCIe TO USB 3.2 Gen1 HAT+

From Waveshare Wiki
Jump to: navigation, search
PCIe TO USB 3.2 Gen1 HAT+
PCIe TO USB 3.2 Gen1 HAT+.jpg






PCIe TO USB 3.2 Gen1 HAT+ for Raspberry Pi 5, onboard 4 x USB connectors, driver-free, plug-and-play, 4 x high-speed USB ports, HAT+ standard.


  • PCI-E×1 Gen2 mode.
  • Only support PI5B.
  • Equipped with VL805 original high-performance main control chip.
  • Reserved airflow vent for cooling fan, better cooling effect for Raspberry Pi 5, more stable performance.
  • Support USB power control.


  • PCIE interface is not enabled on the Raspberry Pi by default.

User Guide

Hardware Connection

Pay attention to the direction of the wires and connect as shown in the figure:

How to Use

1: Enable PCIE interface:
PCIE interface is not enabled on the Raspberry Pi 5 by default, you can add the following content at /boot/firmware/config.txt:


2: PCIE gen2 is the default setting, if you want to enable PCIE gen3, you need to add the following content at /boot/firmware/config.txt:

#Please note that the module only supports gen2, so it is the same to set Gen3 or Gen2 on the PI5, and the speed will not be improved.  

3: Reboot PI5 after modification, and the device can be recognized.

As shown below, the VL805 is recognized as our device, and the other PI5 is the RPI chip.

4: Execute "lsusb" to the USB device that has been recognized.


USB Power Supply Control

Single port maximum output current: 2A
USB port No. 1~4:

uhubctl Tool Control (Default)

1: Install uhubctl tool:

sudo apt-get install uhubctl

2: How to use:

#Close all USB power supply
sudo uhubctl -l  1-1 -a off
#Unspecified port, disable all USB power under the bus 
#Open USB power supply
sudo uhubctl -l  1-1 -p 1  -a on
sudo uhubctl -l  1-1 -p 2  -a on
sudo uhubctl -l  1-1 -p 3  -a on
sudo uhubctl -l  1-1 -p 4  -a on
#-p defines port number 
#-a defines the device status  
#-l(Lowercase L) Specifies the USB bus, which can be viewed by lsub -t
#The port number should correspond to the USB 2.0 port number, and if there are no other USB devices connected, it should default to the corresponding command
#Close a USB power supply 
sudo uhubctl -l  1-1 -p 1  -a off
sudo uhubctl -l  1-1 -p 2  -a off
sudo uhubctl -l  1-1 -p 3  -a off
sudo uhubctl -l  1-1 -p 4  -a off
#Note that the first time you use the command to close a single USB port may not be able to operate need to close all before you can!


GPIO Control

GPIO control is not supported by default, and you need to solder the 0R resistance as shown below:
USB controls the corresponding GPIO:

Note: When using GPIO control, do not use uhubctl, as it may interfere with GPIO control.


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)