The Raspberry Pi has a strong selection of ports, including four USB Type-A connectors, Ethernet, 3.5mm audio and two microHDMI outs. But what if you want to take a PCIe card, the same kind you use in a PC, and attach it to your Raspberry Pi? Believe it or not, now you can, with the help of a $6 chip and a soldering iron.
One of the less talked about features of the Raspberry Pi 4 is the PCI Express interface which is dedicated for use with the VL805 USB 3.0 controller. The Raspberry Pi 4 is the first Pi to use this interface, and this has led to many hackers such as Thomasz Mloduchowski and Colin Riley to investigating PCI Express on the Pi 4 and their documentation of the process is superb.
This week, developer Zak Kemble announced a breakthrough. Kemble has created the RPi4 PCIe Bridge Chip , a PCB which is soldered in place of the VL805 and bridges the PCI Express interface to a USB 3.0 port. By doing this, you'll obviously void your warranty and you will lose access to all of your USB ports, though you can use the Pi 4's Type-C connector as a host (if you power the Pi from GPIO pins). Kemble is currently selling the Raspberry Pi 4 PCI-Express chip for just $6 so anyone can try this.
So what could you do with a PCIe cards on a Raspberry Pi 4? Kemble says you could get faster Ethernet -- 2.5 or 5Gb -- for turning your Pi into a router. You can also attach SSDs or Flash cards that go directly to the PCIe bus. He noted that graphics cards will not work because the "CPU doesn't have enough BAR space for them."
"With a PCIe switch you could have both faster storage and faster networking. An RPi4 NAS could double in performance compared to using the onboard 1G ethernet and a USB-to-SATA converter," he told us.
Also, in practice, many cards will not work with this chip and we don't know which. In his limited experiments, Kemble had success with an RTL8111 1G Ethernet card which would allow the Pi 4 to act as a router.
Kemble also managed to connect a 4-port USB 3.0 PCI-e expansion card that allowed him to combine four Flash drives into one and get a throughput of 3 Gbps, though more is possible.
It is still very early days for this hack, so we don't now what else will or won't work. But if you want to try it for yourself, see Zak's Electronics Blog.