ZP590B PCIe to WIFI7 WIFI6(E) WIFI5 HAT+

Introductions

• WIFI7 is the latest 7th generation WIFI with faster speeds than previous generations of WIFI. And there will be more and more WIFI7 wireless routers, WIFI7 network cards and other devices.

• The ZP590B is an adapter board with PCIe interface for WIFI7, allowing Raspberry Pi 5 motherboard to use the latest WIFI7 module. The WIFI7 module can be inserted into the ZP590B adapter board via the M.2 E-KEY interface, which provides an opportunity for a wide range of Raspberry Pi 5 users to be able to use the latest WIFI7.

• At present, Ubuntu supports wireless network cards of WIFI7 WIFI6(E) WIFI5, which can be used without installing drivers. The currently supported network cards include BE200, 8265C, AX200, AX210, MT7922.

• To use the WiFi7/6/6E/5 wireless network cards, the Raspberry Pi OS needs to install a driver, it depends on how familiar you are with the wifi driver and Raspberry Pi OS. We have instructions about driver BE200, AX200, AX210.

• The ZP590B acts as an adapter board between the WIFI7 WIFI6(E) WIFI5 module and the Raspberry Pi 5 motherboard. The performance of the wireless depends on the Raspberry Pi 5 motherboard, the operating system and the wireless module.

 

 

Hardware Installation

Installation of PCIe FFC Cable

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

 

 

Installation of ZP590B Adapter Board

 

 

Installation of WIFI7 Module

Insert the WIFI7 module into the ZP590B adapter board via the M.2 E-KEY interface:

 

 

Installation of WIFI Antennas

 

 

 

How to Use

Ubuntu

The following introduces the use of WIFI under Ubuntu system:

1. Install the latest Ubuntu operating system. You can use Raspberry Pi Imager to select the latest version of Ubuntu to install:

 

2. After installation, use the following command to upgrade to the latest version:

sudo apt-get update

sudo apt-get upgrade

If Ubuntu does not upgrade to the latest version, the WIFI7 WIFI6(E) WIFI5 network card may not be supported. It depends on the situation.

 

3. Check whether the adapter board is connected to the Raspberry Pi 5 motherboard:

The line pointed to by the arrow appears to indicate a successful hardware connection, and the information appears differently for different WiFi7/6/6E/5 modules.

 

4. Connect WiFi7/6/6E/5 to wireless router. Please refer to the following figure to connect the wireless router:

 

 

 

 

Raspberry Pi OS

The following is the Raspberry Pi OS version we use, you can also try to use other Raspberry Pi OS version, but it depends on how familiar you are with iwlwifi and Raspberry Pi OS.

First of all, download the following operating system file:

https://downloads.raspberrypi.com/raspios_arm64/images/raspios_arm64-2024-11-19/2024-11-19-raspios-bookworm-arm64.img.xz

 

Use Raspberry Pi Imager to write operating system into Raspberry Pi 5. Use the method “Use custom” as the following picture shows:

 

 

After writing into the TF card, insert the TF card to Raspberry Pi 5, and then power it to run.

 

You can see if the Raspberry Pi OS version you use is the same as bellow:

cat /proc/version

 

Take a look at the MAC address of wlan0, which is currently the MAC address of the Raspberry Pi 5's own wifi. You can write it down, so that you can know later if it is driven up or not.

Note: After finishing the installation of iwlwifi driver, the Raspberry Pi 5's own wifi will can not be used, and you can only use the external wifi module.

ifconfig -a

 

Use lspci command to check if the external wifi module is connected well. After the wifi module is connected properly, it will display the corresponding company and model number.

The wireless network card we installed is Intel BE200 WIFI7.

 

Update the system:

sudo apt update

 

Install kernel header file:

sudo apt install raspberrypi-kernel-headers firmware-iwlwifi flex yacc

 

Download backport-iwlwifi, you can try to use the following link to download, but it may can not drive.

https://wireless.docs.kernel.org/en/latest/en/users/drivers/iwlwifi.html

 

We use the following backport-iwlwifi currently:

git clone https://github.com/ZDEdotPlus/iwlwifi.git

After downloading successfully, there is an additional iwlwifi folder:

cd iwlwifi

 

Decompress the file

tar xzvf iwlwifi.tar.gz

cd iwlwifi

 

Compile iwlwifi

sudo make defconfig-iwlwifi-public

sudo sed -i 's/CPTCFG_IWLMVM_VENDOR_CMDS=y/# CPTCFG_IWLMVM_VENDOR_CMDS is not set/' .config

 

sudo make -j4

sudo make install

 

cd /lib/firmware

sudo wget -o - -q https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/iwlwifi-gl-c0-fm-c0-83.ucode

sudo wget -o - -q https://web.git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/iwlwifi-gl-c0-fm-c0.pnvm

 

Reboot once all of the above have been executed correctly:

sudo reboot

 

After rebooting, use ifconfig -a command to find that the MAC address of wlan0 is different from the MAC address before the iwlwifi driver was installed. The wifi that comes with the Raspberry Pi 5 cannot be used.

 

 

 

Packing List

Note: The Raspberry Pi 5 and WIFI module are not included.

 

 

Video Tutorial

Video link: https://youtu.be/XeEBfwQn7t8.

 

 

 

Support

If you have any question or need technical support, please contact: support@zde.plus.