...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 设备A(RK3588)作为主机 # 步骤1:配置串口参数 stty -F /dev/ttyS2 115200 cs8 -cstopb -parenb stty -F /dev/ttyS2 raw stty -F /dev/ttyS2 -echo # 步骤2:发送测试数据 echo "RS485_TEST_FROM_RK3588" > /dev/ttyS2 # 步骤3:接收数据测试(需要另一设备发送) cat /dev/ttyS2 # 或使用十六进制显示 hexdump -C /dev/ttyS2 |
...
3.USB接口测试
1. 设备连接状态识别
通过以下命令确认设备是否接入系统并获取设备节点信息:
...
结果说明:lsusb输出中,ID 1d6b:0002对应 USB2.0 控制器,ID 1d6b:0003对应 USB3.0 控制器,可通过设备挂载的总线判断其关联的 USB 版本。
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 遍历所有USB设备,输出其传输速度
for device in $(ls /sys/bus/usb/devices/); do
if [ -f "/sys/bus/usb/devices/$device/speed" ]; then
speed=$(cat /sys/bus/usb/devices/$device/speed)
echo "Device: $device, Speed: $speed Mbps"
fi
done |
2 2.通过详细信息验证
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看指定USB设备的详细参数,搜索Speed字段 lsusb -v | grep -E "Speed|Device" |
结果说明:输出中Speed: 480Mbit/s对应 USB2.0,Speed: 5000Mbit/s对应 USB3.0。
1.1.挂载 USB 设备:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 假设通过lsblk确认USB设备节点为/dev/sda1,创建挂载点并挂载 mkdir -p /mnt/usb mount /dev/sda1 /mnt/usb |
2 1.2. 测试顺序写速率:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 写入1GB零数据到USB设备,绕过缓存确保结果真实 dd if=/dev/zero of=/mnt/usb/testfile bs=1M count=1024 conv=sync oflag=direct |
3 1.3.测试顺序读速率:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 读取USB设备中的测试文件并丢弃,测试读取速度 dd if=/mnt/usb/testfile of=/dev/null bs=1M iflag=direct |
4 1.4.测试后清理临时文件:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
rm /mnt/usb/testfile |
结果说明:命令执行完毕后会显示传输时间和速率,USB2.0 实际写速率通常在 10 - 30MB/s,USB3.0 实际写速率通常在 50 - 150MB/s(受设备本身性能影响)。
1 2.1.安装 fio:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# Ubuntu/Debian sudo apt install fio -y |
2.2.fio测试命令代码块:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 顺序写测试 fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=write -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1 # 顺序读测试 fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=read -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1 # 随机写测试 fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=randwrite -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1 # 随机读测试 fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=randread -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1 # 随机读写混合测试(默认读写比例 50:50) fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=randrw -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1 |
...
四、显示与视频接口测试
1.HDMI/DP输出测试
1.规格说明:
| 接口 | 核心规格 | 关键限制 |
|---|---|---|
| HDMI 2.1 | 单接口、支持 8K@30Hz/4K@60Hz、HDCP2.3 | 需 HDMI2.1 认证线缆,最大带宽 48Gbps |
| DP 1.4a(4Lane) | 单接口、支持 4K@60Hz、HDCP2.3 | 8K 仅支持 30Hz,4K 可满帧 60Hz |
1.显示接口及分辨率列表查询
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
执行命令: cat /sys/class/video4linux/video0/name 输出结果: stream_hdmirx 说明: stream_hdmirx 表示这是一个视频流 HDMI 接收设备(hdmirx = HDMI Receiver) |
| 设备节点 | 设备类型 | 功能说明 | 权限 / 设备号 |
|---|---|---|---|
| /dev/video0 | 字符设备(c 开头) | HDMI 输入视频采集设备(核心) | root/video 组可读写;主设备号 81,次设备号 0 |
| /dev/video-dec0 | 普通文件 | 系统视频解码设备 | root/video 组可读写 |
| /dev/video-enc0 | 普通文件 | 系统视频编码设备 | root/video 组可读写 |
3.查询设备驱动信息:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
readlink -f /sys/class/video4linux/video0/device/driver |
...
| 异常现象 | 可能原因 | 排查方法 |
|---|---|---|
| 终端提示 “No such device” | /dev/video0 节点不存在 | 1.检查 HDMI IN 驱动是否加载:lsmod grep rk_hdmirx
|
| 显示屏无播放窗口 | DISPLAY 环境变量配置错误 | 执行 echo $DISPLAY 确认值为 :0.0,或切换到本地终端执行命令 |
| 画面卡顿 / 花屏 | 信号源分辨率不兼容 | 将 HDMI 信号源输出分辨率调整为 1080P@60Hz 后重新测试 |
五、无线通信测试
...
3.
...
视频硬解码性能测试
MMP视频解码器规格:
2.基础连接稳定性
1.启动NetworkManager服务
| 代码块 | ||||
|---|---|---|---|---|
| ||||
sudo systemctl start NetworkManager |
...
插件名称:mppvideodec
插件版本:1.14.4
插件路径:/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrockchipmpp.so
支持编码:HEVC/H.265, AVC/H.264, VP8, VP9
解码类型:硬件加速解码
技术架构:基于Rockchip MPP(Media Process Platform)框架
最大解码能力:8K 10-bits 视频解码,支持 8K 60HZ 视频输出 |
测试步骤:
1.准备测试视频:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
sudo nmcli dev wifi rescan # 重新扫描WiFi网络
sudo nmcli dev wifi list # 查看可用WiFi列表(可选)
sudo nmcli dev wifi connect "WiFi名称" password "WiFi密码" ifname wlan1 |
...
#假设视频路径:
C:\Users\Administrator\Desktop\test_video\4K_60fps.mp4
# 将视频文件推送到开发板的/tmp目录
adb push "C:\Users\Administrator\Desktop\boot\4K_60fps.mp4" /tmp/
|
执行硬解码测试:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
ping# www.baidu.com验证硬解码功能(以H.264格式视频为例) gst-launch-1.0 filesrc location=/tmp/4K_60fps.mp4 ! \ qtdemux ! \ h264parse ! \ mppvideodec ! \ videoconvert ! \ autovideosink |
执行命令后显示屏会出现解码视频:
开启第二个终端进行cpu占用率监控4.示例命令
| 代码块 | ||||
|---|---|---|---|---|
| ||||
sudo# nmcli窗口2:查看整体系统状态 adb devshell wifi connect "Hitop nova-bn1 9| Pro" password "12345678" ifname wlan1 |
3.Wi-Fi 网络 TCP/UDP 协议性能测试
1.环境准备:
两台测试设备(如开发板 + PC),确保处于同一网络(WiFi / 以太网);
...
head -20" |
系统整体状态:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# Debian/Ubuntu
sudo apt install iperf3 |
2.角色定义:
服务端(Server):接收数据的设备;
客户端(Client):发送数据的设备。
3.TCP 带宽测试(常用)
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 服务端默认监听5201端口
iperf3 -s |
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 测试TCP带宽(持续10秒,默认)
iperf3 -c [服务端IP] |
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 测试30秒,每2秒输出一次实时数据
iperf3 -c [服务端IP] -t 30 -i 2
# 测试双向带宽(服务端/客户端互传)
iperf3 -c [服务端IP] -d |
4.UDP 丢包 / 延迟测试
| 代码块 | ||||
|---|---|---|---|---|
| ||||
iperf3 -s |
...
CPU使用率:用户态5.0% + 系统态5.0% = 总10%,空闲89.9%
内存:8GB总内存,仅使用731MB,空闲6GB
硬件解码工作正常:CPU占用率仅5.9%,远低软件解码
性能优秀:系统整体很空闲,解码4K视频无压力
内存使用低:仅占用26MB内存,硬件解码不占用大量内存 |
测试结果:视频能流畅播放,无卡顿、花屏现象,CPU 占用率低(硬件加速生效
七、音频接口测试
card编号 | 设备名称 | 硬件接口 | 功能说明 |
|---|---|---|---|
0 | rockchiphdmi0 | HDMI0 | 第一个HDMI接口音频输出 |
| 1 | rockchipdp0 | DisplayPort0 | 第 1 路 DP 接口(仅支持视频输出,不支持音频) |
| 2 | rockchipdp1 | DisplayPort1 | 第 2 路 DP 接口(仅支持视频输出,不支持音频) |
| 4 | rockchipes8388 | ES8388 Codec | 板载音频接口(3.5mm 4 节接口,支持:耳机输出、扬声器输出、MIC 输入) |
1.音频输出功能验证
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 步骤1:通过adb连接设备(确保设备已开启调试模式) adb shell # 测试UDP(指定带宽100Mbps) iperf3 -c [服务端IP] -u -b 100M |
5.结果解读(示例)
TCP 测试结果
| 代码块 | ||||
|---|---|---|---|---|
| ||||
[ 5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 1.10 GBytes 943 Mbits/sec # 实际带宽:943Mbps |
UDP测试结果
步骤2:推送测试音频文件到设备(电脑端执行)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav
# 步骤3:查看设备音频输出列表(确认card编号对应关系)
aplay -l
# 步骤4:HDMI0音频输出测试
aplay -D plughw:0,0 /test.wav
# 预期现象:HDMI连接的显示设备播放音频
# 步骤5:板载音频(耳机)输出测试
aplay -D plughw:4,0 /test.wav
# 预期现象:3.5mm耳机播放音频
# 步骤6:硬件功能验证(正弦波测试,排除文件本身问题)
speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2
# 预期现象:耳机输出1000Hz双声道正弦蜂鸣声
|
测试项 | 操作命令 | 预期结果 |
|---|---|---|
HDMI0 音频输出 | aplay -D plughw:0,0 /test.wav | 显示设备正常播放音频 |
| 板载耳机输出 | aplay -D plughw:4,0 /test.wav | 耳机正常播放音频 |
| 硬件正弦波测试 | speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2 | 耳机输出蜂鸣声 |
2.音频输入功能验证
1.列出所有音频采集设备
| 代码块 | ||||
|---|---|---|---|---|
| ||||
[# 5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201 [ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams [ 5] 0.00-10.00 sec 119 MBytes 100 Mbits/sec 0.035 ms 0/85000 (0%) # 丢包率:0% |
6.常见场景测试
| 测试目标 | 命令示例 |
|---|---|
| 长连接稳定性(1 小时) | iperf3 -c [IP] -t 3600 |
| 多线程并发测试 | iperf3 -c [IP] -P 4(4 线程) |
| 限制带宽测试 | iperf3 -c [IP] -b 500M(限制为 500Mbps) |
2.蓝牙连接测试
2.进入蓝牙命令模式
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 通过adb连接设备
adb shell
# 启动蓝牙控制工具
sudo bluetoothctl |
查看系统音频设备列表(重点关注“Capture”(输入)设备)
arecord -l
|
2.典型输出示例
| 代码块 | ||||
|---|---|---|---|---|
| ||||
**** List of CAPTURE Hardware Devices ****
card 3: rockchiphdmiin [rockchip,hdmiin], device 0: rockchip,hdmiin i2s-hifi-0 [rockchip,hdmiin i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 4: rockchipes8388 [rockchip-es8388], device 0: dailink-multicodecs ES8323.3-0010-0 [dailink-multicodecs ES8323.3-0010-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
|
| 设备类型 | 关键信息 & 用途 | 状态 | 说明 |
|---|---|---|---|
| card 3: rockchiphdmiin device 0 | HDMI-IN 音频采集卡 | 对应 Rockchip 芯片的 HDMI 输入音频通道 用于采集 HDMI 信号中的音频流 | 正常识别(Subdevices: 1/1) |
| card 4: rockchipes8388 device 0 | 板载音频编解码芯片 | ES8388/ES8323 是低功耗音频 Codec 用于板载麦克风 / 扬声器的音频采集 / 播放 | 正常识别(Subdevices: 1/1) |
4.录音测试(实时采集+播放)3.扫描并连接蓝牙设备
| 代码块 | ||||
|---|---|---|---|---|
| ||||
scan on # 功能:实时采集音频输入(hw:4,0)并输出到音频输出(hw:0,0) # 参数说明: # - arecord端: # -D hw:4,0:指定音频输入设备(需根据实际`arecord -l`结果调整) # -r 48000:采样率48000Hz(适配多数音频设备) # -c 2:立体声采集(若MIC为单声道,可改为-c 1) # -f s16_le:16位小端音频格式(通用兼容格式) # 开启蓝牙扫描(按Ctrl+C停止扫描) trust [设备MAC地址] -t raw:以原始格式传输(避免文件编码开销) # - aplay端: # # 信任目标设备 pair [设备MAC地址] # 配对目标设备 connect [设备MAC地址] # 连接目标设备 |
4.操作示例
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 扫描后,对MAC为7C:B4:37:11:5B:83的设备执行操作
trust 7C:B4:37:11:5B:83
pair 7C:B4:37:11:5B:83
connect 7C:B4:37:11:5B:83 |
六、存储接口测试
1.M.2接口测试
1.硬件信息完整性
2.基础连接有效性
1.设备识别验证
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看系统是否识别到M.2 SSD
lsblk |
预期结果:输出中显示 SSD 对应的磁盘设备(如nvme0n1)。
2.磁盘信息读取
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看M.2 SSD的详细信息(如容量、接口协议)
sudo fdisk -l |
预期结果:显示 SSD 的容量、分区表类型(如 GPT),接口协议为PCIe 3.0 x4。
3.读写性能测试
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 安装测试工具
sudo apt install hdparm fio
# 测试读取性能
sudo hdparm -tT /dev/nvme0n1 # 替换为实际SSD设备名
# 测试随机读写性能(示例:1GB数据)
fio --name=ssd-test --filename=/dev/nvme0n1 --size=1G --rw=randrw --bs=4k --numjobs=4 --iodepth=64 --runtime=30 --time_based |
2.SATA接口测试
1.硬件连接说明
通过标准 7Pin SATA3.0 接口连接硬盘,SATA 电源支持 5V 2A 输出
2.硬盘识别与健康状态检测
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看硬盘信息及SMART健康状态
fdisk -l
#更新软件源(可选,避免安装失败)
apt update
# 若提示权限不足,先提权(已 root 可跳过)
# sudo apt update
#安装 smartmontools
apt install -y smartmontools
# 注:/dev/sda为实际识别的SATA设备节点,需根据系统显示调整
smartctl -a /dev/sda |
1.设备识别状态:fdisk -l 输出中需显示 SATA 硬盘的容量、分区等信息;
2.SMART 健康状态:smartctl -a 输出中SMART overall-health self-assessment test result项需显示为PASSED(如图中红框标注项)。
七、4G模块测试
测试目标
验证 4G 模块对应的quectel.service服务的启动、自启配置及网络连通性。
1.检查初始状态
操作步骤
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看服务当前状态
systemctl status quectel.service
# 检查开机自启配置
systemctl is-enabled quectel.service |
预期结果
服务未运行,开机自启未设置
2.启动服务
测试步骤
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 启动quectel服务
systemctl start quectel.service
# 验证服务状态
systemctl status quectel.service |
预期结果
服务状态显示为 active (running)
3.设置开机自启
-D hw:0,0:指定音频输出设备(如HDMI/板载扬声器)
# - 其余参数与arecord保持一致(确保格式匹配)
# - &:后台运行(避免终端阻塞)
arecord -D hw:4,0 -r 48000 -c 2 -f s16_le -t raw | aplay -D hw:0,0 -r 48000 -c 2 -f s16_le -t raw &
|
五、存储接口测试
1.M.2接口测试
1.硬件信息完整性
2.基础连接有效性
1.设备识别验证
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看系统是否识别到M.2 SSD
lsblk |
预期结果:输出中显示 SSD 对应的磁盘设备(如nvme0n1)。
2.磁盘信息读取
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看M.2 SSD的详细信息(如容量、接口协议)
sudo fdisk -l |
预期结果:显示 SSD 的容量、分区表类型(如 GPT),接口协议为PCIe 3.0 x4。
3.读写性能测试
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 安装测试工具
sudo apt install hdparm fio
# 测试读取性能
sudo hdparm -tT /dev/nvme0n1 # 替换为实际SSD设备名
# 测试随机读写性能(示例:1GB数据)
fio --name=ssd-test --filename=/dev/nvme0n1 --size=1G --rw=randrw --bs=4k --numjobs=4 --iodepth=64 --runtime=30 --time_based |
2.SATA接口测试
1.硬件连接说明
通过标准 7Pin SATA3.0 接口连接硬盘,SATA 电源支持 5V 2A 输出
2.硬盘识别与健康状态检测测试步骤
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看硬盘信息及SMART健康状态 fdisk -l #更新软件源(可选,避免安装失败) apt update # 若提示权限不足,先提权(已 root 可跳过) # 配置服务开机自启 systemctl enable quectel.service sudo apt update #安装 smartmontools apt install -y smartmontools # 验证自启配置 systemctl is-enabled quectel.service |
预期结果
自启配置返回 enabled
4.重启验证
测试步骤
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 重启设备
reboot
# 重启后检查服务状态
systemctl status quectel.service |
预期结果
设备重启后,服务自动运行,状态显示为 active (running)
5.网络连通性测试
注:/dev/sda为实际识别的SATA设备节点,需根据系统显示调整
smartctl -a /dev/sda |
1.设备识别状态:fdisk -l 输出中需显示 SATA 硬盘的容量、分区等信息;
2.SMART 健康状态:smartctl -a 输出中SMART overall-health self-assessment test result项需显示为PASSED(如图中红框标注项)。
六、无线通信测试
1.WIFI测试
2.基础连接稳定性
1.启动NetworkManager服务测试步骤
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 检查4G模块网络接口(以eth0为例,实际需根据模块接口调整)
ifconfig -a
# 测试网络连通性(ping公网地址)
ping -c 5 8.8.8.8 |
预期结果
4G网络接口正常获取 IP;
| ||
sudo systemctl start NetworkManager |
2.扫描并连接WiFi网络ping 测试成功,返回类似如下结果(无丢包):
| 代码块 | ||||
|---|---|---|---|---|
| ||||
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=109 time=60 ms |
6.SIM卡功能
1.测试准备
...
sudo nmcli dev wifi rescan # 重新扫描WiFi网络
sudo nmcli dev wifi list # 查看可用WiFi列表(可选)
sudo nmcli dev wifi connect "WiFi名称" password "WiFi密码" ifname wlan1 |
3.网络连通性测试
| 代码块 | ||||
|---|---|---|---|---|
| ||||
ping www.baidu.com |
4.示例命令
| 代码块 | ||||
|---|---|---|---|---|
| ||||
sudo nmcli dev wifi connect "Hi nova 9 Pro" password "12345678" ifname wlan1 |
3.Wi-Fi 网络 TCP/UDP 协议性能测试
1.环境准备:
两台测试设备(如开发板 + PC),确保处于同一网络(WiFi / 以太网);
安装 Iperf3
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# (以Quectel模块为例)通过AT指令查询SIM卡状态
# 进入模块AT指令交互终端(需根据模块串口调整设备节点,如/dev/ttyUSB2)
minicom -D /dev/ttyUSB2
# 在终端中执行AT指令
AT+CPIN? # 检查SIM卡是否就绪
AT+CREG? # 检查网络注册状态
AT+CGREG? # 检查分组域(数据业务)注册状态 |
八、音频接口测试
1.测试对象
1.本测试针对设备的音频输出接口(含板载 Codec、HDMI),明确各接口的硬件映射关系:
...
card编号
...
设备名称
...
硬件接口
...
功能说明
...
0
...
rockchiphdmi0
...
HDMI0
...
第一个HDMI接口音频输出
...
rockchipdp0
...
DisplayPort0
...
第 1 路 DP 接口(仅支持视频输出,不支持音频)
...
rockchipdp1
...
DisplayPort1
...
第 2 路 DP 接口(仅支持视频输出,不支持音频)
...
rockchipes8388
...
ES8388 Codec
...
板载音频接口(3.5mm 4 节接口,支持:耳机输出、扬声器输出、MIC 输入)
Debian/Ubuntu
sudo apt install iperf3 |
2.角色定义:
服务端(Server):接收数据的设备;
客户端(Client):发送数据的设备。
3.TCP 带宽测试(常用)
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 服务端默认监听5201端口
iperf3 -s |
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 测试TCP带宽(持续10秒,默认)
iperf3 -c [服务端IP] |
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 测试30秒,每2秒输出一次实时数据
iperf3 -c [服务端IP] -t 30 -i 2
# 测试双向带宽(服务端/客户端互传)
iperf3 -c [服务端IP] -d |
4.UDP 丢包 / 延迟测试
| 代码块 | ||||
|---|---|---|---|---|
| ||||
iperf3 -s |
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 步骤1:通过adb连接设备(确保设备已开启调试模式)
adb shell
# 步骤2:推送测试音频文件到设备(电脑端执行)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav
# 步骤3:查看设备音频输出列表(确认card编号对应关系)
aplay -l
# 步骤4:HDMI0音频输出测试
aplay -D plughw:0,0 /test.wav
# 预期现象:HDMI连接的显示设备播放音频
# 步骤5:板载音频(耳机)输出测试
aplay -D plughw:4,0 /test.wav
# 预期现象:3.5mm耳机播放音频
# 步骤6:硬件功能验证(正弦波测试,排除文件本身问题)
speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2
# 预期现象:耳机输出1000Hz双声道正弦蜂鸣声
|
...
测试项
...
操作命令
...
预期结果
...
HDMI0 音频输出
...
aplay -D plughw:0,0 /test.wav
...
显示设备正常播放音频
...
aplay -D plughw:4,0 /test.wav
...
耳机正常播放音频
...
speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2
...
耳机输出蜂鸣声
测试UDP(指定带宽100Mbps)
iperf3 -c [服务端IP] -u -b 100M |
5.结果解读(示例)
TCP 测试结果
| 代码块 | ||||
|---|---|---|---|---|
| ||||
[ 5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 1.10 GBytes 943 Mbits/sec # 实际带宽:943Mbps |
UDP测试结果
3.音频输入
1.列出所有音频采集设备
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看系统音频设备列表(重点关注“Capture”(输入)设备)
arecord -l
|
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
**** List of CAPTURE Hardware Devices ****
card 3: rockchiphdmiin [rockchip,hdmiin], device 0: rockchip,hdmiin i2s-hifi-0 [rockchip,hdmiin i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 4: rockchipes8388 [rockchip-es8388], device 0: dailink-multicodecs ES8323.3-0010-0 [dailink-multicodecs ES8323.3-0010-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
|
| 设备类型 | 关键信息 & 用途 | 状态 | 说明 |
|---|---|---|---|
| card 3: rockchiphdmiin device 0 | HDMI-IN 音频采集卡 | 对应 Rockchip 芯片的 HDMI 输入音频通道 用于采集 HDMI 信号中的音频流 | 正常识别(Subdevices: 1/1) |
| card 4: rockchipes8388 device 0 | 板载音频编解码芯片 | ES8388/ES8323 是低功耗音频 Codec 用于板载麦克风 / 扬声器的音频采集 / 播放 | 正常识别(Subdevices: 1/1) |
4.录音测试(实时采集+播放)
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 功能:实时采集音频输入(hw:4,0)并输出到音频输出(hw:0,0)
# 参数说明:
# - arecord端:
# -D hw:4,0:指定音频输入设备(需根据实际`arecord -l`结果调整)
# -r 48000:采样率48000Hz(适配多数音频设备)
# -c 2:立体声采集(若MIC为单声道,可改为-c 1)
# -f s16_le:16位小端音频格式(通用兼容格式)
# -t raw:以原始格式传输(避免文件编码开销)
# - aplay端:
# -D hw:0,0:指定音频输出设备(如HDMI/板载扬声器)
# - 其余参数与arecord保持一致(确保格式匹配)
# - &:后台运行(避免终端阻塞)
arecord -D hw:4,0 -r 48000 -c 2 -f s16_le -t raw | aplay -D hw:0,0 -r 48000 -c 2 -f s16_le -t raw &
|
九、视频硬解码测试
[ 5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams
[ 5] 0.00-10.00 sec 119 MBytes 100 Mbits/sec 0.035 ms 0/85000 (0%) # 丢包率:0% |
6.常见场景测试
| 测试目标 | 命令示例 |
|---|---|
| 长连接稳定性(1 小时) | iperf3 -c [IP] -t 3600 |
| 多线程并发测试 | iperf3 -c [IP] -P 4(4 线程) |
| 限制带宽测试 | iperf3 -c [IP] -b 500M(限制为 500Mbps) |
2.蓝牙连接测试
2.进入蓝牙命令模式
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 通过adb连接设备
adb shell
# 启动蓝牙控制工具
sudo bluetoothctl |
3.扫描并连接蓝牙设备
| 代码块 | ||||
|---|---|---|---|---|
| ||||
scan on # 开启蓝牙扫描(按Ctrl+C停止扫描)
trust [设备MAC地址] # 信任目标设备
pair [设备MAC地址] # 配对目标设备
connect [设备MAC地址] # 连接目标设备 |
4.操作示例
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 扫描后,对MAC为7C:B4:37:11:5B:83的设备执行操作
trust 7C:B4:37:11:5B:83
pair 7C:B4:37:11:5B:83
connect 7C:B4:37:11:5B:83 |
3.4G模块测试
验证 4G 模块对应的quectel.service服务的启动、自启配置及网络连通性。
1.检查初始状态
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看服务当前状态
systemctl status quectel.service
# 检查开机自启配置
systemctl is-enabled quectel.service |
预期结果
服务未运行,开机自启未设置
2.启动服务
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 启动quectel服务
systemctl start quectel.service
# 验证服务状态
systemctl status quectel.service |
预期结果
服务状态显示为 active (running)
3.设置开机自启
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 配置服务开机自启
systemctl enable quectel.service
# 验证自启配置
systemctl is-enabled quectel.service |
预期结果
自启配置返回 enabled
4.重启验证
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 重启设备
reboot
# 重启后检查服务状态
systemctl status quectel.service |
预期结果
设备重启后,服务自动运行,状态显示为 active (running)
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 检查4G模块网络接口(以eth0为例,实际需根据模块接口调整)
ifconfig -a
# 测试网络连通性(ping公网地址)
ping -c 5 8.8.8.8 |
预期结果
4G网络接口正常获取 IP;
ping 测试成功,返回类似如下结果(无丢包):MMP视频解码器规格:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
插件名称:mppvideodec
插件版本:1.14.4
插件路径:/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrockchipmpp.so
支持编码:HEVC/H.265, AVC/H.264, VP8, VP9
解码类型:硬件加速解码
技术架构:基于Rockchip MPP(Media Process Platform)框架
最大解码能力:8K 10-bits 视频解码,支持 8K 60HZ 视频输出 |
测试步骤:
1.准备测试视频:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
#假设视频路径:
C:\Users\Administrator\Desktop\test_video\4K_60fps.mp4
# 将视频文件推送到开发板的/tmp目录
adb push "C:\Users\Administrator\Desktop\boot\4K_60fps.mp4" /tmp/
|
...
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=109 time=60 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=109 time=60 ms |
4.SIM卡功能验证
1.测试准备
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 验证硬解码功能(以H.264格式视频为例)
gst-launch-1.0 filesrc location=/tmp/4K_60fps.mp4 ! \
qtdemux ! \
h264parse ! \
mppvideodec ! \
videoconvert ! \
autovideosink |
执行命令后显示屏会出现解码视频:
开启第二个终端进行cpu占用率监控
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 窗口2:查看整体系统状态
adb shell "top -bn1 | head -20" |
系统整体状态:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
CPU使用率:用户态5.0% + 系统态5.0% = 总10%,空闲89.9%
内存:8GB总内存,仅使用731MB,空闲6GB
硬件解码工作正常:CPU占用率仅5.9%,远低软件解码
性能优秀:系统整体很空闲,解码4K视频无压力
内存使用低:仅占用26MB内存,硬件解码不占用大量内存 |
...
# (以Quectel模块为例)通过AT指令查询SIM卡状态
# 进入模块AT指令交互终端(需根据模块串口调整设备节点,如/dev/ttyUSB2)
minicom -D /dev/ttyUSB2
# 在终端中执行AT指令
AT+CPIN? # 检查SIM卡是否就绪
AT+CREG? # 检查网络注册状态
AT+CGREG? # 检查分组域(数据业务)注册状态 |



