2009 CM4/CM5 SSD WiFi6
关键词
树莓派、CM4核心板、千兆以太网、RPiOS、Ubuntu、SSD、NVMe SSD、PCIe、DSI、CSI、OV5647、WiFi6
一、简介
CM4/CM5_SSD+WiFi6扩展板
二、硬件资源
三、烧写系统
本文档采用树莓派OS和Ubuntu系统进行测试。
1. 树莓派OS的版本为2024-11-19-raspios-bookworm-arm64.img.xz,树莓派OS下载地址:
https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit
2. Ubuntu系统的版本为ubuntu-24.10-preinstalled-desktop-arm64+raspi.img.xz,
Ubuntu系统下载地址:
https://ubuntu.com/download/raspberry-pi
3.1 TF卡的烧写
树莓派CM4核心板分2个大类,一类是不带eMMC版本,仅限从TF卡启动系统;一类是带eMMC版本,仅限从eMMC启动系统,那对应扩展板上的TF卡将无效。
3.2.1 使用树莓派镜像烧录器烧写
首先在Windows端安装树莓派镜像烧录器,下载地址:https://www.raspberrypi.com/software/
安装完毕后将TF卡插入读卡器,读卡器插入PC的USB口,然后打开软件:
Raspberry Pi Device:选择Raspberry Pi 4;
请选择需要写入的操作系统:选择Raspberry Pi OS(64-bit),为从树莓派官网下载系统镜像烧写(需联网);选择Use Custom,则需要自行选择硬盘上已经下载的系统镜像(无需联网);
储存卡:选择所需烧入的TF卡(即插在PC的USB接口的卡);
选择完毕后按“NEXT”,建议点击“编辑设置”,将一些参数预设置进烧写软件,之后在系统启动时就不必再次设置,便于使用。
需要使用预设置的按“是”,不需要使用预设置的按“不”,进入下一页。
点击“是”,就开始烧写及验证完整性。
以上介绍的是烧写树莓派OS,烧写Ubuntu系统或者OpenWrt系统也是用类似的操作,只是在“请选择需要写入的操作系统”时,需要选择Use Custom,然后选择预先下载的镜像即可。
3.2.2 使用balenaEtcher烧写
首先在Windows端安装balenaEtcher,下载地址:https://etcher.balena.io/#download-etcher
将TF卡插入读卡器,读卡器插入PC的USB口,然后打开软件:
从文件烧录:选择预先下载的树莓派OS或者Ubuntu系统镜像;
选择目标磁盘:选择所需烧入的TF卡(即插在PC的USB接口的卡);
然后点击“现在烧录!”,就开始烧录了,等待烧录完毕即可。
3.2.3 启动系统
烧写完毕后,将TF卡从读卡器中取下,插入CM4/CM5_SSD+WiFi6扩展板的TF卡卡槽,上电后即可进入系统。
3.2 eMMC的烧写
如果核心板具有板载eMMC,则系统将会忽略TF卡,而从eMMC启动。
要烧写系统到eMMC,首先需要在PC上安装驱动包,下载地址:
http://www.mcuzone.com/down/Software.asp?ID=10000623
然后使用跳线帽短接扩展板BOOT脚和GND脚(WiFi6接口旁边):
01
使用USB Type A-C数据线将扩展板上的USB OTG接口(即扩展板的USB-C口)连接至电脑,连接上电脑之后,打开计算机的设备管理器,查看是否有新的USB设备出现。在下图中的是名称为“BCM2711 Boot”的USB设备:
PC的开始菜单的所有程序下,Raspberry Pi下面有个rpiboot:
打开这个软件,计算机会将emmc或者TF卡格式化并分区:
稍等片刻,在资源管理器中会出现一个分区(本例中的分区名为bootfs,具体名称视实际情况而不同):
接下来我们就可以使用balenaEtcher软件对这个分区进行烧写了。
打开balenaEtcher软件,第一项点击“从文件烧录”,选择你要烧录到eMMC的文件,第二项选择上面的那个bootfs分区,然后点击“现在烧录”,就开始烧录文件了:
烧写完成后,把短路帽都拔掉,重新上电,启动系统即可。
3.3 注意事项
1. 如果使用树莓派系统,系统启动后卡死或者键盘鼠标无法使用,请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本,如果是烧写在eMMC上,则请在烧写完毕后,再次使用一次rpiboot工具使系统分区显示出来,然后打开系统分区根目录下的config.txt检查USB的初始化脚本:
然后按照下面红框所示的两处进行修改:
2. 如果使用Ubuntu系统,系统启动后键盘鼠标无法使用,请在PC端打开TF卡系统分区根目录下的config.txt检查USB的初始化脚本,如果是烧写在eMMC上,则请在烧写完毕后,再次使用一次rpiboot工具使系统分区显示出来,然后打开系统分区根目录下的config.txt检查USB的初始化脚本。
需要确认下图中的红框处是否配置完全,如果没有,请手动添加完整并保存文件:
也可以将红框处这一行删除后保存文件:
3. Ubuntu系统的desktop版本对硬件要求较高,如果核心板只有1G内存,有可能在运行时速度很慢甚至死机,建议使用内存为2G或以上的核心板进行安装使用。
四、树莓派OS的操作
4.1 测试USB口
在树莓派终端中执行lsusb
及lsusb -t
,显示如下:
Bus 001的Decice 003、004、007表示三个USB2.0-A口,识别都正常。
Bus 01为为USB 2.0接口,480M,工作模式也正常。
4.2 测试SSD硬盘
将SSD硬盘插入CM4/CM5_SSD+WiFi6扩展板的M.2接口,上电启动系统。
在树莓派终端中执行lspci
,查看SSD硬盘信息(红框处):
执行lsblk
,我们可以看到这个SSD分区名为nvme0n1p1(红框处):
默认状态下,SSD硬盘运行在 PCIe Gen2下,不支持CIe Gen3。
安装硬盘测速软件hdparm,在树莓派终端下运行:
sudo apt install hdparm
运行接口测速命令,可多次运行,测试多次硬盘速度:
sudo hdparm -t /dev/nvme0n1
因为板子上的SSD接口和WiFi6接口实际上是由一路PCIe通过一个switch一分为二,这样反映到SSD上就会对速度有所影响,测试结果如下:
次数 | 传输速度MB/s |
1 | 375.85 |
2 | 374.47 |
3 | 378.77 |
4 | 376.61 |
5 | 375.08 |
平均 | 376.16 |
4.3 测试WiFi6
树莓派官方系统核心板自带WiFi和PCIe扩展WiFi共存,因此,若使用带WiFi功能的树莓派CM4核心板,在安装WiFi6驱动后,核心板自带的WiFi模块将自动关闭,无法使用。在此也建议可以使用不带WiFi的CM4核心板。
在WiFi6接口中插入一块WiFi6无线网卡(本文档以AX210为例),启动系统后在树莓派终端中执行lspci
,红框处即为AX210 WiFi6模组:
4.3.1 安装驱动
在树莓派终端下更新头文件:
sudo apt install -y raspberrypi-kernel-headers firmware-iwlwifi flex yacc
然后下载源码:
mkdir wifi && cd wifi
wget http://www.mcuzone.com/wiki/2004_CM4_WiFi7/backport-iwlwifi-20231029.tar.bz2
sudo tar -xvf backport-iwlwifi-20231029.tar.bz2
准备编译环境:
sudo make defconfig-iwlwifi-public
sudo sed -i 's/CPTCFG_IWLMVM_VENDOR_CMDS=y/# CPTCFG_IWLMVM_VENDOR_CMDS is not set/' .config
编译源码:
sudo make -j 4
sudo make install
注意,编译时如果使用-j 4出现死机或者报错,请使用-j 2或者-j 1进行编译。
安装完成后提示重启系统,请重启:
sudo reboot
4.3.2 测试WiFi6
重启系统后,我们就可以在网络连接里面使用WiFi6模块连接无线AP了:
注意,此时核心板自带的WiFi模块已自动关闭,被WiFi6模块所取代。
点击桌面右上角网络图标 - Advanced Options - Connection Information...,在网络连接的信息中,我们也可以看到这个驱动为iwlwifi的网络连接(如果是核心板自带的无线网卡,驱动会显示为brcmfmac):
在树莓派终端中执行ifconfig -a
,结果如下:
这里的wlan0为WiFi6模块。
我们使用网速测试软件iperf3进行测速。
Windows版iperf3下载:
http://www.mcuzone.com/down/Software.asp?ID=10000634
Linux下iperf3安装:
sudo apt-get install iperf3
测速所使用的硬件设备:
路由器为小米BE6500 Pro(WiFi6/7+四口2.5G路由器),CM4/CM5_SSD+WiFi6扩展板距离路由器约1米。
扩展板的AX210连接WiFi6无线网络(5G热点),与同一路由器下的Windows系统进行iperf3测速。
扩展板作为client,单线程测速:
速度为为505Mbps左右。
30个线程测速:
速度为为1.31Gbps左右。
扩展板作为server,单线程测速:
速度为为557Mbps左右。
30个线程测速:
扩展板作为server,单线程测速:
速度为为1.97Gbps左右。
单线程(Mbps) | 30线程(Gbps) | |
Client | 505 | 1.31 |
Server | 557 | 1.97 |
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
4.3.3 双无线网卡测试
另外也可以通过在SSD接口上安装一块SSD转WiFi6转接板,然后将无线网卡插入该转接板,重启即可正常使用无线网卡。此时原有的WiFi6接口还可以插一块无线网卡,实现双无线网卡。
在WiFi6接口插入一块AX200无线网卡,SSD转WiFi6转接板上插入一块AX210无线网卡,网络连接显示如下:
AX200网络详情:
AX210网络详情:
在树莓派终端中执行ifconfig -a
,结果如下:
我们使用网速测试软件iperf3进行测速,结果如下:
单线程(Mbps) | 30线程(Gbps) | |
AX200 Client | 403 | 0.57 |
AX200 Server | 457 | 1.05 |
AX210 Client | 521 | 1.40 |
AX210 Server | 564 | 1.72 |
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
4.4 测试以太网口
将网线插入扩展板的原生千兆网口,执行ifconfig -a
,显示如下:
这里的eth0为板载千兆网卡。
使用iperf3对千兆网口进行测速:
client模式为943Mbps左右:
server模式为949Mbps左右:
注意:原生千兆网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
4.5 测试DSI
4.5.1 树莓派第一代液晶屏测试
这里使用的是树莓派官方第一代液晶屏进行测试,液晶屏需要独立供电。
连接好硬件后,给扩展板上电。等待系统运行后打开终端,运行下列命令:
sudo nano /boot/firmware/config.txt
在文件末尾加入下列语句:
dtoverlay=vc4-kms-dsi-7inch,dsi0
保存后重启系统,即可使用树莓派官方7寸触摸屏。
4.5.2 树莓派第二代液晶屏测试
这里使用的是树莓派官方第二代液晶屏进行测试,液晶屏需要独立供电。
连接好硬件后,给扩展板上电。等待系统运行后打开终端,运行下列命令:
sudo nano /boot/firmware/config.txt
在文件末尾加入下列语句:
dtoverlay=vc4-kms-dsi-ili9881-7inch,dsi0
保存后重启系统,即可使用树莓派官方二代7寸触摸屏。
4.5.3 注意事项
注意1:如果同时插HDMI显示器和7寸触摸屏,7寸触摸屏有可能变成副屏,只要关机后将HDMI显示器拔掉,再启动系统,7寸触摸屏就会成为主屏。
注意2:添加的语句实际上开启了第二块显示屏,即双屏显示,无论第二块屏的硬件是否安装,系统都有可能认为存在双屏,如果使用PrtScn截图,也会截到双屏的图。甚至还有可能造成系统无法启动。因此如果不需要使用这块屏,建议在config.txt中把这条语句去掉或者注释掉。
4.6 测试CSI
这里测试用的摄像头是OV5647,摄像头连接好后,给板子上电。等待系统运行后打开终端,运行下列命令:
sudo nano /boot/firmware/config.txt
在文件末尾加入下列语句:
dtoverlay=ov5647,cam0
在实际使用中根据自己的型号进行添加,保存后重启系统,即可使用OV5647摄像头。
重启后在终端中输入:
ls /dev/video*
即可看到video0设备:
在终端中输入libcamera-hello --camera 0
即可打开对应的摄像头浏览:
如果需要拍照,则输入:
libcamera-jpeg -o test.jpg
照片保存在/home/mcuzone
目录下(即用户主目录),照片效果如下:
五、Ubuntu OS的操作
5.1 测试USB口
在Ubuntu终端中执行lsusb
及lsusb -t
,显示如下:
Bus 001的Decice 003、004、005表示三个USB2.0-A口,识别都正常。
Bus 001为为USB 2.0接口,480M,工作模式也正常。
5.2 测试SSD硬盘
将SSD硬盘插入CM4/CM5_SSD+WiFi6扩展板的M.2接口,上电启动系统。
在树莓派终端中执行lspci
,查看SSD硬盘信息(红框处):
执行lsblk
,我们可以看到这个SSD分区名为nvme0n1p1(红框处):
默认状态下,SSD硬盘运行在 PCIe Gen2下,不支持CIe Gen3。
安装硬盘测速软件hdparm,在Ubuntu终端下运行:
sudo apt install hdparm
运行接口测速命令,可多次运行,测试多次硬盘速度:
sudo hdparm -t /dev/nvme0n1
因为板子上的SSD接口和WiFi6接口实际上是由一路PCIe通过一个switch一分为二,这样反映到SSD上就会对速度有所影响,测试结果如下:
次数 | 传输速度MB/s |
1 | 332.30 |
2 | 295.68 |
3 | 331.57 |
4 | 337.63 |
5 | 327.38 |
6 | 317.33 |
7 | 336.66 |
8 | 335.89 |
平均 | 326.81 |
5.3 测试WiFi6
5.3.1 单无线网卡测试
在Ubuntu系统下,AX200及AX210无线模组免驱,即插即用。
在WiFi6接口中插入一块WiFi6无线网卡(本文档以AX210为例),启动系统后在树莓派终端中执行lspci
,红框处即为AX210 WiFi9模组:
点击桌面右上角图标,可见WiFi已经激活,点击WiFi图标旁的箭头,可以选择热点进行连接:
输入热点密码,连接成功后,在终端中执行ifconfig -a
,结果如下:
这里的wlp3s0为WiFi6模块。
我们使用网速测试软件iperf3进行测速。
测速所使用的硬件设备:
路由器为小米BE6500 Pro(WiFi6/7+四口2.5G路由器),CM4/CM5_SSD+WiFi6扩展板距离路由器约1米。
扩展板的AX210连接WiFi6无线网络(5G热点),与同一路由器下的Windows系统进行iperf3测速。
测试结果如下:
单线程(Mbps) | 30线程(Gbps) | |
AX210 Client | 491.00 | 1.80 |
AX210 Server | 493.00 | 1.66 |
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
5.3.2 双无线网卡测试
另外也可以通过在SSD接口上安装一块SSD转WiFi6转接板,然后将无线网卡插入该转接板,重启即可正常使用无线网卡。此时原有的WiFi6接口还可以插一块无线网卡,实现双无线网卡。
在WiFi6接口插入一块AX200无线网卡,SSD转WiFi6转接板上插入一块AX210无线网卡,网络连接显示如下:
36.jpg
上图已经连接热点的网卡为原AX210网卡,未连接热点的网卡为新加的AX200网卡,将AX200网卡也连接上热点,在终端中执行ifconfig -a
,结果如下:
37.jpg
这里的wlp3s0为AX210模块,wlp4s0为AX200模块。
我们使用网速测试软件iperf3进行测速。测试结果如下:
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
5.4 测试以太网口
将网线插入扩展板的原生千兆网口,执行ifconfig -a
,显示如下:
这里的eth0为板载千兆网卡。
使用iperf3对千兆网口进行测速:
client模式为936Mbps左右:
server模式为938Mbps左右:
注意:原生千兆网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
5.5 测试DSI
5.6 测试CSI
六、CM5核心板兼容性测试
启动 | 仅支持eMMC版本的CM5核心板,不带eMMC的CM5核心板无法从TF卡启动 | ||||
外设名称 | HDMI输出 | USB2.0-A接口 | SSD | 千兆以太网 | 核心板WiFi |
是否兼容 | √ | √ | √ | √ | √ |
外设名称 | DSI | CSI | 单WiFi6 | 双WiFi6 | |
是否兼容 | √ | √ | √ | × | |
注:√表示兼容,×表示不兼容 |
联系我们
电话:13957118045
如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!
Copyright 2004-2025 野芯科技