CM4-POE-UPS-BASE

来自Waveshare Wiki
Eng50讨论 | 贡献2023年1月14日 (六) 14:55的版本 (文本替换 - 替换“<h1>技术支持</h1>”为“=售后=”)
跳转至: 导航搜索
CM4-POE-UPS-BASE
{{{name2}}}
{{{name3}}}
板载接口
DSI CSI HDMI USB 3.2
I2C I2S SPI POE
RPi Ethernet FAN

说明

产品概述

我是树莓派计算模块4代的IO板,Compute Module 4 POE Board 是一款可以搭配树莓派 Compute Module 4 使用的底板,并且支持POE供电和7~36V DC直流供电,板载四路USB2.0,方便用户使用。

使用须知

1:在连接前确认风扇电压,支持5V 和 12V 默认连接12V,切换请修改FAN_VCC的跳帽
2:USB Type C接口用作USB SLAVE 接口烧录镜像,也可作为供电接口,不可以做为OTG接口。
3:BOOT开关为CM4启动模式开关,ON端CM4进入烧录模式,OFF端系统正常启动。
4:在正常使用时,需要为CM4 至少提供5V 1.5A 的供电。否则可能出现自动关机,降频等等问题。
5:USB2.0 默认是关闭的,如需打开需要在config.txt中添加 dtoverlay=dwc2,dr_mode=host
6:使用POE功能时,注意查看交换机是否支持802.3af 网络标准的 PoE。
7:需要使用POE时,将POE跳线帽连接到EN位置。
7:Change LED灯为充电指示灯,充电状态时常亮,充满电时熄灭,故障时闪烁。

特别注意事项

注意1:组装时需要先将电源开关拨到OFF一端,断开电源再组装否则带电操作容易导致短路烧坏器件。
注意2:首次接上电池需要注意WARNING LED灯是否亮,如果LED亮则表示对应的电池接反了。电池接反情况下禁止充电。
注意3:首次接上电池有可能会没有电源输出,需要按一下BOOT激活按键或者充一下电激活电池保护芯片才会有电源输出。电源开关需要拨到ON的位置。
注意4:禁止带电时拔插除USB和HDMI之外的任何设备。
注意5:长时间工作大电流工作建议不要超过4A,长时间工作在4A状态下会发热升温,注意散热。
注意6:外部供电必须大于整个系统用电,否则长时间没有足够电流给电池充电,电池电量越来越低直到关机。
注意7:当系统负载大而电池电压低时,有可能会出现电池电流不足而导致系统不断重启的情况。
注意8:电池正极绝缘垫如果弄掉坏了建议不要继续使用容易导致短路起火,拆电池时切忌用螺丝刀撬电池正极容易导致短路要撬电池负极。

锂电池使用注意事项

  • 锂聚合物和锂离子电池很不稳定。如果充电或使用不当,可能会导致火灾,人身伤害和财产损失。
  • 对电池组充电和放电时,切勿极性连接错误。请勿选用其他劣质的充电器或充电板对锂电池进行充电。
  • 请勿混用和使用旧电池和新电池,避免使用其他品牌的电池。
  • 如需另购锂电池产品,须确保电池参数与锂电池扩展板兼容,推荐选择正规的电池厂家,并需要自行老化测试确保锂电池能够稳定安全工作。
  • 锂电池具有循环寿命,请在达到使用寿命或使用两年时(以先到者为准),用新电池更换旧电池。
  • 请妥善放置电池类产品,远离易燃易爆类物品,远离儿童,避免因保管不慎,引发安全事故。

产品尺寸

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

板载资源

CM4-POE-UPS-BASE-details-5.jpg

特殊功能管脚说明

CM4-POE-UPS-BASE-2.png

名称 说明
1 EEPROM WP 低电平防止EEPROM被改写
2 VADC COMP 复合视频输出
3 ETH IN ETH同步信号
4 PI_GLOBAL_EN CM4板载MXL7704电源使能管脚,低电平禁用
5 PI_RUN CM4 状态指示,高电平表示已开机,强制拉低强制重启CM4
6 WIFI_EN WIFI使能,低电平禁用,悬空开启
7 BT_EN 蓝牙使能,低电平禁用,悬空开启




镜像烧录

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

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默认是关闭的,需要加载对应设备树用于开启,并且使用CSI摄像头与DSI屏幕的时候会占用I2C-10、I2C-11、I2C-0 三个I2C设备
  • 输入一下指令:
sudo apt-get install p7zip-full -y
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/
#如果使用两个摄像头和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

新版本系统(bullseye)

配置摄像头

  1. 执行如下命令进入编辑/boot/config.txt文件
    sudo nano /boot/config.txt
  2. 屏蔽或者删除掉摄像头自动检测语句
    CM4-NANO-B-CSI-00.png
  3. 添加你使用的摄像头的驱动动,这里我以IMX219为例,并且连接上CAM0上,附上适配CM4-NANO-B-CSI-02.png

    型号 CAM0设置语句 CAM1设置语句
    OV9281 dtoverlay=ov9281,cam0 dtoverlay=ov9281,cam1
    IMX290/IMX327 dtoverlay=imx290,clock-frequency=37125000,cam0 dtoverlay=imx290,clock-frequency=37125000,cam1
    IMX378 dtoverlay=imx378,cam0 dtoverlay=imx378,cam1
    IMX219 dtoverlay=imx219,cam0 dtoverlay=imx219,cam1
    IMX477 dtoverlay=imx477,cam0 dtoverlay=imx477,cam1
    IMX708 dtoverlay=imx708,cam0 dtoverlay=imx708,cam1
    • 如果使用的是树莓派官方摄像头,且只有一个摄像头接入,无需设置config文件,如果不是官方摄像头,请设置dtoverlay语句,不需要加cam后缀
    • CM4-NANO-只用到CAM0,所以只需要添加一句 dtoverlay=imx219,cam0 即可
  4. 快捷键Ctrl+o保存文件,并回车
    CM4-NANO-B-CSI-03.png
  5. 快捷键Ctrl+x退出编辑器
  6. 重启CM4
    sudo reboot
  7. 测试摄像头

    1. 输入摄像头检测指令,此时可以看到摄像头已经被检查到了
      libcamera-hello --list-cameras

      CM4-NANO-B-CSI-01.png
    2. 显示摄像头画面到桌面
      libcamera-hello -t
    3. 拍摄照片
      libcamera-jpeg -o test.jpg
    4. 录制一个10s的视频
      libcamera-vid -t 10000 -o test.h264

    其他命令
    检查摄像头是否被检测到

    libcamera-hello --list-cameras
    

    打开对应的摄像头

    libcamera-hello  --camera 1
    libcamera-hello  --camera 0
    

    拍摄照片

    libcamera-jpeg -o test.jpg
    #可以添加 --camera 来指定摄像头
    

    老版本系统(buster)

    配置摄像头

    1. 执行如下命令进入树莓派配置
      sudo raspi-config
    2. 选择Interfacing Options并进入
      Serial-Open-1.png
    3. 选择Camera
      Camera-Open-2.png
    4. 选择开启摄像头接口
      Camera-Open-3.png
    5. 系统提示如下
      Camera-Open-4.png
    6. 回到主界面,选择Finish
      Camera-Open-5.png
    7. 随后重启系统
      Serial-Open-6.png

    测试摄像头

    • 测试拍照:
       raspistill -o image.jpg
    • 测试录像:
       raspivid -o video.h264 -t 10000
      • 其中 -t 10000 表示录制 10 秒,用户各根据自己的需要进行调整。

    参考:CSI相机

    INA219 电池电量检测

    I2C设备地址:0x43
    输入如下命令运行程序

    sudo apt-get install p7zip
    wget https://www.waveshare.net/w/upload/5/59/CM4_UPS_Code.7z
    7zr x CM4_UPS_Code.7z -r -o./
    cd CM4_UPS_Code
    python3 INA219.py
    

    程序运行后会输出电池电压,电流,功率以及电池剩余电量百分比等数值。
    CM4-POE-UPS-BASE-3.png
    注意:电流为正数则表示电池输出电流(可认为树莓派负载电流),如果电流为负数则表示电池充电电流。
    当系统负载大而电池电压低时,有可能会出现电池电流不足而导致系统不断重启的情况。这个是不希望看到的。实际应用中可以通过判断电池电压过低自动关机避免。
    示例程序中已经添加电池电压判断,电池电压过低而没有外接电源充电时,程序会60s内关闭系统。
    程序显示如下语句表示电池电压过低,需要及时充电,否则程序会自动关机。

    Voltage Low,please charge in time,otherwise it will shut down in 58 s
    

    如果需要使用摄像头或者DSI屏幕,建议将INA219 的I2C管脚切换到GPIO2/3 切换之后程序中修改:

    #ina219 = INA219(i2c_bus=10,addr=0x43)
    ina219 = INA219(i2c_bus=1,addr=0x43)
    

资料


官方手册

CM4核心板数据手册

原理图

程序

软件

相关链接

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


FAQ


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

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



售后


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

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