CM4-IO-WIRELESS-BASE

来自Waveshare Wiki
Eng20讨论 | 贡献2023年3月20日 (一) 16:10的版本 →‎4G/5G
跳转至: 导航搜索
CM4-IO-WIRELESS-BASE
{{{name2}}}
{{{name3}}}
板载接口
M.2 B KEY CSI HDMI USB 2.0
Ethernet FAN 4G 5G

说明

产品概述

基于树莓派 CM4 设计的工业扩展模块,板载了千兆以太网、HDMI、USB 和 GPIO 等常用接口,支持通过 M.2 或 Mini-PCIe 外接 4G / 5G / LoRa 等无线通信模块,还扩展了 RS485、CAN 和 RTC 等工业接口资源。工业导轨外壳设计,非常适用于构建物联网网关、4G / 5G 路由器,物联网数据采集,甚至将其用作工业自动化和控制系统中的可编程逻辑控制器等等。

使用注意事项

1:禁止带电时拔插除USB和HDMI之外的任何设备
2:在连接前确认风扇电压,支持5V 和 12V 默认连接12V,切换请修改FAN_VCC的电阻
3:为了保证CM4供电正常,在使用Type C 接口烧录镜像时,请不要连接其他设备。
4:模块需要为其提供5V 2.5A /12V 1A或者更加高功率的供电。否则可能出现自动关机,降频等等问题。
5:12V DC 接口 和 5V Type c 接口不要同时供电
6:USB2.0 默认是关闭的,如需打开需要在config.txt中添加 dtoverlay=dwc2,dr_mode=host

产品认证

产品已过CE认证
产品已过RoHS3.0 认证

产品尺寸

CM4-IO-WIRELESS-BASE
CM4-IO-WIRELESS-BASE-details-size.jpg
Compute_Module 4 核心板
Compute Module 4 IO Board 5.png

板载资源

CM4-IO-WIRELESS-BASE-details-intro.jpg

标号 名称 说明
1 CM4 连接器 适用于 Compute Module 4 的所有版本
2 HDMI 接口 HDMI 接口,支持 4K 30fps 输出
3 USB 2.0 接口 3 路 2.0 接口,支持各种 USB 设备插入
4 RJ45 千兆网口 RJ45 千兆网口,支持 10/100/1000M 网络接入
5 DC 供电接口 7 ~ 36V DC 供电接口
6 CM4 状态指示灯 红灯(PWR):树莓派电源指示灯
绿灯(ACT):树莓派工作状态指示灯
7 4G/5G 模组状态灯 红灯(STA):模组使能指示灯
绿灯(NET):模组运行状态指示灯
8 PWR & USB 接口 5V DC 供电接口或者 USB 烧录接口
9 M.2 B KEY 支持接入 4G/5G 或者其他 USB 通道的通信模块
10 Nano-SIM 卡座 可接入标准 Nano-SIM 卡,用于 4G/3G/2G 上网
11 BOOT 开关按钮 ON:Compute Module 4 开机引导转移到 USB Type-C 接口上
OFF:Compute Module 4 开机引导为 eMMC 或者 Micro SD 卡
12 DC 供电接口 7 ~ 36V DC 供电接口
13 双路非隔离 RS485 接口 双路 RS485 接口,提供 600W 防雷、浪涌和 15KV 静电保护 (预留 120R 可选平衡电阻跳线帽)
14 非隔离 CAN 接口 防静电和瞬态尖峰电压 (预留 120R 可选平衡电阻跳线帽)
15 Micro SD 卡接口 用于接入带系统的 Micro SD 卡,以启动 Compute Module 4 Lite
16 FAN 供电选择 可选择 5V 或 12V 电压驱动风扇
17 CAM 接口 MIPI CSI 摄像头接口
18 RTC 电池连接座 可接入 CR1220 纽扣电池
19 M.2 VCC 供电选择 选择 3.3V 或者 4.2V 供电
RTC 中断管脚切换 PI-RUN: RTC 触发中断 CM4 重启
GN-EN: RTC 触发中断 CM4 断电
D4: RTC 触发中断 D4 管脚
21 IO-VREF 选择 CM4 IO 逻辑电压切换 3.3V 或者 1.8V
22 FAN 供电选择 可选择 12V (默认) 或 5V 电压驱动风扇
23 系统功能切换 BT_DIS: 蓝牙禁用,仅供带天线的 CM4 版本使用
WiFi_DIS: WiFi 禁用,仅供带天线的 CM4 版本使用
WP_DIS: 启动方式切换,仅供不使用 EMMC 启动或 SD 启动的情况下使用
24 RTC/FAN I2C 总线选择 SDA0/SCL0: I2C-10 和 CSI/DSI 共用
GPIO3/2: I2C-1 和 40PIN 共用
25 部分 GPIO 接口 包含一组 I2C 和 2 个 GPIO 以及电源

相关链接

树莓派入门教程(新)
树莓派入门教程
树莓派OpenCV教程
树莓派littleGL系列教程
树莓派QT教程
树莓派OpenWrt教程



注意事项

禁止带电时拔插任何设备

镜像烧录

EMMC版本点击这里
LITE版本点击这里

RS485

默认关闭,如需打开需要在config.txt中添加内容:
sudo nano /boot/config.txt

dtoverlay=uart3
dtoverlay=uart5

设备号分别是

/dev/ttyAMA1 
/dev/ttyAMA2



CAN

默认关闭,如需打开需要在config.txt中添加内容:

#打开编辑config.txt
sudo nano /boot/config.txt
#添加以下内容
dtparam=spi=on
dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25
#重启
reboot 

重启之后执行:

dmesg | grep spi0

Compute Module 4 PoE 4G Board 1.png 执行:

sudo ip link set can0 up type can bitrate 1000000
sudo ifconfig can0 txqueuelen 65536
ifconfig

Compute Module 4 PoE 4G Board 2.png 出现can0 设备号说明驱动成功

测试

安装can-utils:

sudo apt-get install can-utils

接收数据

candump can0

发送数据

cansend can0 000#11.22.33.44
#其中11.22.33.44 是数据
#如果需要发送其他数据可以使用继续添加例如
# cansend can0 000#11.22.33.04.70
#不可以使用英文和中文,两位一码格式添加



M.2 B KEY

板载M.2 B KEY 内部带有PCIE、USB2.0、GPIO、I2C、SPI接口
默认的只能连接 :
SIM7600G-H-M.2
SIM8202G-M2
SIM8200EA-M2
等M.2 B KEY 接口的模块
支持M.2 B KEY 接口的 NVME 2242 的SSD
CM4-IO-WIRELESS-BASE-1-11.png


附送的Mini-PCIe 转接板 接入可以支持Mini PCIe接口的设备(只是接口是Mini PCIe接口,并不走PCIe通道,不支持PCIe设备),支持:
SX1302 868M LoRaWAN Gateway
SIM7600G-H-PCIE
等Mini PCIe接口的模块

4G/5G

板子本身不支持4G/5G,需要通过M.2 B KEY接口来接入模组,M.2 B KEY 只有USB2.0 通道
CM4-IO-WIRELESS-BASE-11.png
4G/5G 模组连接,然后在插入SIM卡

如果需要关闭4G/5G 模组,可以使用GPIO6 (BCM编码 6)控制,GPIO6输出高电平关闭模组,GPIO6输出低电平开启模组
关闭或者开启模需要一定时间(大约30秒),如果在开启前没有连接天线或者没有接入SIM卡
如果模组不能开机,可能是GPIO6 引脚被拉高了,请用以下指令拉低GPIO6引脚开机:

echo Exporting pin 6
echo 6 > /sys/class/gpio/export
echo Setting direction to out.
echo out > /sys/class/gpio/gpio6/direction
echo Setting pin 0

M.2 4G/5G 网卡

M.2 状态灯状态描述:

STA NET 状态
长亮 熄灭 关机 或者 正在开机
长亮 长亮 正在查找网络
长亮 闪烁 已联网,工作正常
熄灭 闪烁/长亮 正在关机

在配置前,请确认模块已经开机
5G 参考 [5G配置]

4G配置

sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2
#输入以下指令:
AT+CUSBPIDSWITCH=9011,1,1
#返回OK 即可
#然后等待网卡重启
#此指令只需要设置一次,下次上电会默认在这个模式下
#如果无法获取USB0网卡执行:
sudo dhclient -v usb0

RNDIS拨号上网请参考: RNDIS拨号上网

正常执行上面之后会识别到USB0网卡(如果你没有连接其他USB网卡)

如果你使用物联网卡,比如移动物联网卡,成功注册网络;但是拨号上网失败,无法ping通,可以尝试用以下AT指令的其中一条选择最优频段:

AT+CNBP=0x0002000000400183,0x000001E000000000,0x0000000000000021
AT+CNBP=0x0002000000400180,0x480000000000000000000000000000000000000000000042000001E200000095,0x0000000000000021

AT指令

如果无法连接网络,可以通过指令AT检查状态

sudo apt-get install minicom
sudo minicom -D /dev/ttyUSB2

常用AT指令

下面AT指令4G/5G模组指令通用

命令 说明 返回值
AT AT测试指令 OK
ATE ATE1设置回显
ATE0关闭回显
OK
AT+CGMI 查询模组制造商 OK
AT+CGMM 查询模组型号 OK
AT+CGSN 查询产品序列号 OK
AT+CSUB 查询模块版本以及芯片 OK
AT+CGMR 查询固件版本序列号 OK
AT+IPREX 设置模块硬件串口波特率 +IPREX:
OK
AT+CRESET 复位模块 OK
AT+CSQ 网络信号质量查询,返回信号值 +CSQ: 17,99
OK
AT+CPIN? 查询SIM卡状态,返回READY,表示SIM卡能正常识别 +CPIN: READY
AT+COPS? 查询当前运营商,正常联网后会返回运营商信息 +COPS:
OK
AT+CREG? 查询网络注册状态 +CREG:
OK
AT+CPSI? 查询UE系统信息
AT+CNMP 网络模式选择命令:
2:Automatic
13:GSM only
38:LTE only
48 : Any modes but LTE
... ....
OK

更多AT指令参考: AT_Command_V2.00
更多文档参考:SIMCom


LoRaWAN

使用SX1302 868M LoRaWAN Gateway (B)
注意:LoRaWAN 网关模块存在多个频段,注意所在区域是否支持对应频段


使用程序和SX1302 868M LoRaWAN Gateway (B)的默认程序存在差异,例程如下:

sudo wget https://www.waveshare.net/w/upload/9/9e/CM4-IO-WIRELESS-BASE-LoRaWAN.zip
unzip -o  CM4-IO-WIRELESS-BASE-LoRaWAN.zip -d ./CM4-IO-WIRELESS-BASE-LoRaWAN
cd CM4-IO-WIRELESS-BASE-LoRaWAN
make clean all
make all
cp tools/reset_lgw.sh util_chip_id/
cp tools/reset_lgw.sh packet_forwarder/

使用教程参考:点这里

RTC FAN

  • 注意事项:请在接通拓展板电源前接上风扇再完成测试,请不要在拓展板已通电即风扇控制芯片已经通电之后再接上风扇,否则会烧掉芯片!
  • 注意事项:连接前请确认风扇电压和实际上连接的风扇供电

使用树莓派系统(2021-05-07-raspios-buster-armhf-full )
注意 使用RTC禁止使用DSI和CSI
如果需要同时使用,将I2C切换到I2C1设备上(右边)
CM4-DUAL-ETH-4G-5G-BASE-12.png
切换之后所有程序或者驱动全部需要修改
例程默认使用I2C10(左边)

如果需要简单使用,或者需要添加到你程序中,参考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
此方法为第三方发布,不是官方发布,出现任何问题,概不负责!

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
#下面是对于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设备
CM4-DUAL-ETH-4G/5G-BASE 的DSI接口是DSI1接口
开机执行如下:

sudo apt-get install p7zip-full
wget https://www.waveshare.net/w/upload/4/41/CM4_dt_blob.7z
7z x CM4_dt_blob.7z -O./CM4_dt_blob
sudo chmod 777 -R CM4_dt_blob
cd CM4_dt_blob/
#如果使用两个摄像头和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: 使用CM-DSI-ADAPTER 转接板连接Compute Module 4 PoE Board和DSI屏幕
3: 使用CSI转接线转接板连接Compute Module 4 PoE Board和CSI摄像头
3: 连接电源
4: 等待几秒后屏幕启动
5: 如果无法启动,检查/boot/dt-blob.bin 是否存在,如果存在再次重启即可
6: 摄像头需要运行raspi-config,选择Interfacing Options->Camera->Yes->Finish-Yes,reboot系统,打开enable camera,然后重启即可保存修改。

参考

测试树莓派摄像头 查看接入的第一个摄像头画面:

sudo raspivid -t 0 -cs 0

查看接入的第二个摄像头画面:

sudo raspivid -t 0 -cs 1


参考CSI相机 DSI显示器


FAQ


a) 检查 /boot/config.txt中是否屏蔽 dtparam -audio - on

b) 检查/boot/dt-blob.bin 文件是否存在,如果存在无法使用,请删除;



售后


联系人:彭工
EMAIL:2851966006@qq.com
电话:0755-83040712
QQ:2851966006
微信:扫下方二维码添加
Pqy.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证