CM4-DISP-BASE-2.8A

来自Waveshare Wiki
跳转至: 导航搜索
CM4-DISP-BASE-2.8A
{{{name2}}}
{{{name3}}}
板载接口
DSI CSI HDMI USB 2.0
I2C I2S SPI RPi
Ethernet FAN

说明

产品概述

我是专门为树莓派计算模块4代的设计2.8 寸 CM4 触摸屏扩展板,CM4-DISP-BASE-2.8A是一款可以搭配树莓派 Compute Module 4 使用的底板,使用 5V/ 2.5A USB Type C接口供电,可直接接入 CM4 核心板,搭载了 2.8 英寸 IPS 显示屏,可满足 CM4 各版本的运行,且支持摄像头和视频输出。

使用注意事项

1:显示不是HDMI接口,而是DPI接口,
2:模块工作对于电源要求比较高,建议使用5V/4A 或者更加高功率的电源

产品尺寸

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

板载资源

CM4-DISP-BASE-2.8A-details-intro1.jpg

标号 名称 说明
1 CM4 连接器 适用于 Compute Module 4 的所有版本
2 CAM 接口 22PIN MIPI CSI 摄像头接口
3 供电/烧录接口 5V/2.5A 供电,也可以作为 eMMC 烧录接口
4 USB 2.0 接口 USB 2.0 接口,支持各种 USB 设备插入
5 HDMI1 接口 Micro HDMI 接口,支持 4K 30fps 输出
6 BOOT ON:CM4 USB Type C 开机引导
OFF: eMMC或者SD 卡开机引导
7 接口扩展 包含千兆网口、PCIE、USB等接口

CM4-DISP-BASE-2.8A-details-intro2.jpg

标号 名称 说明
1 USB 2.0 接口 3路USB 2.0 接口,支持各种 USB 设备插入
2 M.2 M KEY接口 适用于NVIE固态硬盘,或者支持 PCIE M.2 接口的通信模块
3 千兆网口 RJ45 千兆网口,支持 10 / 100 / 1000M 网络接入
4 M.2 LED M.2 指示接口工作状态
5 接口接入 扩展接口接入

相关链接

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

注意事项

禁止带电时拔插任何设备

镜像烧录

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

USB2.0

USB接口在CM4上默认是被禁用的,以节省电源。如果需要启动,你需要在config.txt文件中添加以下内容:

dtoverlay=dwc2,dr_mode=host

重启之后即可

如果使用最新的树莓派OS(2021年10月30号之后的镜像)USB2.0是默认是OTG模式,CM4会报错:

config failed, hub doesn't have any ports! (err -19)

不过USB还是可以使用的,如果想移除这个错误,在config.txt的[cm4]中移除otg_mode=1,并且添加dtoverlay=dwc2,dr_mode=host(不添加是无法识别USB的)。
CM4 Burn EMMC 12.png

显示

用于Raspberry Pi OS Bookworm和Bullseye分支

1. config.txt文件,在config.txt末端加入以下代码并保存:
dtoverlay=vc4-kms-v3d
dtoverlay=waveshare-28dpi-3b-4b   
dtoverlay=waveshare-28dpi-3b
dtoverlay=waveshare-28dpi-4b
dtoverlay=waveshare-touch-28dpi
dtoverlay=vc4-kms-dpi-2inch8
2. 下载2.8inch DPI LCD DTBO文件并解压复制到overlays目录(/boot/overlays/)
3. 保存并安全弹出TF卡,将TF卡插入树莓派。
4. 给树莓派上电,正常等待约三十秒后可正常显示。

用于Raspberry Pi OS Buster分支和Ubuntu系统

1. 打开TF卡根目录的config.txt文件,在config.txt最后加入以下代码,保存并安全弹出TF卡。
gpio=0-9=a2
gpio=12-17=a2
gpio=20-25=a2
dtoverlay=dpi24
enable_dpi_lcd=1
display_default_lcd=1
extra_transpose_buffer=2
dpi_group=2
dpi_mode=87
dpi_output_format=0x7F216
hdmi_timings=480 0 26 16 10 640 0 25 10 15 0 0 0 60 0 32000000 1
dtoverlay=waveshare-28dpi-3b-4b
dtoverlay=waveshare-28dpi-3b
dtoverlay=waveshare-28dpi-4b

注:用此方法驱动时,需要把文件中的dtoverlay=vc4-kms-v3d/dtoverlay=vc4-fkms-v3d语句注释掉。

2. 下载2.8inch DPI LCD DTBO文件并解压复制到overlays目录(/boot/overlays/)
3. 保存并安全弹出TF卡,将TF卡插入树莓派。
4. 给树莓派上电,正常等待约三十秒后可正常显示。

显示旋转

Bookworm显示旋转

GUI 界面旋转

  • 1.打开"Screen Configuration"应用程序;

DSI-LCD-Bookworm-Rotate-01.png

  • 2.进入"Screen"->"DPI-1"->"Touchscreen" ,勾选"13-005d Goodix Capacitive TouchScreen"

2.8 DPI LCD rotate 1.png

  • 3.进入"Screen"->"DPI-1"->"Orientation" ,勾选您需要旋转的方向,最后点击“Apply”,即可完成显示屏和触摸的同步旋转。

2.8 DPI LCD rotate 2.png -->
注意:仅Bookworm系统支持以上同步旋转方法。对于Bullseye和Butser系统,显示旋转后,需手动单独设置触摸旋转。

lite版本显示旋转

sudo nano /boot/firmware/cmdline.txt
#在cmdline.txt文件开头添加对应显示旋转角度的指令,保存重启后生效
#显示旋转90度
video=DPI-1:480x640M@60,rotate=90
#显示旋转180度
video=DPI-1:480x640M@60,rotate=180
#显示旋转270度
video=DPI-1:480x640M@60,rotate=270

注意:无法使用 cmdline.txt 将 DPI 显示器与 HDMI 显示器分开旋转。当您同时使用 DPI 和 HDMI 时,它们共享相同的旋转值。

Bullseye/Buster显示旋转

GUI 界面旋转

  • 1.打开"Screen Configuration"应用程序;

DSI-LCD-Bullseye-Rotate-02.png

  • 2.进入"Screen"->"DPI-1"->"Orientation" ,勾选您需要旋转的方向,最后点击"Apply",即可完成显示旋转。

DSI-LCD-Bullseye-Rotate-03.png
lite版本显示旋转

  • 1.需要修改/boot/cmdline.txt文件:
sudo nano /boot/cmdline.txt
  • 2.在cmdline.txt文件开头,添加对应显示旋转角度的指令:(请注意,该命令需要放在同一行上,每个命令用空格分隔。)
video=DPI-1:480x640M@60,rotate=90

通过将rotate值更改为 90、180 或 270 来更改显示旋转的角度。

  • 3.保存并重新启动
sudo reboot

Stretch/Jessie显示旋转

对于一些比较古老的系统,它们不使用vc4-kms-v3d 或 vc4-fkms-v3d 驱动模式,显示旋转方法如下

  • 1. 在config.txt文件中加入语句(config文件位于TF卡根目录,即/boot中):
display_rotate=1 #1:90;2: 180; 3: 270
  • 2. 保存后重启树莓派即可
sudo reboot

触摸旋转

Bookworm 触摸旋转

如果使用图形界面进行旋转,可以在屏幕布局编辑器窗口中勾选“Touchscreen”来同步触摸旋转。屏幕旋转方法请参考前面的介绍。命令行旋转方法请参考以下文字:
1. 创建一个名为的新文件99-waveshare-touch.rules

sudo nano /etc/udev/rules.d/99-waveshare-touch.rules

2. 根据需要添加以下行:

#90°:
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 -1 1 1 0 0"

#180°:
#ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="-1 0 1 0 -1 1"

#270°:
#ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"

3. 保存并重启

sudo reboot

Bullseye/Buster 触摸旋转

部分系统显示旋转后,触摸方向不一致,需要按下文操作进行触摸旋转:
1. 安装libinput

sudo apt-get install xserver-xorg-input-libinput
  • 如果你安装的是Ubuntu系统,或者是Jetson Nano。安装指令为
sudo apt install xserver-xorg-input-synaptics

2. 在/etc/X11/下创建xorg.conf.d目录 (如果该目录已存在,这直接进行第3步)

sudo mkdir /etc/X11/xorg.conf.d

3. 复制40-libinput-conf 文件到刚刚创建的目录下

sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/

4. 编辑该文件

sudo nano /etc/X11/xorg.conf.d/40-libinput.conf
#找到 touchscreen的部分,在里面添加对应的旋转角度指令,然后保存即可
#90°Right触摸旋转:
Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"
#180° Inverted触摸旋转: 
#Option "CalibrationMatrix" "-1 0 1 0 -1 1 0 0 1"
#270° Left旋转: 
#Option "CalibrationMatrix" "0 -1 1 1 0 0 0 0 1"
类似下图位置:

Touch roate.jpg
5. 重启树莓派

sudo reboot

完成以上步骤后触摸将会进行旋转。

M.2

M.2 接口类型为M KEY, 只支持PCIE通道的设备(包括NVME固态等等),不支持SATA硬盘。
CM4-DISP-BASE-2.8A-M-2.png
支持部分转接卡,走PCIE通道, 部分设备树莓派官方镜像无法驱动,需要重新编译内核。

开启摄像头

执行如下:

wget https://www.waveshare.net/w/upload/a/a2/Dts-2.8A.zip
 unzip -o  Dts-2.8A.zip -d ./Dts-2.8A
 sudo chmod 777 -R Dts-2.8A
 cd Dts-2.8A/
 sudo  dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-cm4-singlecam-dpi28.dts

旧版本(Buster)

注:在2021年12月2日,树莓派的Raspberry Pi OS分成了两个分支,分别是Buster分支和Bullseye分支。

其中Buster分支是老系统的延续,更为稳定。Bullseye分支则添加了一些新的功能,使用了开源的库和新的接口。

摄像头需要运行raspi-config,选择Interfacing Options->Camera->Yes->Finish-Yes,reboot系统,打开enable camera,然后重启即可保存修改。

如果你使用的Buster分支的系统,镜像无需任何改何修改即可正常使用。 摄像头画面:

sudo raspivid -t 0 -cs 0

新版本(Bullseye)

#检查摄像头是否被检测到
libcamera-hello --list-cameras

#打开的摄像头
libcamera-hello  --camera 0

#拍摄照片
libcamera-jpeg -o test.jpg



资料


官方手册

CM4核心板数据手册

原理图

3D图

程序

软件

FAQ

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

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


你可以注释掉config.txt文件的以下语句

dtoverlay=waveshare-touch-28dpi


售后

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

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