5005 CM5IO Mini
关键词
树莓派、CM5核心板、NVME SSD、PoE千兆以太网、RPiOS、Ubuntu、USB3.0、RTC、PWM、DSI、CSI、双HDMI
一、简介
CM5IO mini是一款专为树莓派CM5核心板设计的较为小巧又具备超强延展性的扩展板。具备HDMI、USB3.0、USB2.0、启动用TF、原生千兆、CAM/DISP、RTC接口以及SSD等常规接口。CM5IO mini采用标准40Pin接口,合理的布局使得各种工业接口以及通讯模块可以通过40Pin或内置的USB2.0接口进行扩展,并可通过配套外壳装配成一体化设备。
二、硬件资源
CM5接口 | DF40HC3.0 |
以太网口 | 一路POE千兆以太网,可选配POE功能; |
USB口 | 两路USB3.2-A口;
四路USB2.0口,其中2路USB-A,2路1.25mm-4P接口; |
显示 | 两组CSI/DSI组合接口;0.5mm-22P FPC下接;
两路micro HDMI接口; |
存储 | 一路PCIe M.2 M-key,支持NVME SSD,2280/2242,默认焊接2280固定柱,不支持SATA和GNFF; |
LED | 一盏电源指示灯;
一盏SSD灯; 一盏运行指示灯; |
实时时钟 | 一路RTC,1.25mm-2P接口; |
TF卡座 | 一路TF卡座,仅用于无eMMC的CM5核心板启动系统用; |
其他 | 40PIN GPIO,2.54mm-2*20P;完全兼容树莓派5的GPIO引脚;
一路I2C1; 一路PWM风扇接口,1.0mm-4P; 一路开关机按键; |
电源 | USB-C,5V3A供电,也是eMMC核心板的烧写口; |
尺寸 | 84*120mm;四层板设计;板材通过UL和ROHS认证,防火等级94V-0; |
外壳 | 全铝合金外壳;88*122*39mm; |
三、烧写系统
本文档采用树莓派系统进行测试,使用前请先下载并安装核心板驱动、树莓派镜像烧录器以及树莓派系统:
树莓派系统的版本为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/down/Software.asp?ID=10000641
3.1 eMMC的烧写
带eMMC的核心板,系统只能烧写在eMMC内,此时板载TF卡无法使用。
扩展板的操作:电源USB-C接到电脑,板上的OTG和BOOT跳线用短路帽短上(如下图)。
核心板驱动安装完成后,打开计算机的设备管理器,查看是否有新的USB设备出现,下图中“BCM2712D0 Boot”即识别树莓派CM5:
再从开始菜单的所有程序下,Raspberry Pi下面有个“rpiboot-CM4-CM5 - Mass Storage Gadget”:
打开这个软件,计算机会将eMMC的分区在Windows下分配盘符并显示出来:
稍等片刻,在资源管理器中会出现一个分区(本例中的分区名为bootfs,具体名称视实际情况而不同):
接下来我们就可以使用树莓派镜像烧录器烧写系统了。
打开树莓派镜像烧录器:
Raspberry Pi Device:选择Raspberry Pi 5;
请选择需要写入的操作系统:
- 选择Raspberry Pi OS(64-bit),为从树莓派官网下载系统镜像烧写(需联网);
- 选择Use Custom,则需要自行选择硬盘上已经下载的系统镜像(无需联网);
储存卡:选择刚才显示出来的分区;
选择完毕后按“NEXT”,建议点击“编辑设置”,将一些参数预设置进烧写软件,之后在系统启动时就不必再次设置,便于使用。
需要使用预设置的按“是”,不需要使用预设置的按“不”,进入下一页。
点击“是”,就开始烧写及验证完整性。
烧写完成后,把短路帽都拔掉,重新上电,启动系统即可。
3.2 TF卡的烧写
核心板如果没有eMMC,则系统将从TF卡启动。
TF卡的烧写步骤与eMMC基本相同,但是无需使用扩展板,只需将TF卡在电脑上烧写,将系统烧录到TF卡内的分区即可。
烧写完毕后,将TF卡插入扩展板(注意扩展板上的boot和OTG口不能有短路帽),上电后即可进入系统。
3.3 SSD的烧写
扩展板板载一路M.2 M-KEY接口NVME SSD,故可以从SSD启动系统,需要CM5核心板不带eMMC。
SSD的烧写步骤与eMMC基本相同,只是无需使用扩展板,将SSD卡通过USB硬盘盒插入电脑,将系统烧录到SSD内的分区即可。
烧写完毕后,将SSD插入扩展板,上电后即可进入系统;注意此时不要插TF卡,BOOT和OTG插针上不要插短路帽。
四、树莓派OS的操作
4.1 测试USB口
4.1.1 USB口识别测试
将若干USB外设接到CM5IO_Mini扩展板的USB口上,如下图所示:
在树莓派终端中执行lsusb
,显示如下:
识别都正常
随后输入lsusb -t
查看USB口的工作模式是否正常:
Bus 02:为USB 3.0接口,5000M;
Bus 04:为USB 3.0接口,5000M;
Bus 05:为USB 2.0接口,480M。
注意,如果扩展板上的上述USB口不接设备,那lsusb里是不会出现相应的设备编号的。如Bus 005 Device 003在这里是因为接了无线键鼠才会出现,如果不接设备,就不会出现这个编号。
4.1.2 测速USB3.0
将一个NVME M.2硬盘插入SSD转USB硬盘盒,然后将这个硬盘盒插入CM5IO_Mini扩展板的USB3.0-A口,同时在PCIe转M.2接口插上一个NVME M.2硬盘,启动系统,在这两个硬盘之间拷贝大文件,测试结果如下:
数据传输方向 | 耗时s | 传输速度MB/s | 包大小MB |
NVME->PCIe SSD | 5.39 | 379.96 | 2048.00 |
PCIe SSD->NVME | 6.04 | 339.07 | 2048.00 |
NVME->PCIe SSD | 28.71 | 356.67 | 10240.00 |
PCIe SSD->NVME | 41.82 | 244.86 | 10240.00 |
4.1.3 测速USB2.0
将一个NVME M.2硬盘插入SSD转USB硬盘盒,然后将这个硬盘盒插入CM5IO_Mini扩展板的USB2.0-A口,同时在PCIe转M.2接口插上一个NVME M.2硬盘,启动系统,在这两个硬盘之间拷贝大文件,测试结果如下:
数据传输方向 | 耗时s | 传输速度MB/s | 包大小MB |
NVME->PCIe SSD | 35.66 | 57.43 | 2048.00 |
PCIe SSD->NVME | 56.14 | 36.48 | 2048.00 |
NVME->PCIe SSD | 238.13 | 43.00 | 10240.00 |
PCIe SSD->NVME | 281.25 | 36.41 | 10240.00 |
4.2 测试SSD硬盘
4.2.1 SSD硬盘的识别
SSD硬盘做数据存储用,上电启动系统后,在树莓派终端中执行lspci
,查看SSD硬盘信息:
然后需要对SSD硬盘进行授权,在File Manager中点击SSD分区,会弹出授权框,填入当前账户的密码进行授权:
注意:点击的第一个分区需要输入密码进行授权,如有其它分区只需要点击即可完成授权。
授权完毕后,在桌面会显示分区:
在树莓派终端中输入df,即可查看SSD硬盘分区信息:
我们可以看到两个SSD分区名为nvme0n1p1、nvme0n1p2。
4.2.2 测试SSD硬盘接口速度(PCIe Gen2)
默认状态下,SSD硬盘运行在 PCIe Gen2下。
安装硬盘测速软件hdparm,在树莓派终端下运行:
sudo apt install hdparm
运行接口测速命令,可多次运行,测试多次硬盘速度:
sudo hdparm -t /dev/nvme0n1
这里运行了5次,具体数据见下:
次数 | 传输速度MB/s |
1 | 451.19 |
2 | 451.40 |
3 | 451.51 |
4 | 451.50 |
5 | 451.52 |
平均 | 451.42 |
4.2.3 测试SSD硬盘接口速度(PCIe Gen3)
首先在树莓派OS终端中输入sudo nano /boot/firmware/config.txt
,在最后一行加入下列代码:
dtparam=pciex1_gen=3
保存后退出并重启系统,这样就切换到了PCIe Gen3。
运行接口测速命令,可多次运行,测试多次硬盘速度:
sudo hdparm -t /dev/nvme0n1
这里运行了5次,具体数据见下:
次数 | 传输速度MB/s |
1 | 885.29 |
2 | 881.59 |
3 | 877.42 |
4 | 880.50 |
5 | 883.33 |
平均 | 881.63 |
可见在PCIe Gen3下的SSD硬盘的接口速度与在PCIe Gen2下的测试数值相比,有明显的提高。
4.2.4 测试SSD硬盘读写速度速度
分别测试SSD硬盘在PCIe Gen2下和PCIe Gen3下的读写速度,结果如下:
PCIe Gen2:
数据传输方向 | 耗时s | 传输速度MB/s | 包大小MB |
SSD->eMMC | 14.17 | 144.53 | 2048.00 |
eMMC->SSD | 7.88 | 259.90 | 2048.00 |
SSD->eMMC | 90.74 | 112.85 | 10240.00 |
eMMC->SSD | 43.84 | 233.58 | 10240.00 |
PCIe Gen3:
数据传输方向 | 耗时s | 传输速度MB/s | 包大小MB |
SSD->eMMC | 13.80 | 148.41 | 2048.00 |
eMMC->SSD | 7.77 | 263.58 | 2048.00 |
SSD->eMMC | 90.15 | 113.59 | 10240.00 |
eMMC->SSD | 43.46 | 235.62 | 10240.00 |
4.3 测试以太网口
将扩展板的网口接上级路由器,执行ifconfig -a
,显示如下:
eth0即为原生千兆网口。
我们使用网速测试软件iperf3进行测速。
Windows版iperf3下载:
http://www.mcuzone.com/down/Software.asp?ID=10000634
Linux下iperf3安装:
sudo apt-get install iperf3
测速结果为:
client模式为938Mbps左右:
server模式为948Mbps左右:
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
4.4 测试RTC
CM5核心板自带RTC,扩展板上需外接电池,可在树莓派系统下直接使用。如下图所示:
系统启动后,在树莓派终端中运行:
ls /dev/r*
即可看到RTC设备:
显示当前系统时间的命令是date
;
将系统时间从RTC读出的命令是sudo hwclock -r
;
将系统时间写入RTC的命令是sudo hwclock -w
。
如下图所示:
如果此时正确接上了RTC电池,则断电后RTC内部的当前时间不会消失,否则将会恢复到默认时间(1970年1月1日)。
4.5 测试PWM风扇
安装监测软件s-tui:
sudo apt install s-tui
然后在树莓派终端中运行s-tui
,则可以在监测窗口中看到风扇转速的变化:
如果需要自定义风扇的转速和运行的温度范围,请打开终端,运行下列命令:
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
4.6 测试DSI
4.6.1 测试树莓派官方第一代液晶屏
我们测试用的液晶屏是树莓派官方第一代液晶屏,接口为CAM/DISP 0,液晶屏需额外独立供电(Micro-USB接口,位于显示屏后部的控制板上),上电启动系统,打开终端,运行下列命令:
sudo nano /boot/firmware/config.txt
在文件末尾加入下列语句:
dtoverlay=vc4-kms-dsi-7inch,dsi0
保存后重启系统,即可使用树莓派官方7寸触摸屏。
如果使用CAM/DISP 1接口,请将dsi0改成dsi1,且需要短接核心板上方的SCL与SDA两个跳线:
4.6.2 测试树莓派官方第二代液晶屏
这里使用的是树莓派官方第二代液晶屏进行测试,液晶屏需额外独立供电(电源接口与扩展板的GPIO的5V和GND相连)。
连接好硬件后,给扩展板上电。等待系统运行后打开终端,运行下列命令:
sudo nano /boot/firmware/config.txt
在文件末尾加入下列语句:
dtoverlay=vc4-kms-dsi-ili9881-7inch,dsi0
保存后重启系统,即可使用树莓派官方二代7寸触摸屏。
如果使用CAM/DISP 1接口,请将dsi0改成dsi1,且需要短接核心板上方的SCL与SDA两个跳线。
4.6.3 注意事项
注意1:如果同时插HDMI显示器和7寸触摸屏,7寸触摸屏有可能变成副屏,只要关机后将HDMI显示器拔掉,再启动系统,7寸触摸屏就会成为主屏。
注意2:添加的语句实际上开启了第二块显示屏,即双屏显示,无论第二块屏的硬件是否安装,系统都有可能认为存在双屏,如果使用PrtScn截图,也会截到双屏的图。甚至还有可能造成系统无法启动。因此如果不需要使用这块屏,建议在config.txt中把这条语句去掉或者注释掉。
4.7 测试CSI
我们使用的是OV5647摄像头,接口为CAM/DISP 0,系统运行后打开终端,运行下列命令:
sudo nano /boot/firmware/config.txt
在文件末尾加入下列语句:
dtoverlay=ov5647,cam0
在实际使用中根据自己的型号进行添加,保存后重启系统,即可使用OV5647摄像头。
如果使用CAM/DISP 1接口,请将cam0改成cam1,且需要短接核心板上方的SCL与SDA两个跳线。
重启后在终端中输入:
ls /dev/video*
即可看到video0设备:
在终端中输入libcamera-hello --camera 0
即可打开对应的摄像头浏览:
如果需要拍照,则输入:
libcamera-jpeg -o test.jpg
照片保存在/home/mcuzone
目录下(即用户主目录),照片效果如下:
4.8 测试开关机按键
CM5IO_Mini扩展板带有一个开关机按键,开机状态下,按一下按键,弹出关机菜单:
再按一下按键,直接关机;
关机状态下(需接电源)按一下按键,上电开机。
4.9 PoE电源输入
CM5IO_Mini扩展板可选配PoE供电,可提供5V4.5A输出。PoE供电和USB-C电源口供电不可同时使用。
15
板载PoE模组参数:
25.5W(5V4.5A) PoE模组,支持IEEE802.3af/at compliant
支持37-57V输入,典型值48V
带过热保护,短路保护,过流保护
1.5KVrms绝缘等级
PSE供电设备要求:
支持IEEE802.3af/at compliant
至少支持30W输出能力
48V输出,1,2+/3,6-供电
4.10 测试HDMI
CM5IO_Mini扩展板具有两个HDMI输出口,支持分别输出图像信号和同时输出图像信号,同时输出图像信号的效果如下:
五、选配件
5.1 内置4G模组
我司配套的4G模块均具有免驱免拨号、系统自动识别、即插即用等功能。4G型号有CAT4 4G、高通4G、高通4G-GPS、ZTE CAT4 4G。其中CAT4 4G和ZTE CAT4 4G,系统均自动识别成eth设备,高通4G/高通4G-GPS均自动识别成usb0。
将4G模块接到CM5IO_Mini扩展板的1.25mm-4p接口:
原生千兆网口接上级路由器,启动系统,在树莓派系统终端下执行ifconfig -a
,以CAT4 4G为例,显示结果如下:
执行route
,查看路由表,eth1排在第一位,因此此时是通过4G模块上网:
我们ping IP和域名,均成功,说明4G模块工作正常:
打开https://www.speedtest.cn/进行网速测试,结果如下:
注意:网络测速受网络环境和测试方法影响,速度请以实际为准,本测试仅供参考。
5.2 CM5IO_HDMI IN模块
将CM5IO_HDMI IN模块接到扩展板的usb口,如下图所示:
使用OBS软件作为视频捕捉软件,捕捉视频源的图像,并储存为一个分辨率为1080p的视频软件。具体操作见:
5.3 CM5IO-UART
CM5IO_UART模块接到扩展板的40PIN GPIO上,扩展两个带隔离的RS485接口和两个RS232接口,如下图所示:
具体操作步骤,请看:
5.4 CM5IO_UUART
CM5IO_UUART模块是由USB口外扩串口芯片,引出2路RS232和2路带隔离的RS485接口,接到扩展板的usb口,如下图所示:
接口的操作同5.3。
5.5 CM5IO-UART-CAN
CM5IO_UART-CAN模块接到扩展板的40PIN GPIO上,扩展两个RS232和两路带隔离的RS485接口以及两个带隔离CAN接口,如下图所示:
接口使用操作,请参考:
5.6 NVME转2.5G以太网
扩展板反面的M.2接口上接一个SSD转2.5G转接板,以实现一路2.5G以太网口,树莓派官方os免驱,即插即用,自动识别,系统识别成eth1。
5.7 NVME转WiFi7转接板
CM5IO_Mini扩展板反面的M.2接口,接一个NVME转WiFi7转接板,用于扩展WiFI7/6无线网卡。如图所示:
树莓派官方OS需要加载驱动,Ubuntu系统免驱。具体操作看参考:
5.8 温湿度模块
将树莓派专用温湿度模块使用USB线连接至CM5IO_Mini扩展板上的USB接口,如图所示:
启动系统,在终端中执行lsusb
,红框处即为连接温湿度模块与树莓派的USB转串口模块:
执行ls /dev/ttyUSB*
:
ttyUSB0即为温湿度模块所占用的串口。
打开CuteCom,选择ttyUSB0,开启串口,即可看到有温湿度数据输出:
联系我们
电话:13957118045
如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!
Copyright 2004-2025 野芯科技