版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。
Sv translation
languagezh_CN

目录

一、测试文件下载与设备基础信息

1.测试文件下载

测试音乐下载 :test.wav
串口工具下载:MobaXterm_Portable_v23.0_cn.zip

2. 设备基础信息

项目详情
设备型号RP01A-RK3588S2开发板硬件版本:V1.0A
系统版本Debian12 XFCE 桌面(固件版本:rk3588-rp01a-debian12-rkr6-xfce-20251230-更新fw.img)
内核版本Linux 6.1.118

3. 核心硬件配置

项目配置详情
CPU

RK3588S Octo-core, Cortex-A76 and Cortex-A55

频率高达2.4GHz

GPU

Mali-G610 GPU,OpenGL ES 1.1/2.0/3.2,OpenCL 2.2,Vulkan 1.2

内嵌高性能2D加速硬件

内存(DDR)
LPDDR5X,4G/8G/16G/32G可选
AI 算力(NPU)6.0 Tops
内置存储

支持 eMMC5.1,SDIO3.0

16GB/32GB/64G/128G(可选)

4. 供电参数

项目规格说明
直流电源要求输入:12V 2A DC
 接口规格:5.5mm × 2.0mm 圆柱电源口
 ⚠️ 注意:输入电压低于 12V 可能导致设备无法开机

二、电源基础测试

1. 电源接口功能验证

  • 验证设备电源接口的兼容性、电气性能及安全性,确保符合供电参数要求。

2. 测试环境与工具适应性

工具 / 环境规格说明
直流电源适配器12V 2A DC(匹配 5.5mm×2.0mm 接口)
万用表支持电压 / 电流测量
待测设备目标产品(含电源接口)

3.基础测试流程规范

1.直流电源接口兼容性测试

  • 测试步骤
    1. 确认直流电源适配器规格为 “12V 2A DC”,接口尺寸 “5.5mm×2.0mm”;
    2. 将适配器接入设备电源接口,通电后观察设备是否正常开机。
  • 判定标准
     接口可稳定插入 / 拔出,设备正常开机无异常。

2.输入电压下限验证

  • 测试步骤
    1. 使用可调直流电源,将电压调至11.5V(低于 12V),接入设备;
    2. 观察设备是否出现 “无法开机” 等异常现象。
  • 判定标准
     电压低于 12V 时,设备无法正常开机(与供电参数 “注意” 项一致)。

三、有线通信接口测试

1.Debug 串口(UART)测试

项目内容
测试目的验证开发板 Debug 串口(UART)的硬件通信功能,确保能正常输出内核启动日志、接收 / 响应命令行指令,满足底层调试需求。
前提条件1. 开发板已断电,无外接电源;
 2. 准备工具:USB 转 TTL 串口线(3.3V 电平,匹配开发板 Debug 口)、PC 端串口工具(如MobaXterm、 SecureCRT、Putty、串口助手);
 3. 确认开发板 Debug 口引脚定义(TX/RX/GND),并核对串口参数(常见:波特率 1500000、8 位数据位、1 位停止位、无校验、无流控);
 4. PC 已安装串口驱动(USB 转 TTL 芯片驱动,如 CH340/PL2303)。

步骤 1:硬件连接

  1. 按开发板手册标注的 Debug 口引脚,将 USB 转 TTL 串口线对应连接:
    • 开发板 Debug 口 TX → 串口线 RX
    • 开发板 Debug 口 RX → 串口线 TX
    • 开发板 Debug 口 GND → 串口线 GND
       (⚠️ 注意:TX/RX 交叉连接,严禁接反;3.3V 电平串口禁止接 5V,避免烧损)
     
  2. 将 USB 转 TTL 串口线的 USB 端插入 PC 主机 USB 接口。 

步骤 2:PC 端串口工具配置 

  1. 打开串口工具(以 MobaXterm 为例),进行参数配置:
    • 串口端口:在 PC 设备管理器中查看 “端口 (COM 和 LPT)”,选择串口线对应的 COM 口(如 COM3);
    • 波特率:1500000(开发板默认 Debug 口波特率,需与内核启动参数一致);
    • 数据位:8;
    • 停止位:1;
    • 校验位:None;
    • 流控:None;
  2. 点击“会话”选择“Serial”,选择对应的Serial端口和波特率:1500000,点击 “OK” 打开串口连接。

步骤 3:启动日志输出测试

  1. 给开发板上电,观察 PC 端串口工具的输出:
    • 记录从 “U-Boot 启动” 到 “内核初始化” 再到 “系统登录提示符” 的完整日志;
    • 重点检查是否有 “Serial: xxx”“console=ttyS2,1500000” 等串口相关初始化日志。

2.USB 2.0/3.0接口测试

1. 设备连接状态识别

 通过以下命令确认设备是否接入系统并获取设备节点信息:

代码块
languageshell
titlebash
# 查看所有块设备,识别USB对应的设备节点(如/dev/sda1)
lsblk
# 查看USB设备详细信息,包括控制器和设备ID
lsusb
结果说明lsusb输出中,ID 1d6b:0002对应 USB2.0 控制器,ID 1d6b:0003对应 USB3.0 控制器,可通过设备挂载的总线判断其关联的 USB 版本。

2. 设备配套 USB 版本兼容性

通过设备速度参数精准判断 USB 版本,USB2.0 对应高速(480Mbps),USB3.0 对应超高速(5000Mbps),操作如下:

1.查看设备速度文件


代码块
languageshell
titlebash
# 遍历所有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.通过详细信息验证

代码块
languageshell
titlebash
# 查看指定USB设备的详细参数,搜索Speed字段
lsusb -v | grep -E "Speed|Device"

 结果说明:输出中Speed: 480Mbit/s对应 USB2.0,Speed: 5000Mbit/s对应 USB3.0。

3.传输性能测试

传输速率是 USB2.0 与 USB3.0 的核心差异点,USB2.0 理论速率 480Mbps,USB3.0 理论速率 5Gbps。以下提供两种常用测试方法,分别适用于存储设备和网络类 USB 设备。

1. 简易测试:dd 命令

dd命令可快速测试读写速率,适合初步验证,测试时需先挂载 USB 设备。

 1.1.挂载 USB 设备:

代码块
languageshell
titlebash
# 假设通过lsblk确认USB设备节点为/dev/sda1,创建挂载点并挂载
mkdir -p /mnt/usb
mount /dev/sda1 /mnt/usb

 1.2. 试顺序写速率:

代码块
languageshell
titlebash
# 写入1GB零数据到USB设备,绕过缓存确保结果真实
dd if=/dev/zero of=/mnt/usb/testfile bs=1M count=1024 conv=sync oflag=direct

 1.3.测试顺序读速率:

代码块
languageshell
titlebash
# 读取USB设备中的测试文件并丢弃,测试读取速度
dd if=/mnt/usb/testfile of=/dev/null bs=1M iflag=direct

 1.4.测试后清理临时文件:

代码块
languageshell
titlebash
rm /mnt/usb/testfile

 结果说明:命令执行完毕后会显示传输时间和速率,USB2.0 实际写速率通常在 10 - 30MB/s,USB3.0 实际写速率通常在 50 - 150MB/s(受设备本身性能影响)。

2. 专业测试:fio 工具

fio工具支持复杂的 IO 场景测试,结果更全面,适合深度性能评估。

 2.1.安装 fio:

代码块
languageshell
titlebash
# Ubuntu/Debian
sudo apt install fio -y

 2.2.fio测试命令代码块

代码块
languageshell
titlebash
# 顺序写测试
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

3.Type-C接口测试

1.ADB功能测试

1.1. ADB基础连接测试

测试目的:验证 Type‑C 接口可正常建立 ADB 连接,设备可被 PC 识别。

测试步骤:

1.用 Type‑C 数据线连接待测设备与 PC。

2.设备端开启「开发者选项」→「USB 调试」。

3.PC 端执行 adb devices,检查设备是否被识别。

4.执行 adb shell,验证是否可进入设备命令行。

预期结果:

1.adb devices 输出设备序列号,状态为 device。

2.成功进入设备 shell,无连接超时或权限拒绝。

1.2. ADB 核心指令执行测试

测试目的:验证 ADB 核心指令在 Type‑C 链路下可正常执行。

测试步骤:

1.用文件传输:

执行 adb push test_file /data/ 推送文件至设备。

执行 adb pull /data/test_file ./ 拉取文件至 PC。

2.设备控制:

执行 adb reboot 重启设备,重启后重新执行 adb devices。

3.日志抓取:

执行 adb logcat -d > adb_log.txt 抓取系统日志。

预期结果:

1.文件传输无失败,拉取文件与原文件大小一致。

2.重启后 ADB 连接可自动恢复。

3.日志文件非空,包含有效运行日志。

1.3. Type‑C 插拔与稳定性测试

测试目的:验证 Type‑C 接口在插拔、晃动等场景下 ADB 连接的稳定性。

测试步骤:

1.单次插拔:插拔数据线 10 次,每次插拔后执行 adb devices。

2.连续插拔:快速插拔 20 次,间隔 1–2 秒。

3.晃动测试:保持连接状态,轻微晃动数据线,观察连接状态。

预期结果:

1.每次插拔均可正常识别设备,无 offline 状态。

2.晃动过程中 ADB 连接不中断,无 IO 错误。

1.4. Type‑C 插拔与稳定性测试

测试目的:验证高负载场景下 Type‑C ADB 功能的稳定性。

测试步骤:

1.大文件传输:推送 1GB 文件至设备,同时执行 adb logcat。

2.多指令并发:同时执行 adb push、adb shell top、adb logcat。

3.长时间连接:保持 ADB 连接 24 小时,每小时执行 adb devices。

预期结果:

1.大文件传输过程中 ADB 不中断,日志抓取正常。

2.多指令并发无卡死或超时,CPU 占用 ≤ 80%。

3.24 小时内连接状态持续为 device,无自动断开。

2.Type-C 转 hub(USB)测试

2.1 设备识别与兼容性测试前置条件:

1.开发板上电正常,系统启动完成

2.Type-C 转 USB Hub 连接正常

操作步骤:

1.将 Type-C 端插入开发板 Type-C 接口

2.将 USB 设备(U 盘、鼠标、键盘)依次插入 Hub 的 USB 口

3.执行命令 lsusb 查看设备列表

4.查看系统日志 dmesg | grep usb

预期结果:

1.所有 USB 设备均能被系统正确识别,lsusb 输出中可见对应设备 ID

2.系统日志无 USB 设备识别失败或报错信息

3.U 盘可正常挂载 / 读写,鼠标 / 键盘可正常响应

2.2 数据传输速率测试

前置条件:

1.同 2.1

2.准备 1GB 测试文件(test.img)

操作步骤:

1.插入 USB3.0 U 盘并挂载到 /mnt/usb

2.执行文件拷贝命令:

代码块
dd if=/dev/zero of=/mnt/usb/test.img bs=1M count=1024

3.记录传输耗时,计算速率:速率 = 1024MB / 耗时(秒)

4.反向拷贝回开发板,重复测试 3 次

预期结果:

1.USB3.0 模式下传输速率 ≥ 80MB/s(约 640Mbps)

2.USB2.0 模式下传输速率 ≥ 30MB/s(约 240Mbps)

3.无数据丢失、无传输中断、无文件损坏

2.3 供电能力测试

前置条件:

1.同 3.1

2.准备 2.5 英寸移动硬盘(需 5V/0.5A 以上供电)

操作步骤:

1.将移动硬盘插入 Hub 的 USB 口

2.观察硬盘指示灯是否亮起,执行 lsblk 查看设备节点

3.进行大文件读写操作,持续 10 分钟

4.查看系统日志是否有供电不足或设备掉线信息

预期结果:

1.移动硬盘正常启动,系统可识别并读写

2.长时间读写过程中无设备掉线、无数据损坏

3.系统日志无 over-current 或供电相关报错

2.4. 异常场景测试

1.热插拔测试:在数据传输过程中插拔 USB 设备,验证系统稳定性

2.低电压测试:降低开发板供电电压至 4.5V,验证 USB 设备是否正常工作

3.多设备并发测试:同时插入多个 USB 设备,验证 Hub 负载能力

3.Type-C 转 HDMI/DP 输出测试

3.1 视频输出功能测试

前置条件:

1.开发板上电正常,系统启动完成

2.Type-C 转 HDMI/DP 转接器连接正常,显示器通电

操作步骤:

1.将 Type-C 端插入开发板 Type-C 接口,HDMI/DP 端插入显示器

2.执行显示配置命令(Linux:xrandr;Android:系统设置)

3.切换显示输出到 HDMI,设置分辨率为 1080P@60Hz

4.观察显示器画面,检查是否有花屏、黑屏、闪烁

预期结果:

1.显示器自动点亮,显示开发板桌面 / 画面

2.分辨率、刷新率可正常配置,画面清晰无失真

3.无花屏、无黑屏、无闪烁、无延迟

3.2 音视频同步输出测试

前置条件:

1.同 3.1

2.显示器支持 HDMI/DP 音频输出

操作步骤:

1.播放 1080P 测试视频(带音轨)

2.观察画面流畅度,同时监听显示器扬声器

3.检查音画是否同步,有无杂音、断音

预期结果:

1.视频画面流畅,帧率稳定(≥30fps)

2.音画同步,无延迟、无卡顿

3.声音清晰,无杂音、无断音、无爆音

3.3 热插拔测试

前置条件:

同 3.1

操作步骤:

1.先连接 Type-C 转 HDMI/DP,确认显示正常

2.拔掉 HDMI/DP 端,观察系统反应

3.重新插入 HDMI/DP 端,观察系统反应

4.重复热插拔 10 次,记录每次结果

预期结果:

1.拔掉 HDMI/DP 后,系统自动切回板载显示或黑屏(符合设计预期)

2.重新插入后,显示器自动恢复显示,无需手动配置

3.热插拔过程中无系统崩溃、无驱动报错

3.4. 异常场景测试

1.分辨率切换测试:在 720P/1080P/4K 之间切换,验证显示兼容性

2.长时间播放测试:连续播放视频 24 小时,验证稳定性

3.低分辨率输出测试:设置为 480P,验证向下兼容能力

四、显示与视频接口测试

1.HDMI输出测试

1.规格说明:

接口核心规格关键限制
HDMI 2.1单接口、支持 8K@30Hz/4K@60Hz、HDCP2.3需 HDMI2.1 认证线缆,最大带宽 48Gbps

2.分辨率验证(含 8K/4K)

1.显示接口及分辨率列表查询

代码块
languageshell
titlebash
# 图形界面(X11)- 直观查看支持的分辨率/刷新率/HDCP状态
xrandr --verbose | grep -E "HDMI|DP|3840|7680|HDCP"

2.音频输出测试步骤(命令行操作)

代码块
languageshell
titlebash
# 步骤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:DP1音频输出测试
aplay -D plughw:4,0 /test.wav
# 预期现象:DP连接的显示设备播放音频

2.Camera(摄像头)功能测试

测试目的内容
测试目的验证开发板 MIPI CSI/USB 摄像头接口的硬件连接有效性及视频采集功能。
前提条件

 1. 开发板已上电并进入 Linux系统;

 2.  摄像头已正确连接(MIPI CSI 排线插紧)。





测试步骤:

步骤1:摄像头设备节点识别测试

1.打开终端,执行以下命令查看系统是否识别到摄像头设备:

代码块
ls -l /dev/video*

2.【补充校验】执行以下命令确认设备可用性(可选,增强严谨性):

代码块
v4l2-ctl --list-devices

步骤 2:摄像头实时预览测试

1.开发板接有 HDMI显示器,执行以下命令进行实时预览:

代码块
gst-launch-1.0 v4l2src device=/dev/video22 ! videoconvert ! autovideosink

2.观察 HDMI 显示器画面,持续预览 10 秒后,按 Ctrl + C 停止命令。
 预期结果:HDMI 显示器上出现清晰、流畅的实时视频画面,无花屏、无卡顿、无黑屏;停止命令后终端无 “Internal data stream error” 类核心报错。

3.视频硬解码性能测试

1.测试环境(MPP 视频硬解码设备)

基于 Rockchip MPP(Media Process Platform)框架的硬解码工具信息:

项目详情
工具名称ppvidedec
工具版本1.14.4
依赖库路径/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrockchipmpp.so
支持编码格式HEVC/H.265、AVC/H.264、VP8、VP9
解码类型硬件加速解码
最大解码能力8K 10-bit 视频解码,支持 8K 60Hz 视频输出
2.测试步骤:
2.1.准备测试视频:
代码块
languageshell
titlebash
#1.本地测试视频路径:
C:\Users\Administrator\Desktop\test_video\4K_60fps.mp4

# 2.通过 ADB 将视频推送至开发板:
adb push "C:\Users\Administrator\Desktop\boot\4K_60fps.mp4" /tmp/


2.2.执行硬解码测试(以 H.264 格式为例)
代码块
languageshell
titlebash
# 使用gst-launch-1.0调用 MPP 硬解码工具,验证解码功能:
gst-launch-1.0 filesrc location=/tmp/4K_60fps.mp4 ! \
qtdemux ! \
h264parse ! \
mppvideodec ! \
videoconvert ! \
autovideosink

 2.3.测试验证要点

  • 视频播放状态:需无花屏、绿屏、卡顿等异常现象;
  • 日志信息:终端输出中不得出现decode errorResource not foundpipeline doesn't want to preroll等报错,需呈现正常启动流程(示例如下);
  • 显示效果:执行播放命令后,显示界面应呈现完整、清晰的视频画面(无解码异常导致的画面畸变、色彩失真)。

日志信息正常输出示例(说明)

代码块
languageshell
titlebash
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Prerolled, waiting for async message to finish...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

#日志逐行说明:
#Setting pipeline to PAUSED ...:GStreamer 管道进入暂停状态,开始初始化音视频解码组件(如 MPP 硬解码器),无报错代表组件加载初始化无异常;
#Pipeline is PREROLLING ...:管道进入预滚动阶段,开始读取视频文件并解析码流,为硬解码做数据准备;
#Pipeline is PREROLLED ...:预滚动完成,视频码流解析成功,RK3566 的 MPP 硬解码单元已获取有效数据;
#Prerolled, waiting for async message to finish...:预滚动完成后等待异步消息确认,是 GStreamer 适配嵌入式设备的正常等待流程,无异常;
#Setting pipeline to PLAYING ...:管道切换至播放状态,硬解码开始输出视频帧至显示设备;
#New clock: GstSystemClock:系统时钟同步完成,音视频时序匹配,无卡顿、音画不同步风险。


(注:配图为视频正常播放时的界面示例,可直观验证画面无畸变、显示正常)

3.开启第二个终端进行cpu占用率监控

 3.1操作步骤

代码块
languageshell
titlebash
# 第一步:进入ADB交互式shell
adb shell

# 第二步:在shell中执行top命令(此时有TTY环境,可正常运行)
top -n1 | head -20

  3.2系统状态输出示例(终端执行后输出如下,红框为核心监控项)

代码块
languageshell
titlebash
#
top - 06:01:06 up 17:57,  1 user,  load average: 2.10, 2.61, 2.56
Tasks: 276 total,   2 running, 274 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.8 us,  6.0 sy,  0.0 ni, 90.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   3899.3 total,     91.5 free,    822.6 used,   2985.2 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   1694.6 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1981 root      20   0 4747336 266284 215960 R  50.0   6.7 877:37.20 Xorg
   2456 blueber+  20   0 1839264  74872  56884 S  12.5   1.9  60:46.06 xfwm4
   2513 blueber+  20   0  314400  39220  29936 S  12.5   1.0  44:54.98 xfce4-p+
  38043 root      20   0  529528  23188  11316 S  12.5   0.6   0:13.87 gst-lau+
  38263 root      20   0    9048   3400   2712 R   6.2   0.1   0:00.02 top
      1 root      20   0  165012   9932   7220 S   0.0   0.2   5:17.56 systemd
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.45 kthreadd
      3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_gp
      4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_par+
      8 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 mm_perc+
      9 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_tas+
     10 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_tas+
     11 root      20   0       0      0      0 S   0.0   0.0   0:04.57 ksoftir+

  3.3状态分析

监控项结果说明
CPU 整体负载用户 3.8% + 系统 6.0% + 空闲 90.2%空闲占比超 90%,CPU 资源冗余充足;当前高占比进程为桌面服务(Xorg、xfwm4),属于系统基础负载
内存状态总 3899MB,已用 829MB,可用 2968MB内存剩余充足,无内存不足风险
关键进程 CPU 占比桌面服务(Xorg)占 50%,终端(tilda)占 12.5%若此时运行视频播放进程,需重点关注其 % CPU 值(硬解码生效时通常<10%)
内存占用已用 829MB,缓存占 2864MB内存缓存占比高,系统数据读写效率有保障

 3.4测试结论:视频功能播放正常,无卡顿、花屏现象;CPU 占用率低(硬解码加速生效),系统资源负载符合预期。


五、音频接口测试

本测试针对设备的音频输出接口(含板载 Codec、HDMI),明确各接口的硬件映射关系:

声卡编号(card)

设备标识

设备编号(device)

硬件对应

核心功能

适用场景

card 0

rockchip,es8388-codec

device 0

板载 ES8388 音频 Codec

模拟音频输出(3.5mm 耳机 / 喇叭)+ 音频解码

耳机播放(核心设备)

card 1

rockchip,hdmi0

device 0

HDMI 接口音频通道

数字音频输出(HDMI 显示器 / 电视)

HDMI 音频播放

1.测试准备

1.1 工具 / 文件:

  • 测试音频文件:test.wav(推荐格式:16bit、44.1kHz、立体声)

  • 调试工具:

    • 电脑端:adb(需配置环境变量)

    • 设备端:aplay(已预装)

1.2 硬件连接:

  • 测试 HDMI 音频:将 HDMI 线连接至设备的 HDMI 接口与支持音频输出的显示设备(如带音箱的显示器)

  • 测试板载音频:将 3.5mm 耳机插入板载音频接口

1.音频输出功能验证

代码块
languageshell
titlebash
# 步骤1:验证ADB连接(避免设备未连接导致后续操作失败)
adb devices
# 预期输出:列出设备序列号,状态为device(若显示offline/未列出,重新插拔USB/重启调试)

# 步骤2:推送测试音频文件到设备(电脑端执行)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav

# 步骤3:进入ADB交互式shell(后续命令均在设备端执行)
adb shell

# 步骤4:查看设备音频输出列表(确认card编号对应关系)
aplay -l

# 步骤5:HDMI0音频输出测试
aplay -D plughw:1,0 /test.wav
# 预期现象:HDMI连接的显示设备播放音频

# 步骤6:板载音频(耳机)输出测试
aplay -D plughw:0,0 /test.wav
# 预期现象:3.5mm耳机播放音频

# 步骤7:硬件功能验证(正弦波测试,排除文件本身问题)
speaker-test -D hw:1,0 -t sine -f 1000 -c 2 -l 2
# 预期现象:耳机输出1000Hz双声道正弦蜂鸣声

测试结果记录

测试项

操作命令

预期结果

HDMI0 音频输出

aplay -D plughw:1,0 /test.wav

显示设备正常播放音频

板载耳机输出

aplay -D plughw:0,0 /test.wav

耳机正常播放音频

硬件正弦波测试

speaker-test -D hw:1,0 -t sine -f 1000 -c 2 -l 2

耳机输出蜂鸣声

2.音频输入功能验证

1.列出所有音频采集设备

代码块
languageshell
titlebash
# 查看系统音频设备列表(重点关注“Capture”(输入)设备)
arecord -l

2.典型输出示例

代码块
languageshell
titlebash
**** List of CAPTURE Hardware Devices ****
card 0: rockchipes8388c [rockchip,es8388-codec], device 0: dailink-multicodecs ES8323 HiFi-0 [dailink-multicodecs ES8323 HiFi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: rockchipes7210 [rockchip,es7210], device 0: fe480000.i2s-ES7210 4CH ADC 0 ES7210 4CH ADC 0-0 [fe480000.i2s-ES7210 4CH ADC 0 ES7210 4CH ADC 0-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

3.结果解析

设备类型设备名 / 驱动设备编号(device)硬件对应核心功能能否用于耳机播放
card 0rockchip,es8388-codecdevice 0板载 ES8388 codec音频解码 / 模拟输出音频解码 / 模拟输出(3.5mm 耳机 / 线路输出)✅ 是(核心耳机设备)
card 2rockchip,es7210device 0ES7210 ADC4 通道音频采集(麦克风 / 线路输入)❌ 否(仅输入)

4.录音测试(实时采集+播放)

代码块
languageshell
titlebash
# 功能:实时采集音频输入(hw:1,0)并输出到音频输出(hw:1,0)
# 参数说明:
# - arecord端:
#   -D hw:0,0:指定音频输入设备(需根据实际`arecord -l`结果调整)
#   -r 48000:采样率48000Hz(适配多数音频设备)
#   -c 2:立体声采集(若MIC为单声道,可改为-c 1)
#   -f s16_le:16位小端音频格式(通用兼容格式)
#   -t raw:以原始格式传输(避免文件编码开销)
# - aplay端:
#   -D hw:1,0:指定音频输出设备(如HDMI/板载扬声器)
#   - 其余参数与arecord保持一致(确保格式匹配)
# - &:后台运行(避免终端阻塞)

arecord -D hw:0,0 -r 48000 -c 2 -f s16_le -t raw | aplay -D hw:1,0 -r 48000 -c 2 -f s16_le -t raw &

测试操作与结果验证

  1. 执行命令:在终端输入上述命令并回车;
  2. 触发音频输入:对着 MIC 说话 / 播放声音;
  3. 验证效果:从音频输出设备(扬声器 / 耳机)能实时听到采集的声音,无杂音、卡顿、延迟(<200ms)即为测试通过;
  4. 停止测试:执行kill %1(后台任务编号)终止实时采集。

*注意事项

  • 若执行报错Device or resource busy:先执行killall arecord aplay关闭占用音频设备的进程,再重新测试;
  • 若无声音:检查-D参数的设备编号(通过arecord -l/aplay -l确认正确的输入 / 输出设备);
  • 若杂音较大:将-c 2改为-c 1(单声道),或调整采样率为44100

、存储接口测试

M.2接口测试

1.硬件信息完整性

  • 接口类型:PCIE2.0 *1 M.2 M-Key 5Gbps
  • 硬件安装:将 M.2 SSD 插入开发板 M.2 插槽

2.基础连接有效性

1.设备识别验证

代码块
languageshell
titlebash
# 查看系统是否识别到M.2 SSD
lsblk

预期结果:输出中显示 SSD 对应的磁盘设备(如nvme0n1)。

2.磁盘信息读取

代码块
languageshell
titlebash
# 查看M.2 SSD的详细信息(如容量、接口协议)
sudo fdisk -l

预期结果:显示 SSD 的容量、分区表类型(如 GPT),PCIe x4 总线 + NVMe 存储协议。

3.读写性能测试

代码块
languageshell
titlebash
# 安装测试工具
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


七、无线通信模块测试

1.WIFI测试

1.硬件规格符合性

WiFi 型号:AP6256,双频WiFi5无线网络接入 IEEE 802.11a/b/g/n/ac。

2.基础连接稳定性

1.启动NetworkManager服务

代码块
languageshell
titlebash
sudo systemctl start NetworkManager

2.扫描并连接WiFi网络

代码块
languageshell
titlebash
sudo nmcli dev wifi rescan                 # 重新扫描WiFi网络
sudo nmcli dev wifi list                   # 查看可用WiFi列表(可选)
sudo nmcli dev wifi connect "WiFi名称" password "WiFi密码" ifname wlan1

3.网络连通性测试

代码块
languageshell
titlebash
ping www.baidu.com

4.示例命令

代码块
languageshell
titlebash
sudo nmcli dev wifi connect "Hi nova 9 Pro" password "12345678" ifname wlan1

3.Wi-Fi 网络 TCP/UDP 协议性能测试

1.环境准备:

两台测试设备(如开发板 + PC),确保处于同一网络(WiFi / 以太网);

安装 Iperf3


代码块
languageshell
titlebash
# Debian/Ubuntu
sudo apt install iperf3

2.角色定义:

服务端(Server):接收数据的设备;

客户端(Client):发送数据的设备。

3.TCP 带宽测试(常用)

步骤 1:启动服务端

代码块
languageshell
titlebash
# 服务端默认监听5201端口
iperf3 -s

步骤 2:客户端发起测试

代码块
languageshell
titlebash
# 测试TCP带宽(持续10秒,默认)
iperf3 -c [服务端IP]

扩展命令(自定义参数)

代码块
languageshell
titlebash
# 测试30秒,每2秒输出一次实时数据
iperf3 -c [服务端IP] -t 30 -i 2
# 测试双向带宽(服务端/客户端互传)
iperf3 -c [服务端IP] -d

4.UDP 丢包 / 延迟测试

步骤 1:启动服务端

代码块
languageshell
titlebash
iperf3 -s

步骤 2:客户端发起测试

代码块
languageshell
titlebash
# 测试UDP(指定带宽100Mbps)
iperf3 -c [服务端IP] -u -b 100M

5.结果解读(示例)

TCP 测试结果

代码块
languageshell
titlebash
[  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测试结果

代码块
languageshell
titlebash
[  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.蓝牙连接测试

1.硬件说明

AP6256 是正基(AMPAK)推出的 Wi‑Fi 5 + 蓝牙双模模块(支持蓝牙 5.2)


2.进入蓝牙命令模式

代码块
languageshell
titlebash
# 通过adb连接设备
adb shell
# 启动蓝牙控制工具
sudo bluetoothctl

3.扫描并连接蓝牙设备

代码块
languageshell
titlebash
scan on                      # 开启蓝牙扫描(按Ctrl+C停止扫描)
trust [设备MAC地址]          # 信任目标设备
pair [设备MAC地址]           # 配对目标设备
connect [设备MAC地址]        # 连接目标设备

4.操作示例

代码块
languageshell
titlebash
# 扫描后,对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

5.测试结果判定

执行connect后,终端输出[CONN] Device 7C:B4:37:11:5B:83 Connected: yes,表示蓝牙连接成功。


Extended Commands (Custom Parameters)

Extended Commands (Custom Parameters)


Test for 30 seconds, output real‑time data every 2 seconds


 
iperf3 -c [Server IP] -t 30 -i 2
 Test bidirectional bandwidth (data transmission between server and client)


 
iperf3 -c [Server IP] -d
 

4. UDP Packet Loss / Latency Test


 Step 1: Start the server
 iperf3 -s
 
Step 2: Initiate test from the client
 

Test UDP (bandwidth limited to 100 Mbps)


 
iperf3 -c [Server IP] -u -b 100M
 

5. Result Interpretation (Examples)


 

TCP Test Result


 [ 5] local

[ 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

Bitrate
 [ 5] 0.00‑10.00 sec 1.10

GBytes

943

Mbits/sec

# 实际带宽:943Mbps

UDP测试结果

[ 5] local

# Actual bandwidth: 943 Mbps
 

UDP Test Result


 [ 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‑10.00

sec

119

MBytes

100

Mbits/sec

0.035

ms

0/85000

(0%)

# 丢包率:0%

# Packet loss rate: 0%
 

6.

常见场景测试

Common‑Scenario Tests


 
表格
 
 
 

Sv translation
languageen

目录

I. Download of Test Files & Basic Device Information

1. Test File Download 

  • Test music download: test.wav
  • Serial port tool download: MobaXterm_Portable_v23.0_cn.zip

2. Basic Device Information

ItemDetails
Device ModelRP01A‑RK3588S2 Development Board (Hardware Version: V1.0A)
System VersionDebian 12 XFCE Desktop (Firmware Version: rk3588‑rp01a‑debian12‑rkr6‑xfce‑20251230‑update‑fw.img)
Kernel VersionLinux 6.1.118

3. Hardware Configuration

Item

Configuration Details

CPU

RK3588S Octa‑core, Cortex‑A76 + Cortex‑A55

 Up to 2.4GHz

GPU

Mali‑G610 GPU, supports OpenGL ES 1.1/2.0/3.2, OpenCL 2.2, Vulkan 1.2

 Built‑in high‑performance 2D acceleration hardware

Memory (DDR)

LPDDR5X, optional 4G/8G/16G/32G

AI Computing Power (NPU)

6.0 TOPS

On‑board Storage

Supports eMMC 5.1, SDIO 3.0

 Optional 16GB/32GB/64GB/128GB

4. Power Supply Parameters

Item

Specification

DC Power Supply Requirement

Input: 12V 2A DC

 Connector Spec: 5.5mm × 2.0mm barrel power jack

 ⚠️ Note: Input voltage lower than 12V may cause the device to fail to power on

II. Basic Power Supply Test


 

1.Power Interface Function Verification

 Verify the compatibility, electrical performance and safety of the device power interface to ensure compliance with power supply parameter requirements.
 

2.Adaptability of Test Environment and Tools

Tool / Environment

Specification

DC Power Adapter

12V 2A DC (compatible with 5.5mm×2.0mm interface)

Multimeter

Supports voltage / current measurement

DUT (Device Under Test)

Target product (with power interface)

3. Standard Basic Test Procedures


 

(1) DC Power Interface Compatibility Test


 Test Steps:
 Confirm the DC power adapter specification is "12V 2A DC" with a connector size of "5.5mm×2.0mm";
 Connect the adapter to the device power interface, and check whether the device powers on normally after energization.
 Judgment Criteria:
 The connector can be stably plugged in/unplugged, and the device powers on normally without abnormalities.
 

(2) Input Voltage Lower‑Limit Verification


 Test Steps:
 Use an adjustable DC power supply, set the voltage to 11.5V (lower than 12V), and connect it to the device;
 Observe whether abnormalities such as "failing to power on" occur.
 Judgment Criteria:
 The device cannot power on normally when the voltage is lower than 12V (consistent with the note in power supply parameters).

III. Wired Communication Interface Test

1.Debug Serial Port (UART) Test

ItemContent
Test PurposeVerify the hardware communication function of the development board Debug serial port (UART), ensure it can normally output kernel boot logs, receive/respond to command‑line instructions, and meet underlying debugging requirements.
Prerequisites1. The development board is powered off with no external power supply;
 2. Prepare tools: USB‑to‑TTL serial cable (3.3V level, compatible with the board’s Debug port), PC‑side serial tools (e.g. MobaXterm, SecureCRT, Putty, Serial Assistant);
 3. Confirm pin definition (TX/RX/GND) of the Debug port and check serial parameters (typical: baud rate 1500000, 8 data bits, 1 stop bit, no parity, no flow control);
 4. Serial driver is installed on the PC (drivers for USB‑to‑TTL chips such as CH340/PL2303).

Step 1: Hardware Connection


 
According to the Debug port pinout marked in the development board manual, connect the USB‑to‑TTL serial cable correspondingly:
 

  • Board Debug TX → Serial Cable RX
  • Board Debug RX → Serial Cable TX
  • Board Debug GND → Serial Cable GND


 
⚠️ Note: Cross‑connect TX/RX; reverse connection is strictly prohibited. Do not connect a 5V serial cable to the 3.3V‑level Debug port to avoid hardware damage.
 
Plug the USB end of the USB‑to‑TTL cable into a USB port of the PC host.
 

Step 2: Serial Tool Configuration on PC


 
Open the serial tool (taking MobaXterm as an example) and configure parameters as follows:
 

  • Serial Port: Check Ports (COM & LPT) in Windows Device Manager and select the COM port corresponding to the serial cable (e.g. COM3).
  • Baud Rate: 1500000 (default Debug port baud rate of the board, consistent with kernel boot parameters)
  • Data Bits: 8
  • Stop Bits: 1
  • Parity: None
  • Flow Control: None


 
Click Session → select Serial, choose the corresponding serial port and baud rate 1500000, then click OK to establish serial connection.
 

Step 3: Boot Log Output Test


 Power on the development board and observe output on the PC‑side serial tool:
 Record complete logs from U‑Boot startup, through kernel initialization, to the system login prompt.
 Focus on checking serial‑related initialization logs such as Serial: xxx and console=ttyS2,1500000.

2. USB 2.0 / 3.0 Interface Test

(1) Device Connection Status Identification

Use the following command to confirm whether the device is connected to the system and obtain device node information:

代码块
languageshell
titlebash
# List all block devices to identify the USB device node (e.g., /dev/sda1)
lsblk

# Display detailed USB device information, including controller and device ID
lsusb

Result Description


 
In the lsusb output:
 
  • ID 1d6b:0002 corresponds to the USB 2.0 controller
  • ID 1d6b:0003 corresponds to the USB 3.0 controller

 
The USB version associated with the device can be determined by the bus it is connected to.
 


 

2. Compatibility of the Device with the Corresponding USB Version


 
The USB version can be accurately determined by the device speed parameter:
 
  • USB 2.0: High-speed (480 Mbps)
  • USB 3.0: Super-speed (5000 Mbps / 5 Gbps)

 
Procedure:
 

1. Check the Device Speed File


代码块
languageshell
titlebash
# Traverse all USB devices and output their transfer speed
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. Verification via Detailed Information


 # Check detailed parameters of the specified USB device and search for the Speed field lsusb -v | grep -E "Speed|Device"

 
 
Result Description: In the output, Speed: 480Mbit/s corresponds to USB 2.0, and Speed: 5000Mbit/s corresponds to USB 3.0.
 



 

3. Transfer Performance Test


 
The transfer rate is the core difference between USB 2.0 and USB 3.0. The theoretical rate of USB 2.0 is 480Mbps, and that of USB 3.0 is 5Gbps. Two common test methods are provided below, suitable for storage devices and network USB devices respectively.
 

1. Simple Test: dd Command


 
The dd command can quickly test read/write speeds, suitable for preliminary verification. The USB device must be mounted before testing.
 

1.1 Mount the USB Device: 
 

# Assuming the USB device node is /dev/sda1 confirmed by lsblk, create a mount point and mount
mkdir -p /mnt/usb
mount /dev/sda1 /mnt/usb

1.2 Test Sequential Write Speed:

# Write 1GB of zero data to the USB device, bypass cache to ensure real results
dd if=/dev/zero of=/mnt/usb/testfile bs=1M count=1024 conv=sync oflag=direct

1.3 Test Sequential Read Speed:


# Read the test file from the USB device and discard it to test read speed
dd if=/mnt/usb/testfile of=/dev/null bs=1M iflag=direct

1.4 Clean Up Temporary Files After Test:

rm /mnt/usb/testfile


Result Description: The command will display the transfer time and speed upon completion. The actual write speed of USB 2.0 is usually 10 - 30MB/s, and USB 3.0 is usually 50 - 150MB/s (affected by the device's own performance).
 

2. Professional Test: fio Tool


 
The fio tool supports complex IO scenario testing with more comprehensive results, suitable for in-depth performance evaluation.
 

2.1 Install fio:

# Ubuntu/Debian
sudo apt install fio -y


 2.2 fio Test Commands:


# Sequential Write Test
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

# Sequential Read Test
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

# Random Write Test
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

# Random Read Test
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

# Random Read/Write Mixed Test (default 50:50 ratio)
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


 
 



 

3

IV. Type-C Interface Test


 

1. ADB Function Test


 

1.1 ADB Basic Connection Test


 
Test Purpose: Verify that the Type-C interface can establish an ADB connection normally and the device can be recognized by the PC.
 
Test Steps:
 

  1. Connect the device under test and the PC with a Type-C data cable.
  2. Enable Developer Options USB Debugging on the device.
  3. Execute adb devices on the PC to check if the device is recognized.
  4. Execute adb shell to verify access to the device command line.


 
Expected Results:
 

  1. adb devices outputs the device serial number with status device.
  2. Successfully enter the device shell without connection timeout or permission denial.


 

1.2 ADB Core Command Execution Test


 
Test Purpose: Verify that core ADB commands can be executed normally over the Type-C link.
 
Test Steps:
 

  1. File Transfer:
    • Execute adb push test_file /data/ to push a file to the device.
    • Execute adb pull /data/test_file ./ to pull the file to the PC.

     
  2. Device Control:
    • Execute adb reboot to restart the device, then run adb devices again after reboot.

     
  3. Log Capture:
    • Execute adb logcat -d > adb_log.txt to capture system logs.

      
    Expected Results:
     
  1. File transfer succeeds without failure; the pulled file matches the original size.
  2. ADB connection automatically recovers after reboot.
  3. Log file is not empty and contains valid runtime logs.

1.3 Type-C Plugging & Stability Test

 
Test Purpose: Verify the stability of the ADB connection during plugging/unplugging and cable movement.
 
Test Steps:
 

  1. Single Plug/Unplug: Repeat 10 times, run adb devices after each.
  2. Continuous Plug/Unplug: Rapidly repeat 20 times with 1–2 second intervals.
  3. Movement Test: Gently shake the cable while connected and observe the connection.

 
Expected Results:
 

  1. Device is recognized normally every time, no offline status.
  2. ADB connection remains stable without IO errors during movement.

1.4 Type-C High-Load Stability Test

 
Test Purpose: Verify ADB stability under high-load scenarios.
 
Test Steps:
 

  1. Large File Transfer: Push a 1GB file while running adb logcat.
  2. Concurrent Commands: Run adb push, adb shell top, and adb logcat simultaneously.
  3. Long-Term Connection: Maintain ADB connection for 24 hours, run adb devices hourly.

 
Expected Results:
 

  1. ADB remains stable during large file transfers; log capture works normally.
  2. No freezes or timeouts under concurrency; CPU usage ≤ 80%.
  3. Connection status stays device for 24 hours without disconnection.

2. Type‑C to Hub (USB) Test


 

2.1 Device Recognition and Compatibility Test


 
Prerequisites:
 

  1. The development board is powered on normally and the system startup is completed.
  2. The Type‑C to USB Hub is connected properly.


 
Test Steps:
 

  1. Insert the Type‑C end into the Type‑C port of the development board.
  2. Plug USB devices (USB flash drive, mouse, keyboard) into the USB ports of the Hub in sequence.
  3. Run the command lsusb to view the device list.
  4. Check system logs with dmesg | grep usb.


 
Expected Results:
 

  1. All USB devices are correctly recognized by the system, and corresponding device IDs can be seen in the lsusb output.
  2. There are no USB device recognition failures or error messages in system logs.
  3. The USB flash drive can be mounted/read/written normally; the mouse and keyboard can respond properly.


 

2.2 Data Transfer Speed Test


 
Prerequisites:
 

  1. Same as 2.1.
  2. Prepare a 1GB test file (test.img).


 
Test Steps:
 

  1. Insert a USB 3.0 flash drive and mount it to /mnt/usb.
  2. Execute the file copy command:
代码块
dd if=/dev/zero of=/mnt/usb/test.img bs=1M count=1024
  1. Record transmission time and calculate speed: Speed = 1024MB / Time Consumed (seconds)
  2. Copy files back to the development board in reverse direction and repeat the test 3 times.


 
Expected Results:
 

  1. Transmission speed ≥ 80MB/s (approx. 640Mbps) under USB 3.0 mode.
  2. Transmission speed ≥ 30MB/s (approx. 240Mbps) under USB 2.0 mode.
  3. No data loss, transmission interruption or file corruption.


 

2.3 Power Supply Capacity Test


 
Prerequisites:
 

  1. Same as 2.1.
  2. Prepare a 2.5‑inch portable hard disk (requiring power supply above 5V/0.5A).


 
Test Steps:
 

  1. Plug the portable hard disk into the USB port of the Hub.
  2. Check whether the hard disk indicator light is on, and run lsblk to view device nodes.
  3. Perform large‑file read‑write operations for 10 minutes continuously.
  4. Check system logs for under‑power or device disconnection information.


 
Expected Results:
 

  1. The portable hard disk starts normally and can be recognized, read and written by the system.
  2. No device disconnection or data corruption during long‑time read‑write operations.
  3. No over‑current or power‑supply‑related errors in system logs.


 

2.4 Abnormal Scenario Test


 

  1. Hot‑swap Test: Plug and unplug USB devices during data transmission to verify system stability.
  2. Low‑voltage Test: Reduce the power supply voltage of the development board to 4.5V to verify whether USB devices work normally.
  3. Multi‑device Concurrency Test: Plug in multiple USB devices simultaneously to verify the load capacity of the Hub.

3. Type‑C to HDMI/DP Output Test


 

3.1 Video Output Function Test


 
Prerequisites:
 

  1. The development board is powered on normally and the system startup is completed.
  2. The Type‑C‑to‑HDMI/DP adapter is properly connected, and the monitor is powered on.


 
Test Steps:
 

  1. Insert the Type‑C end into the Type‑C port of the development board, and connect the HDMI/DP end to the monitor.
  2. Execute display configuration commands (Linux: xrandr; Android: System Settings).
  3. Switch display output to HDMI and set the resolution to 1080P@60Hz.
  4. Observe the monitor screen and check for screen tearing, black screen or flickering.


 
Expected Results:
 

  1. The monitor lights up automatically and displays the development board desktop/image.
  2. Resolution and refresh rate can be configured normally with clear and undistorted images.
  3. No screen tearing, black screen, flickering or lag.


 

3.2 Audio‑Video Synchronous Output Test


 
Prerequisites:
 

  1. Same as 3.1.
  2. The monitor supports HDMI/DP audio output.


 
Test Steps:
 

  1. Play a 1080P test video (with audio track).
  2. Observe video smoothness and listen to the monitor speaker simultaneously.
  3. Check audio‑video synchronization and whether there is noise or audio dropout.


 
Expected Results:
 

  1. Smooth video playback with stable frame rate (≥30fps).
  2. Audio‑video synchronization with no delay or stuttering.
  3. Clear sound with no noise, audio dropout or popping noise.


 

3.3 Hot‑Plug Test


 Prerequisites:
 Same as 3.1.
 
Test Steps:
 

  1. Connect the Type‑C‑to‑HDMI/DP adapter first and confirm normal display.
  2. Unplug the HDMI/DP end and observe system response.
  3. Re‑insert the HDMI/DP end and observe system response.
  4. Repeat hot‑plug operation 10 times and record each result.


 
Expected Results:
 

  1. After unplugging HDMI/DP, the system automatically switches back to on‑board display or goes black (consistent with design expectations).
  2. After re‑insertion, the monitor automatically resumes display without manual configuration.
  3. No system crash or driver errors occur during hot‑plugging.


 

3.4 Abnormal Scenario Test


 

  1. Resolution Switching Test: Switch among 720P/1080P/4K to verify display compatibility.
  2. Long‑Duration Playback Test: Play video continuously for 24 hours to verify stability.
  3. Low‑Resolution Output Test: Set resolution to 480P to verify downward compatibility.

IV. Display and Video Interface Test

 

1. HDMI Output Test

1. Specification Description

InterfaceCore SpecificationsKey Limitations
HDMI 2.1Single‑port, supports 8K@30Hz / 4K@60Hz, HDCP2.3Requires HDMI 2.1 certified cable; maximum bandwidth 48Gbps

2. Resolution Verification (Including 8K/4K)

1. Query of Display Interfaces and Resolution List

代码块
languageshell
titlebash
# GUI (X11) - Intuitively view supported resolutions/refresh rates/HDCP status
xrandr --verbose | grep -E "HDMI|DP|3840|7680|HDCP"

2.Audio Output Test Steps (Command-Line Operation)

代码块
languageshell
titlebash
# Step 1: Connect to the device via adb (ensure the device has debugging mode enabled)
adb shell

# Step 2: Push the test audio file to the device (execute on the PC)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav

# Step 3: View the device audio output list (confirm the corresponding card number)
aplay -l

# Step 4: HDMI0 audio output test
aplay -D plughw:0,0 /test.wav
# Expected result: The display device connected via HDMI plays audio

# Step 5: DP1 audio output test
aplay -D plughw:4,0 /test.wav
# Expected result: The display device connected via DP plays audio

2.Camera Function Test

ItemContent
Test PurposeVerify the hardware connection validity and video capture function of the development board’s MIPI‑CSI / USB camera interface.
Prerequisites1. The development board is powered on and enters the Linux system.
 2. The camera is properly connected (MIPI‑CSI cable is firmly inserted).

Test Steps:
 
Step 1: Camera Device Node Identification Test
 

  1. Open the terminal and run the following command to check whether the system recognizes the camera device:

测试步骤: 步骤1:摄像头设备节点识别测试 1.打开终端,执行以下命令查看系统是否识别到摄像头设备:

代码块
ls -l /dev/video*

2.[Supplementary Verification] Execute the following commands to confirm device availability (optional, for enhanced rigor):

代码块
v4l2-ctl --list-devices

Step 2: Camera Real-Time Preview Test
 

  1. Connect the development board to an HDMI monitor, and execute the following command for real-time preview:
代码块
gst-launch-1.0 v4l2src device=/dev/video22 ! videoconvert ! autovideosink

Observe the picture on the HDMI monitor, press Ctrl + C to stop the command after continuous preview for 10 seconds.
 Expected Result: Clear and smooth real‑time video appears on the HDMI monitor without screen tearing, stuttering or black screen; no core errors such as "Internal data stream error" are displayed in the terminal after stopping the command.

3. Video Hard Decoding Performance Test

  1. Test Environment (MPP Video Hard Decoding Device)
     Hard decoding tool information based on Rockchip MPP (Media Process Platform) framework:
ItemDetails
Tool Nameppvidedec
Tool Version1.14.4
Dependency Library Path/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrockchipmpp.so
Supported Encoding FormatsHEVC/H.265, AVC/H.264, VP8, VP9
Decoding TypeHardware‑accelerated decoding
Maximum Decoding Capability8K 10‑bit video decoding, supports 8K@60Hz video output

Test Steps:
2.1 Prepare test videos:
代码块
languageshell
titlebash
#1. Local test video path:C:\Users\Administrator\Desktop\test_video\4K_60fps.mp4
#2. Push the video to the development board via ADB:
adb push "C:\Users\Administrator\Desktop\boot\4K_60fps.mp4" /tmp/


2.2.Perform hardware decoding test (take H.264 format as an example)
代码块
languageshell
titlebash
# Use gst-launch-1.0 to invoke the MPP hardware decoding tool and verify the decoding function:
gst-launch-1.0 filesrc location=/tmp/4K_60fps.mp4 ! \
qtdemux ! \
h264parse ! \
mppvideodec ! \
videoconvert ! \
autovideosink


2.3 Test Verification Points


 Video playback status: No abnormalities such as screen tearing, green screen, or stuttering shall occur;
 Log information: No errors including decode error, Resource not found, or pipeline doesn't want to preroll shall appear in the terminal output. A normal startup process shall be displayed (example shown below);
 Display effect: After executing the playback command, the display interface shall present a complete and clear video image (no image distortion or color distortion caused by decoding exceptions).
 
Example of normal log output (description)

代码块
languageshell
titlebash
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Pipeline is PREROLLED ...
Prerolled, waiting for async message to finish...
Setting pipeline to PLAYING ...
New clock: GstSystemClock


(Note: The attached picture is an example of the interface during normal video playback, which can intuitively verify that the picture is free of distortion and displayed normally.)

3. Open a second terminal to monitor CPU usage

3.1 Operation Steps

代码块
languageshell
titlebash
# Step 1: Enter the ADB interactive shell
adb shell

# Step 2: Execute the top command in the shell (runs normally with TTY environment available)
top -n1 | head -20

  3.2 Example of system status output (the following content is displayed after terminal execution; core monitoring items are marked in the red box)

代码块
languageshell
titlebash
#
top - 06:01:06 up 17:57,  1 user,  load average: 2.10, 2.61, 2.56
Tasks: 276 total,   2 running, 274 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.8 us,  6.0 sy,  0.0 ni, 90.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   3899.3 total,     91.5 free,    822.6 used,   2985.2 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.   1694.6 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   1981 root      20   0 4747336 266284 215960 R  50.0   6.7 877:37.20 Xorg
   2456 blueber+  20   0 1839264  74872  56884 S  12.5   1.9  60:46.06 xfwm4
   2513 blueber+  20   0  314400  39220  29936 S  12.5   1.0  44:54.98 xfce4-p+
  38043 root      20   0  529528  23188  11316 S  12.5   0.6   0:13.87 gst-lau+
  38263 root      20   0    9048   3400   2712 R   6.2   0.1   0:00.02 top
      1 root      20   0  165012   9932   7220 S   0.0   0.2   5:17.56 systemd
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.45 kthreadd
      3 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_gp
      4 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 rcu_par+
      8 root       0 -20       0      0      0 I   0.0   0.0   0:00.00 mm_perc+
      9 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_tas+
     10 root      20   0       0      0      0 S   0.0   0.0   0:00.00 rcu_tas+
     11 root      20   0       0      0      0 S   0.0   0.0   0:04.57 ksoftir+

 3.3 Status Analysis

 

Monitoring ItemResultDescription
Overall CPU LoadUser 3.8% + System 6.0% + Idle 90.2%Idle ratio exceeds 90%, sufficient CPU resource redundancy; current high-ratio processes are desktop services (Xorg, xfwm4), belonging to basic system load
Memory StatusTotal 3899MB, Used 829MB, Free 2968MBSufficient remaining memory, no risk of insufficient memory
Key Process CPU RatioDesktop Service (Xorg) 50%, Terminal (tilda) 12.5%When running the video playback process, focus on its % CPU value (usually <10% when hardware decoding takes effect)
Memory UsageUsed 829MB, Cache 2864MBHigh memory cache ratio ensures efficient system data read/write

3.4 Test Conclusion: The video plays normally without stuttering or screen tearing. The CPU usage is low (hardware decoding acceleration is effective), and the system resource load meets expectations.

V. Audio Interface Test


This test targets the device’s audio output interfaces (including onboard Codec and HDMI), and clarifies the hardware mapping relationship of each interface:

Sound Card Number (card)Device IdentifierDevice Number (device)Hardware CorrespondenceCore FunctionApplication Scenario
card 0rockchip,es8388‑codecdevice 0On‑board ES8388 audio CodecAnalog audio output (3.5mm headphone/speaker) + audio decodingHeadphone playback (core device)
card 1rockchip,hdmi0device 0HDMI interface audio channelDigital audio output (HDMI monitor/TV)HDMI audio playback

1. Test Preparation


 

1.1 Tools / Files


 
Test audio file: test.wav (recommended format: 16bit, 44.1kHz, stereo)
 
Debugging tools:
 

  • PC side: adb (environment variables required)
  • Device side: aplay (pre‑installed)


 

1.2 Hardware Connection


 

  • For HDMI audio test: Connect an HDMI cable between the device’s HDMI port and an audio‑enabled display device (e.g., a monitor with built‑in speakers).
  • For onboard audio test: Plug a 3.5 mm headphone into the onboard audio jack.

1. Audio Output Function Verification

代码块
languageshell
titlebash
# Step 1: Verify ADB connection (to avoid subsequent failures caused by disconnected device)
adb devices
# Expected output: List device serial number with status as device (re‑plug USB or restart debugging if offline or not listed)

# Step 2: Push test audio file to the device (run on PC side)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav

# Step 3: Enter ADB interactive shell (execute subsequent commands on device side)
adb shell

# Step 4: List device audio outputs (confirm mapping of card numbers)
aplay -l

# Step 5: HDMI0 audio output test
aplay -D plughw:1,0 /test.wav
# Expected result: Audio plays on HDMI‑connected display device

# Step 6: On‑board audio (headphone) output test
aplay -D plughw:0,0 /test.wav
# Expected result: Audio plays through 3.5mm headphone

# Step 7: Hardware function verification (sine wave test to eliminate file‑related issues)
speaker-test -D hw:1,0 -t sine -f 1000 -c 2 -l 2
# Expected result: 1000 Hz dual‑channel sine beep sound outputs from headphones

Test Result Recording

Test ItemOperation CommandExpected Result
HDMI0 Audio Outputaplay -D plughw:1,0 /test.wavAudio plays normally on the display device
On‑board Headphone Outputaplay -D plughw:0,0 /test.wavAudio plays normally through headphones
Hardware Sine Wave Testspeaker-test -D hw:1,0 -t sine -f 1000 -c 2 -l 2Beep sound outputs from headphones

2. Audio Input Function Verification

  1. List all audio capture devices
代码块
languageshell
titlebash
# Check the system audio device list (focus on "Capture" (input) devices)
arecord -l

2.Typical Output Example

代码块
languageshell
titlebash
**** List of CAPTURE Hardware Devices ****
card 0: rockchipes8388c [rockchip,es8388-codec], device 0: dailink-multicodecs ES8323 HiFi-0 [dailink-multicodecs ES8323 HiFi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: rockchipes7210 [rockchip,es7210], device 0: fe480000.i2s-ES7210 4CH ADC 0 ES7210 4CH ADC 0-0 [fe480000.i2s-ES7210 4CH ADC 0 ES7210 4CH ADC 0-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

3. Result Analysis

Device TypeDevice Name / DriverDevice Number (device)Hardware CorrespondenceCore FunctionAvailable for Headphone Playback
card 0rockchip,es8388‑codecdevice 0On‑board ES8388 codecAudio decoding / analog output (3.5 mm headphone / line‑out)✅ Yes (core headphone device)
card 2rockchip,es7210device 0ES7210 ADC4‑channel audio capture (microphone / line‑in)❌ No (input‑only)

4.Recording Test (Real-time Capture + Playback)

代码块
languageshell
titlebash
Function: Capture audio input in real time (hw:1,0) and output to audio output (hw:1,0)
Parameter Description:
- arecord section:
-D hw:0,0: Specify the audio input device (adjust according to actual arecord -l results)
-r 48000: Sampling rate 48000Hz (compatible with most audio devices)
-c 2: Stereo capture (change to -c 1 if the MIC is mono)
-f s16_le: 16-bit little-endian audio format (universal compatible format)
-t raw: Transmit in raw format (avoid file encoding overhead)
- aplay section:
-D hw:1,0: Specify the audio output device (e.g. HDMI/onboard speaker)
Other parameters are consistent with arecord (ensure format matching)
- &: Run in the background (prevent terminal blocking)
arecord -D hw:0,0 -r 48000 -c 2 -f s16_le -t raw | aplay -D hw:1,0 -r 48000 -c 2 -f s16_le -t raw &

Test Operations and Result Verification


 Execute Command: Enter the above command in the terminal and press Enter.
 Trigger Audio Input: Speak into the MIC or play audio.
 Verify Effect: Real‑time captured sound can be heard from audio output devices (speakers/headphones). The test passes if there is no noise, stuttering or delay (<200 ms).
 Stop Test: Run kill %1 (background task ID) to terminate real‑time capture.
 

Notes


 

  • If the error Device or resource busy occurs: Run killall arecord aplay first to close processes occupying audio devices, then retest.
  • If no sound is heard: Check the device ID for the -D parameter (confirm correct input/output devices via arecord -l/aplay -l).
  • If there is excessive noise: Change -c 2 to -c 1 (mono), or adjust the sampling rate to 44100.

VI. Storage Interface Test

 

M.2 Interface Test

1. Hardware Information Integrity

 Interface Type: PCIE 2.0 ×1 M.2 M‑Key, 5 Gbps
 Hardware Installation: Insert the M.2 SSD into the M.2 slot on the development board.
 

2. Basic Connection Validity

1. Device Identification Verification

代码块
languageshell
titlebash
# Check whether the system recognizes the M.2 SSD.
lsblk

Expected Result: The corresponding disk device of the SSD (e.g., nvme0n1) is displayed in the output.

2.Disk Information Reading

代码块
languageshell
titlebash
# Check detailed information of the M.2 SSD (e.g., capacity, interface protocol).
sudo fdisk -l

Expected Result: Display SSD capacity, partition table type (e.g., GPT), PCIe x4 bus and NVMe storage protocol.
 3. Read‑Write Performance Test

代码块
languageshell
titlebash
# Install Test Tools
sudo apt install hdparm fio
# Test Read Performance
sudo hdparm -tT /dev/nvme0n1 # Replace with your actual SSD device name
# Test Random Read/Write Performance (Example: 1GB data)
fio --name=ssd-test --filename=/dev/nvme0n1 --size=1G --rw=randrw --bs=4k --numjobs=4 --iodepth=64 --runtime=30 --time_based


VII. Wireless Communication Module Test

 

1. Wi‑Fi Test

1. Hardware Specification Compliance


 
Wi‑Fi Model: AP6256, dual‑band Wi‑Fi 5 wireless network access compliant with IEEE 802.11a/b/g/n/ac.
 2. Basic Connection Stability

 

1. Start the NetworkManager Service

代码块
languageshell
titlebash
sudo systemctl start NetworkManager

2.Scan and connect to Wi‑Fi networks

代码块
languageshell
titlebash
sudo nmcli dev wifi rescan                 # 重新扫描WiFi网络
sudo nmcli dev wifi list                   # 查看可用WiFi列表(可选)
sudo nmcli dev wifi connect "WiFi名称" password "WiFi密码" ifname wlan1

3.Network Connectivity Test

代码块
languageshell
titlebash
ping www.baidu.com

4.Sample Commands

代码块
languageshell
titlebash
sudo nmcli dev wifi connect "Hi nova 9 Pro" password "12345678" ifname wlan1

3. Wi-Fi Network TCP/UDP Protocol Performance Test

1. Environment Preparation:

 
Two test devices (e.g., development board + PC), ensure they are on the same network (Wi-Fi/Ethernet);
 
Install Iperf3

3.Wi-Fi 网络 TCP/UDP 协议性能测试
 1.环境准备:
 两台测试设备(如开发板 + PC),确保处于同一网络(WiFi / 以太网);
 安装 Iperf3
代码块
languageshell
titlebash
# Debian/Ubuntu
sudo apt install iperf3

2. 角色定义:

服务端(Server):接收数据的设备;

Role Definition


 Server: Device receiving data
 Client: Device sending data
 客户端(Client):发送数据的设备。

3. TCP 带宽测试(常用)

步骤 1:启动服务端

Bandwidth Test (Commonly Used)


 
Step 1: Start the server

代码块
languageshell
titlebash
# 服务端默认监听5201端口
iperf3 -s

步骤 2:客户端发起测试Step 2: Initiate the test from the client

代码块
languageshell
titlebash
# 测试TCP带宽(持续10秒,默认)
iperf3 -c [服务端IP]

扩展命令(自定义参数)

代码块
languageshell
titlebash
# 测试30秒,每2秒输出一次实时数据
iperf3 -c [服务端IP] -t 30 -i 2
# 测试双向带宽(服务端/客户端互传)
iperf3 -c [服务端IP] -d

4.UDP 丢包 / 延迟测试

步骤 1:启动服务端

代码块
languageshell
titlebash
iperf3 -s

步骤 2:客户端发起测试

代码块
languageshell
titlebash
# 测试UDP(指定带宽100Mbps)
iperf3 -c [服务端IP] -u -b 100M

5.结果解读(示例)

TCP 测试结果

代码块
languageshell
titlebash
代码块
languageshell
titlebash
Test TargetSample Command
Long‑connection stability (1 hour)
长连接稳定性(1 小时)多线程并发测试(4 线程)限制带宽测试(限制为 500Mbps)
测试目标命令示例
iperf3 -c [IP] -t 3600
Multi‑thread concurrency testiperf3 -c [IP] -P 4 (4
threads)
Bandwidth‑limited testiperf3 -c [IP] -b 500M
(limited to 500 Mbps)


 

2.

蓝牙连接测试

Bluetooth Connection Test


 

1. Hardware Description


 硬件说明
AP6256 是正基(AMPAK)推出的 is a Wi‑Fi 5 + 蓝牙双模模块(支持蓝牙 Bluetooth dual‑mode module launched by AMPAK, supporting Bluetooth 5.2)2.

进入蓝牙命令模式


代码块
languageshell
titlebash
# 通过adb连接设备
adb shell
# 启动蓝牙控制工具
sudo bluetoothctl

3.扫描并连接蓝牙设备

代码块
languageshell
titlebash
scan on                      # 开启蓝牙扫描(按Ctrl+C停止扫描)
trust [设备MAC地址]          # 信任目标设备
pair [设备MAC地址]           # 配对目标设备
connect [设备MAC地址]        # 连接目标设备

4.操作示例

代码块
languageshell
titlebash

 

2. Enter Bluetooth Command Mode


 

Connect to the device via ADB


 
adb shell
 

Launch Bluetooth control utility


 
sudo bluetoothctl
 

3. Scan and Connect Bluetooth Devices


 scan on # Enable Bluetooth scanning (press Ctrl+C to stop scanning)
 trust [Device MAC Address] # Trust the target device
 pair [Device MAC Address] # Pair with the target device
 connect [Device MAC Address] # Connect to the target device
 

4. Operation Example


 

Perform operations on the device with MAC 7C

# 扫描后,对MAC为7C

:B4:37:11:5B:

83的设备执行操作 trust

83 after scanning


 trust 7C:B4:37:11:5B:83

pair


 pair 7C:B4:37:11:5B:83

connect


 connect 7C:B4:37:11:5B:83
 

5. Test Result Judgment


 
After executing the connect command, the terminal outputs 测试结果判定执行connect后,终端输出[CONN] Device 7C:B4:37:11:5B:83 Connected: yes,表示蓝牙连接成功。1, indicating successful Bluetooth connection.