5003 CM5 Router

来自Mcuzone Wiki

关键词

树莓派、CM5核心板、WAN、LAN、千兆网络、5G、4G、RPiOS、Ubuntu、USB3.0、路由器、交换机、RTC、PWM、DSI、CSI、HDMI、OTG

一、简介

CM5 Router扩展板是一款基于树莓派CM5核心板,针对多网口应用的扩展板。具备一路5G,预留两路CM4 4G LTE(5G除外最多可以内置接3路4G;若接M.2 4G,此板可以内置4路4G LTE)。板载一路原生千兆网口和四路交换机芯片扩出来的千兆网口、一路USB3.0、四路USB2.0、一路RTC以及CSI/DSI和HDMI、40Pin GPIO等各种树莓派常规外设。

CM5 Router扩展板的电源采用USB-C口,支持PD和QC供电,PD握手在12V;且板载12V转5V电路,因此如果PD输入为12V3A,则可供电给扩展板在5V5A以上。如果只进行一些常规操作,系统总电流不超3A,也可用5V3A USB-C OTG口供电(此时5G无法使用),两个接口二选一使用。

四个千兆口位于同一个网段,由上游路由器来分配地址池。如果不接上游路由器,则在树莓派系统和Ubuntu系统下将无法获取合法IP地址(会分配到169.254.xx.xx的IP地址,表示仅有物理网线连接但无合法IP地址)。

二、硬件资源

1. 一路USB3.0的M.2 B-KEY接口,用于接5G模组,30*52mm尺寸,也可用于接4G模组;

2. 一路Nano SIM卡座,预留eSIM芯片位置,5*6mm封装;板载4个SMA天线座;

3. 一路原生千兆以太网;

4. 四路千兆以太网,由PCIe扩千兆以太网,再用交换机芯片扩展,这四个网口具备独立IP,但隶属于同一个网段;

5. 一路USB3.0-A;

6. 四路USB2.0,其中两路为USB-A,两路为1.25mm-4P接口,可用于扩内置4G;

7. 一路标准HDMI接口,支持4K输出;

8. 一路RTC接口,1.25mm-2P;

9. 一路CSI/DSI0接口,0.5mm 22P;

10. 四盏LED:底板PWR、底板ACT、核心板PWR、5G注网;

11. 2个按键:一个为开关机按键;一个是4路交换机千兆以太网重启按键,适用于开机一段时间后再插入网线获取不到合法IP的情况;

12. 40PIN GPIO,完全兼容树莓派5的引脚;

13. 一路TF卡座,用于无eMMC的CM5核心板启动系统(R1.2版本不支持TF卡版本CM5核心板);

14. 一个BOOT跳线,用于烧写带eMMC的CM5核心板用;

15. 一个OTG跳线;

16. 一路USB-C OTG口,此口也可用于5V3A供电;

17. 供电:USB-C,支持PD和QC供电,握手12V;

18. 尺寸:111*135mm。

5003_CM5_Router_66.jpg

5003_CM5_Router_62.jpg

三、烧写系统

本文档采用树莓派系统和OpenWrt系统进行测试,使用前,先下载且安装核心板驱动,树莓派镜像烧录器以及系统:

测试的树莓派系统的版本为2024-11-19-raspios-bookworm-arm64.img.xz,树莓派系统下载地址:

https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-64-bit

镜像烧录器工具的下载地址:

https://www.raspberrypi.com/software/

树莓派CM5核心板的驱动,可以从树莓派官网下载,也可以从我司网站下载,下载地址如下:

http://www.mcuzone.com/wiki/5001_CM5_WiFi7-PoE/rpiboot_setup.exe

3.1 eMMC的烧写

带eMMC的核心板,系统只能烧写在eMMC内,此时板载TF卡无法使用。

扩展板的操作如下:

USB-C OTG口接到电脑,板上的BOOT跳线和OTG跳线用短路帽短上,如下图:

5003_CM5_Router_01.jpg

驱动安装完成后,电脑上打开计算机的设备管理器,查看是否有新的USB设备出现。在下图中的是名称为“BCM2712D0 Boot”的USB设备(即识别树莓派CM5):

5001_CM5_WiFi7-PoE_02.jpg

PC的开始菜单的所有程序下,Raspberry Pi下面有个“rpiboot-CM4-CM5 - Mass Storage Gadget”:

5001_CM5_WiFi7-PoE_03.jpg

打开这个软件,计算机会将eMMC的分区在Windows下分配盘符并显示出来:

5001_CM5_WiFi7-PoE_04.jpg

稍等片刻,在资源管理器中会出现一个分区(本例中的分区名为bootfs,具体名称视实际情况而不同):

5001_CM5_WiFi7-PoE_05.jpg

接下来我们就可以使用树莓派镜像烧录器烧写系统了。

打开树莓派镜像烧录器:

Raspberry Pi Device:选择Raspberry Pi 5;

请选择需要写入的操作系统:

  • 选择Raspberry Pi OS(64-bit),为从树莓派官网下载系统镜像烧写(需联网);
  • 选择Use Custom,则需要自行选择硬盘上已经下载的系统镜像(无需联网);

储存卡:选择刚才显示出来的分区;

5001_CM5_WiFi7-PoE_06.jpg

选择完毕后按“NEXT”,建议点击“编辑设置”,将一些参数预设置进烧写软件,之后在系统启动时就不必再次设置,便于使用。

5001_CM5_WiFi7-PoE_07.jpg

5001_CM5_WiFi7-PoE_08.jpg

5001_CM5_WiFi7-PoE_09.jpg

需要使用预设置的按“”,不需要使用预设置的按“”,进入下一页。

点击“”,就开始烧写及验证完整性。

5001_CM5_WiFi7-PoE_10.jpg

5001_CM5_WiFi7-PoE_11.jpg

烧写完成后,把短路帽都拔掉,重新上电,启动系统即可。

3.2 TF卡的烧写

核心板如果没有eMMC,则系统将从TF卡启动。

TF卡的烧写步骤与eMMC基本相同,无需使用扩展板,将TF卡通过USB读卡器插入电脑,将系统烧录到TF卡内的分区即可。

烧写完毕后,将TF卡取出,插入CM5_Basic扩展板的TF卡卡槽,上电后即可进入系统。

四、树莓派系统的使用

4.1 测试USB口

4.1.1 USB口识别测试

在树莓派终端中执行lsusb,显示如下:

5003_CM5_Router_02.jpg

识别都正常,随后输入lsusb -t查看USB口的工作模式是否正常:

5003_CM5_Router_03.jpg

Bus 02:为USB 3.0接口,5000M;

Bus 04:为USB 3.0接口,5000M;

Bus 05:为USB 2.0接口,480M。

注意,如果扩展板上的上述USB口不接设备,那lsusb里是不会出现相应的设备编号的。如Bus 005 Device 006是因为在这里接了无线键鼠才会出现,如果不接设备,就不会出现这个编号。

4.1.2 USB3.0速度测试

将一个SSD硬盘插入SSD转USB3.0硬盘盒,然后将这个硬盘盒插入扩展板的USB3.0-A口,启动系统,在这个硬盘与eMMC之间拷贝大文件,文件为单个zip文件,大小为4.22GB,即33.75Gb。测试结果如下:

数据传输方向 耗时 传输速度
硬盘->eMMC 35.50s 0.95Gbps
eMMC->硬盘 23.18s 1.46Gbps

注意:USB3.0接口的读写速度受硬盘质量、接口状态、硬盘上的文件存储情况等多种因素影响,以上测试结果仅供参考,不作为实际产品的最终参数。

4.2 测试以太网

4.2.1 以太网的功能介绍

扩展板板载5个千兆以太网,其中一个是原生千兆网口,另外4个是由PCIe通过RTL8111H芯片扩展出一路千兆以太网,再通过交换机芯片对外引出四个千兆网口,这四个千兆网口其中任意一路需连接至上游路由器,即可为剩下的三路网口提供网络接入。

4路千兆网口旁边有一个复位按钮,按下此按钮再松开,可对这4路千兆网口进行复位。如果复位失败(即网络无法重新获取IP),建议按压按钮5秒以上,等系统中的网络图标显示断开后再松开按钮。

将原生千兆网口接上级路由器,再将4路千兆网口中的任意一个口接上级路由器:

5003_CM5_Router_56.jpg

然后在树莓派终端中执行ifconfig -a,结果如下:

5003_CM5_Router_50.jpg

4.2.2 原生千兆网测速

我们使用网速测试软件iperf3进行测速。

Windows版iperf3下载:

http://www.mcuzone.com/down/Software.asp?ID=10000634

Linux下iperf3安装:

sudo apt-get install iperf3

对原生千兆网口进行测速:

5003_CM5_Router_52.jpg

client模式为936Mbps左右:

5003_CM5_Router_05.jpg

server模式为948Mbps左右:

5003_CM5_Router_06.jpg

注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。

4.2.3 四个千兆网口测速

将4路千兆网口中的任意两个网口分别接PC和上级路由器,使用iperf3进行扩展板网口与PC网口之间的测速:

5003_CM5_Router_53.jpg

网口在client模式为939Mbps左右:

5003_CM5_Router_07.jpg

网口在server模式为947Mbps左右:

5003_CM5_Router_08.jpg

注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。

4.2.4 4路千兆网口分别接下级设备测速

将4路千兆网口中的任意两个网口分别接PC和树莓派5B,再将剩余任意一个网口接上级路由器,这样PC和树莓派5B都通过千兆网口获得上级路由器分配的IP上网。

使用iperf3进行PC与树莓派5B之间的测速:

5003_CM5_Router_54.jpg

树莓派5B做client,PC做server,为937Mbps左右:

5003_CM5_Router_48.jpg

PC做client,树莓派5B做server,为948Mbps左右:

5003_CM5_Router_49.jpg

注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。

4.3 5G模组测试

我司配套的5G模组出厂已经配置好,在树莓派官方系统下为免驱免拨号,系统自动识别、即插即用,如果用户自己购买的5G模组则无法直接使用。

本文档以RM520N-GL模块为例进行测试。

4.3.1 联网5G

我们将原生千兆网口和4路千兆网口的任意一个网口都插到上级路由器,CM5核心板自带的WiFi也连接上级路由器,5G组装好插SIM卡:

5003_CM5_Router_67.jpg

5003_CM5_Router_55.jpg

然后在树莓派系统终端下执行ifconfig -a,显示结果如下:

5003_CM5_Router_22.jpg

可见此时eth0(原生千兆网口)、eth1(4路千兆网口)、usb0(RM520N-GL 5G模块)、wlan0(CM5核心板自带WiFi)都已经正确获得了IP。

执行route,查看路由表,usb0排在第一位(Metric值最小),则系统默认5G优先,此时是通过5G模块上网:

5003_CM5_Router_23.jpg

此时我们ping IP和域名,均成功,说明5G模块工作正常:

5003_CM5_Router_24.jpg

打开https://www.speedtest.cn/进行网速测试,结果如下:

5003_CM5_Router_25.jpg

注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。

4.3.2 网络优先级的修改

上一节我们查看了路由表,默认情况下,优先通过5G网络上网。

如果你不想用5G上网,要优先通过上级路由器(即eth0(原生千兆网口)、eth1(4路千兆网口)、wlan0(CM5核心板自带无线模块)所连接的同一个路由器)上网的话,可以运行命令:

sudo ip route del default && sudo route add -net default netmask 0.0.0.0 gw 192.168.8.1

这两条命令(以“&&”分隔)的解释:

sudo ip route del default:删除路由表中的默认路由;

sudo route add -net default netmask 0.0.0.0 gw 192.168.8.1:添加上级路由器的网关为新的默认路由(网关地址以实际为准)。

执行完毕后,再执行route,查看路由表,目前的默认路由为上级路由器的网关(按Metric值,eth1排第一位):

5003_CM5_Router_26.jpg

这样网络就默认走上级路由器了,如果需要改回默认走5G网络,请重启系统即可。

注意,重启后路由表还是会恢复原状,所以如果重启后要网络继续默认走上级路由器,需要再执行一次sudo ip route del default && sudo route add -net default netmask 0.0.0.0 gw 192.168.8.1

4.5.3 AT命令操作

使用lsusb查看USB设备,红框处即为4G模组:

5003_CM5_Router_27.jpg

记下4G模块的ID值:2c7c 0801

使用下列命令打开ttyUSB串口,其中echo后面的值就是上面记录的ID值:

sudo modprobe option

sudo sh -c 'echo 2c7c 0801 > /sys/bus/usb-serial/drivers/option1/new_id'

执行上述两条命令之后执行:

ls /dev/ttyUSB*

此时应该能看到dev设备下有ttyUSB0-3四个设备:

5003_CM5_Router_28.jpg

然后用串口工具打开特定串口(AT命令串口):

安装minicom工具:

sudo apt-get install minicom

通过minicom打开AT命令串口:

sudo minicom -D /dev/ttyUSB2

(注意:使用哪个串口,应以在进入此串口后,可输入运行AT命令,显示不乱码,不乱跳结果为准)

如果需要查看回显,请键入命令:ate1,然后回车,继续键入其它命令,回车可以看到结果。

5003_CM5_Router_57.jpg

常用AT命令:

1. 检查SIM卡是否识别到:

at+cpin?

返回ready表示卡已识别,返回error要检查硬件

2. 检查天线信号质量:

at+csq

返回值在26-31表示信号OK,信号满格31;返回值在20-25表示信号勉勉强强;返回值在20以下表示信号比较糟糕或者天线没接

3. 检查注网情况:

at+cops?

正常应该返回运营商代码和7,7代表4G。

注意,以上命令只有at+csq不要加问号,另外两条命令需要加问号。

4. 查看4G模块的IMEI码:

at+cgsn

5. 重启4G模块(有时候如果重插SIM卡,热插拔不一定管用,可以用这个reset命令来复位模块):

at+reset

6. 关闭射频:

at+cfun=0

开启射频:

at+cfun=1

上述两条命令成对使用,可以在不重启4G模组的情况下让模组重新注网。

7. APN设置

普通手机SIM卡,不需要任何设置,直接使用;有些物联网卡需要设置APN才能使用,以下是用户使用提供的参考,具体的APN代码需要SIM卡运营商提供。

移动卡:

AT+CPNETAPN=0,"cmnet","",""

电信卡:

AT+CPNETAPN=0,"ctnet","",""

4.4 RTC测试

CM5核心板自带RTC电路,扩展板上需外接电池,可在树莓派系统下直接使用。如下图所示:

5003_CM5_Router_30.jpg

系统启动后,在树莓派终端中运行:

ls /dev/r*

即可看到RTC设备:

5003_CM5_Router_31.jpg

显示当前系统时间的命令是date

将系统时间从RTC读出的命令是sudo hwclock -r

将系统时间写入RTC的命令是sudo hwclock -w

如下图所示:

5003_CM5_Router_32.jpg

如果此时正确接上了RTC电池,则断电后RTC内部的时间仍会正确计时,下一次上电启动后,即使不联网更新,也会保持正确时间。如果未正确接上RTC电池,则断电后将会恢复到默认时间(1970年1月1日)。

4.5 PWM风扇测试

安装监测软件s-tui:

sudo apt install s-tui

然后在树莓派终端中运行s-tui,则可以在监测窗口中看到风扇转速的变化:

5003_CM5_Router_33.jpg

如果需要自定义风扇的转速和运行的温度范围,请打开终端,运行下列命令:

sudo nano /boot/firmware/config.txt

在文件末尾加入下列语句:

dtparam=cooling_fan=on

dtparam=fan_temp0=50000,fan_temp0_hyst=5000,fan_temp0_speed=255

其中:

fan_temp0=50000,50000为表示温度,这里是50摄氏度;

fan_temp0_hyst=5000,5000表示迟滞温度,这里是5摄氏度;

fan_temp0_speed=255,255表示风扇转速,最高为255。

可以写入多段温度及相对应的风扇转速,每一段另起一行,使用不同的序号数字来区分,例如:

dtparam=fan_temp1=36000,fan_temp1_hyst=5000,fan_temp1_speed=128

5003_CM5_Router_59.jpg

4.6 DSI测试

我们测试用的液晶屏是树莓派官方第一代液晶屏,液晶屏需额外独立供电,上电启动系统,打开终端,运行下列命令:

sudo nano /boot/firmware/config.txt

在文件末尾加入下列语句:

dtoverlay=vc4-kms-dsi-7inch,dsi0

5003_CM5_Router_34.jpg

保存后重启系统,即可使用树莓派官方7寸触摸屏。显示效果如下所示:

5003_CM5_Router_35.jpg

注意1:如果同时插HDMI显示器和7寸触摸屏,7寸触摸屏有可能变成副屏,只要关机后将HDMI显示器拔掉,再启动系统,7寸触摸屏就会成为主屏。

注意2:添加的语句实际上开启了第二块显示屏,即双屏显示,无论第二块屏的硬件是否安装,系统都有可能认为存在双屏,如果使用PrtScn截图,也会截到双屏的图。甚至还有可能造成系统无法启动。因此如果不需要使用这块屏,建议在config.txt中把这条语句去掉或者注释掉。

4.7 CSI测试

我们使用的是OV5647摄像头,接口为CSI0,系统运行后打开终端,运行下列命令:

sudo nano /boot/firmware/config.txt

在文件末尾加入下列语句:

dtoverlay=ov5647,cam0

5003_CM5_Router_37.jpg

在实际使用中根据自己的型号进行添加,保存后重启系统,即可使用OV5647摄像头。

重启后在终端中输入:

ls /dev/video*

即可看到video0设备:

5003_CM5_Router_38.jpg

在终端中输入libcamera-hello --camera 0即可打开对应的摄像头浏览:

5003_CM5_Router_39.jpg

如果需要拍照,则输入:

libcamera-jpeg -o test.jpg

照片保存在/home/mcuzone目录下(即用户主目录),照片效果如下:

5003_CM5_Router_40.jpg

4.8 4G模块测试

4.8.1 联网4G

板载USB口1.25mm-4P,可接我司配套的CM4 4G mini模块:

5003_CM5_Router_68.jpg

这里测试用的是CAT4 4G,在树莓派终端中执行lsusb,显示如下,红框中即为4G:

5003_CM5_Router_41.jpg

执行ifconfig -a,显示如下:

5003_CM5_Router_42.jpg

eth2为Cat4 4G,已获取了IP地址。

执行route,可见eth2排在第一位,因此优先通过4G网络上网:

5003_CM5_Router_43.jpg

此时我们ping IP和域名,均成功,说明4G模块工作正常:

5003_CM5_Router_44.jpg

4G的AT命令操作方法与5G模组的操作相同,请参阅4.3节,只是查检查天线信号质量的AT命令不一样,为at+csq,返回值在26-31表示信号OK,信号满格31;返回值在20-25表示信号勉勉强强;返回值在20以下表示信号比较糟糕或者天线没接。

4.8.2 联网其它4G型号

我司高通4G模块,在树莓派系统里自动识别成USB设备,和5G一样。板载的1.25mm-4p USB口接高通4G模块,M.2 B-KEY仍旧接RM520N-GL模组,系统会自动排序,默认5G优先,如下:

5003_CM5_Router_46.jpg

板载1.25mm-4p的USB口接高通4G,M.2 B-KEY接ZTE CAT4 4G模块,显示如下:

5003_CM5_Router_47.jpg

此扩展板可最多同时接4个4G,如下:

4.8.3 修改4G的IP地址

如果出厂默认的4G IP地址和用户使用的IP地址有冲突,或有修改IP地址的需求,可按照下列步骤进行修改:

CAT4 4G模块:

执行AT命令:

AT+ROUTEIP=<newip>

注意,只支持192.168.x.1这样格式的地址,如果设置了AT+ROUTEIP=192.168.3.1,最终获得的IP为192.168.3.100,修改完后需断电重启系统。

查询当前IP:AT+ROUTEIP?,返回两个值,前一个为旧IP,后一个为新IP。

测试命令:AT+ROUTEIP=?

高通4G模块:

将4G模块的IP改为直接获取公网IP即可,请执行AT命令:

设置IP为公网:AT+GTIPPASS=1

设置IP为内网:AT+GTIPPASS=0

查询当前IP为公网还是内网:AT+GTIPPASS?

修改IP完毕后需要断电重启才能生效。

4.9 开关机按键测试

CM5 Router扩展板带有一个开关机按键,开机状态下,按一下按键,弹出关机菜单:

5001_CM5_WiFi7-PoE_47.jpg

再按一下按键,直接关机;

关机状态下(需接电源)按一下按键,上电开机。

五、OpenWrt系统的使用

本文档采用的OpenWrt系统是经Mcuzone所编译的,版本为:openwrt-bcm27xx-bcm2712-rpi-5-squashfs-sysupgrade-linux-6.6.67-20250105.img.gz。

本文档以RM520N-GL模块为例进行测试。

默认状态下,系统将5G模块配置为WAN口,扩展板上的原生千兆网口被配置成LAN口,4个千兆网口未配置。

5.1 登录系统

将原生千兆网口插在PC上,系统启动后,我们在Windows设置中找到网络和Internet,在以太网中打开连接的网络查看默认网关的IP地址,这个地址就是OpenWrt系统的后台配置页面地址,如图所示,本文测试的地址为192.168.1.1:

5003_CM5_Router_09.jpg

然后打开网页浏览器输入192.168.1.1,进入OpenWrt系统。默认用户名为root,默认密码为password

5003_CM5_Router_10.jpg

5.2 配置LAN口和有线WAN口

现在我们需要将4路千兆网口配置成LAN口,而将原生千兆网口配置成WAN口。

点击“服务 - 终端”,登录终端,默认用户名root,密码password

5003_CM5_Router_51.jpg

执行ifconfig -a,结果如下:

5003_CM5_Router_12.jpg

5003_CM5_Router_60.jpg

进入“网络 - 接口 -设备”,点击“br-lan”后面的“配置”:

5003_CM5_Router_14.jpg

点开“网桥端口”后面的下拉菜单,将eth0前面的勾去掉,将eth2前面的勾打上,然后点击“保存”:

5003_CM5_Router_15.jpg

点击顶部栏目的“接口”:

5003_CM5_Router_16.jpg

点击“添加新接口...”

5003_CM5_Router_17.jpg

按下图进行配置(“名称”可以自定义),设备选择“eth0”,然后点击“创建接口”:

5003_CM5_Router_18.jpg

点击“防火墙设置”,在“创建/分配防火墙区域”中,选择wan,然后点击“保存”:

5003_CM5_Router_19.jpg

这样我们就把原生千兆网口配置成了WAN口,4路千兆网口配置成了LAN口,同时5G模组默认就配置成了WAN口。

点击“保存并应用”:

5003_CM5_Router_20.jpg

稍等片刻后将原生千兆接上级路由器,4千兆的任何一个网口接PC,重启系统。

重新登录OpenWrt系统的管理页面,进入“网络 - 接口”:

5003_CM5_Router_21.jpg

此时LAN口为br-lan,即4路千兆网口(eth2);

有线WAN口为原生千兆网口(eth0);

5G模组(eth1)默认配置成为WAN口。

5.3 测试5G网络

5.3.1 5G网络稳定性测试

我们在PC端测试5G网络的稳定性,执行ping www.mcuzone.com共计60925次,仅丢失一次,平均往返行程时间47ms,结果非常稳定:

5003_CM5_Router_36.jpg

5.3.2 5G网络速度测试

我们在PC端测试5G网络的速度,打开https://test.ustc.edu.cn/进行网速测试,结果如下:

5003_CM5_Router_65.jpg

联系我们

4f7e81daf8791971.jpg 79c020da7ad0af9b.jpg 2851e01a0549e6f7.gif 0003_bb.jpg 0005_qq.jpg QQ:8204136

邮件:mcuzone@vip.qq.com

电话:13957118045

如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!

Copyright 2004-2025 野芯科技