Compute Module 4 PoE Board
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
说明
产品概述
我是树莓派计算模块4代的IO板,Compute Module 4 POE Board 是一款可以搭配树莓派 Compute Module 4 使用的底板,并且支持POE供电和7~36V DC直流供电,板载四路USB3.2 Gen1,方便用户使用。
使用注意事项
1:禁止带电时拔插除USB和HDMI之外的任何设备
2:在连接前确认风扇电压,支持5V 和 12V 默认连接5V,切换请修改FAN_VCC的跳帽
3:Micro USB用作USB SLAVE 接口烧录镜像,不可以做为OTG接口。
4:在正常使用时,需要为CM4 至少提供5V 1.5A 的供电。否则可能出现自动关机,降频等等问题。
5:板载默认4 路 USB 3.2 Gen1 接口。
6:使用POE功能时,注意查看交换机是否支持802.3af 网络标准的 PoE。
7:需要使用POE时,将POE跳线帽连接到EN位置。
8:两个DISP接口默认无法一起使用。
产品尺寸
Compute_Module 4 POE Board
Compute_Module 4 核心板
板载资源
标号 | 名称 | 说明 | |
1 | CM4 连接器 | 适用于 Compute Module 4 的所有版本 | |
2 | DC供电接口 | 7~36V DC宽电压供电,建议使用24W或者更高功率的电源 | |
3 | 带PoE功能的以太网接口 | 10/100M自适应,可接入带PoE功能的路由器或交换机 | |
4 | USB SLAVE 接口 | Compute Module 4 可通过此接口烧录系统镜像 | |
5 | USB3.2 接口 | 4 路 USB 3.2 Gen1 接口,支持各种 USB 设备插入 | |
6 | HDMI 接口 | 双路 HDMI 接口,支持双 4K 30fps 输出 | |
7 | RTC | RTC 电池连接座,可接入CR2032电池,可以使用 RTC 唤醒,关机,重启,或者其他功能 | |
8 | CAM | 双路 MIPI CSI 摄像头接口 | |
9 | DISP | 双路 MIPI DSI 显示接口 | |
10 | FAN | 方便接入散热风扇,支持调速和测速 | |
11 | FAN 供电选择 | 可选择 5V 或 12V 电压驱动风扇 | |
12 | IO-VREF/PoE 选择 | IO-VREF:CM4 IO 逻辑电压切换 3.3V 或者 1.8V PoE: 使能(EN)或者失能 (DIS) | |
13 | 40PIN GPIO 接口 | 方便连接各种HAT模块 | |
14 | CAM0 和 DISP0 驱动 I2C 接口 | 在需要使用 CAM0 或者 DISP0 时连接 | |
15 | 其他功能管脚 | 特殊功能管脚 | |
16 | 双 LED 灯座 | 红灯:树莓派电源指示灯 绿灯:树莓派工作状态指示灯 | |
17 | TF 卡接口 (背面) | 用于接入带系统的 Micro SD 卡,以启动 Compute Module 4 Lite |
特殊功能管脚说明
名称 | 说明 | |
1 | PI BOOT | 开机引导时管脚为低电平,引导转移到 USB SLAVE 接口上 |
2 | EEPROM WP | 低电平防止EEPROM被改写 |
3 | IP1/0 | CM4主板MXL7704 AN1/0管脚 |
4 | VADC COMP | 复合视频输出 |
5 | ETH IN | ETH同步信号 |
6 | PI_EN | 与PI_RUN信号同步 |
7 | PI_GLOBAL_EN | CM4板载MXL7704电源使能管脚,低电平禁用 |
8 | PI_RUN | CM4 状态指示,高电平表示已开机,强制拉低强制重启CM4 |
9 | WIFI_EN | WIFI使能,低电平禁用,悬空开启 |
11 | BT_EN | 蓝牙使能,低电平禁用,悬空开启 |
注意事项
禁止带电时拔插任何设备
镜像烧录
RTC FAN
- 注意事项:请在接通扩展板电源前接上风扇再完成测试,请不要在扩展板已通电即风扇控制芯片已经通电之后再接上风扇,否则会烧掉芯片!
- 注意事项:连接前请确认风扇电压和实际上连接的风扇供电
注意 使用RTC禁止使用DSI和CSI
默认使用I2C-10
RTC (PCF85063a) 在i2c-10 上,地址是 0x51(7位地址)
FAN ( EMC2301 ) 在i2c-10 上,地址是 0x2f (7位地址)
如果需要添加到你程序中而不是内核中,可以参考C和Python例程参考 点这里
RTC
sudo nano /boot/config.txt #在最后添加 dtparam=i2c_vc=on dtoverlay=i2c-rtc,pcf85063a,i2c_csi_dsi #在dtparam=audio=on前面添加# 号 #dtparam=audio=on #保存退出,重启 sudo reboot
Hwclock简单使用
同步系统时钟 -> 硬件时钟
sudo hwclock -w
同步硬件时钟 -> 系统时钟
sudo hwclock -s #需要关闭网络,或者关闭网络对时,否则会被改回去
设置硬件时钟时间:
sudo hwclock --set --date="9/8/2021 16:45:05"
查看硬件时钟
sudo hwclock -r
显示版本信息
sudo hwclock --verbose
风扇
在上电的时候 风扇会转1秒,然后停止2秒,再转,这是正常现象
风扇目前没有官方的配置方法,有一个第三方配置方法:https://github.com/neg2led/cm4io-fan
此方法为第三方发布,出现任何问题,概不负责!
sudo apt-get install dkms mkdir -p ~/src cd ~/src git clone https://github.com/neg2led/cm4io-fan.git cd cm4io-fan sudo chmod 777 install.sh sudo ./install.sh #如果出现错误提示:Your kernel headers for kernel 5.XX.XX-v7l+ cannot be found at #重启设备之后在执行即可 #下面是对于config.txt的描述介绍 ############################# Name: cm4io-fan Info: Raspberry Pi Compute Module 4 IO Board fan controller Load: dtoverlay=cm4io-fan,<param>[=<val>] Params: minrpm RPM target for the fan when the SoC is below mintemp (default 3500) maxrpm RPM target for the fan when the SoC is above maxtemp (default 5500) midtemp Temperature (in millicelcius) at which the fan begins to speed up (default 50000) midtemp_hyst Temperature delta (in millicelcius) below mintemp at which the fan will drop to minrpm (default 2000) maxtemp Temperature (in millicelcius) at which the fan will be held at maxrpm (default 70000) maxtemp_hyst Temperature delta (in millicelcius) below maxtemp at which the fan begins to slow down (default 2000) #############################
或者 直接参考如下: dtoverlay=cm4io-fan,minrpm=500,maxrpm=5000,midtemp=45000,midtemp_hyst=2000,maxtemp=50000,maxtemp_hyst=2000 温度高于45摄氏度开始加速,高于50摄氏度最高速
CSI DSI
配置文件
CSI 和 DSI默认是关闭的,使用摄像头和DSI的时候会占用I2C-10、I2C-11、I2C-0 三个I2C设备
开机执行如下:
wget https://www.waveshare.net/w/upload/7/75/CM4_dt_blob_Source.zip unzip -o CM4_dt_blob_Source.zip -d ./CM4_dt_blob_Source sudo chmod 777 -R CM4_dt_blob_Source cd CM4_dt_blob_Source/ #如果使用两个摄像头和DSI0 执行 sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp0-double_cam.dts #如果使用两个摄像头和DSI1 执行 sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp1-double_cam.dts #在使用任意DSI时,HDMI1没有图像输出,哪怕你没有连接DSI屏幕只要编译的对应的文件,那HDMI1就没有输出了 #如果需要恢复,删除对应的dt-blob.bin 即可: sudo rm -rf /boot/dt-blob.bin #执行完毕 关闭电源 重启CM4
录播测试
再连接摄像头和DSI屏幕:
1: 确保断电状态下连接
2: 连接电源
3: 等待几秒后屏幕启动
4: 如果无法启动,检查/boot/dt-blob.bin 是否存在,如果存在再次重启即可。
旧版本(Buster)
摄像头需要运行raspi-config,选择Interfacing Options->Camera->Yes->Finish-Yes,reboot系统,打开enable camera,然后重启即可保存修改。
测试树莓派摄像头
查看接入的第一个摄像头画面:
sudo raspivid -t 0 -cs 0
查看接入的第二个摄像头画面:
sudo raspivid -t 0 -cs 1
新版本(Bullseye)
如果使用最新的树莓派OS(Bullseye):
#新系统使用双摄像头 #在config.txt中移除camera_auto_detect=1 #camera_auto_detect=1 #添加 dtoverlay=imx219,cam1 dtoverlay=imx219,cam0 #其中imx219是摄像头传感器型号,还有支持其他传感器 dtoverlay=ov5647,cam0 dtoverlay=imx219,cam0 dtoverlay=ov9281,cam0 dtoverlay=imx477,cam0 dtoverlay=imx519,cam0 #然后重启 reboot #打开摄像头 libcamera-hello -t 0 或者 libcamera-hello #其他部分指令: #检查摄像头是否被检测到 libcamera-hello --list-cameras #打开对应的摄像头,预览5秒 libcamera-hello --camera 1 libcamera-hello --camera 0 #拍摄照片 libcamera-jpeg -o test.jpg #拍摄视频 libcamera-vid -t 10000 -o test.h264 #可以添加 --camera 来指定摄像头 #-t <duration> 选项允许用户选择窗口显示多长时间,单位毫秒
更多指令点击我
- 注意:如果使用 DSI 接口显示将会有一个HDMI是禁用的,即使只是编译相应的文件而不连接 DSI 屏幕。
- 两个HDMI任意连接一个是可以输出图像,不限于那个HDMI,如果连接的两个HDMI屏幕那么只有HDMI0有图像输出
- 如果要启用 两个HDMI,请使用以下命令删除 dt-blob.bin 文件:
sudo rm -rf /boot/dt-blob.bin
- 然后重启即可
参考树莓派手册
资料
官方手册
原理图
3D图
程序
软件
相关链接
FAQ
b) 检查/boot/dt-blob.bin 文件是否存在,如果存在无法使用,请删除;