嵌入式设备持续集成测试底座 ——DUTler 电源与串口程控夹具

本项目基于 RP2040(树莓派 Pico)开发的DUTler 嵌入式硬件在环测试适配器,面向嵌入式 Linux、Yocto 固件持续集成场景。设备通过三路独立虚拟串口实现 DUT 控制台透传、硬件程控与调试日志分离,集成 MOSFET 复位 /boot 引脚控制、继电器程控电源功能,可远程完成被测设备上电、断电、复位、引导模式切换。项目开源,可快速搭建单板自动化测试工装,支撑固件烧录、OT

嵌入式设备持续集成测试底座 ——DUTler 电源与串口程控夹具封面
oshw_hqzl2026-09-29 17:49:24Apache-2.0
6
Star

PCBA

设计文件

KiCad图标dutler-main.zip407.85KB(0次下载)

EDA查看器

复制嵌入代码

详细介绍

一、项目概述

DUTler 是一款基于 RP2040(树莓派 Pico)开源硬件在环(HIL)测试适配器,面向嵌入式 Linux、Yocto 系统、Mender 固件 OTA 升级等场景,解决嵌入式单板持续集成(CI)自动化测试难题。传统嵌入式 CI 仅能完成软件仿真,很难实现真实硬件的上电、断电、复位、进入烧录模式等物理操作;DUTler 将低成本 Pico 改造为程控测试工装,通过单根 USB 线缆同时完成串口透传、硬件控制、日志采集,实现无人值守的硬件级自动化回归测试。项目整体采用 Apache2.0 开源协议,固件、硬件原理图全部开放,可根据被测设备(DUT)快速裁剪适配。

二、项目设计思路与核心架构

本装置以 RP2040 为控制核心,固件将 Pico 模拟出三路独立 USB CDC 虚拟串口,各司其职,实现业务通道隔离,避免调试日志污染被测设备控制台输出:

  1. Bridge 桥接串口(CDC0):透明 USB-UART 桥,直通被测单板原生串口控制台,完整镜像 DUT 的串口输出,用于人机交互、命令下发与业务日志采集;

  2. Control 控制串口(CDC1):专用控制通道,提供一套文本交互指令集,用于远程控制硬件输出,实现上下电、复位、Boot 配置引脚拉低等硬件操作;

  3. Debug 日志串口(CDC2):独立固件调试通道,仅输出 DUTler 自身运行日志,与被测设备的串口数据完全隔离,不干扰 DUT 业务输出。

硬件侧配套 4 路 3.3V 通用 GPIO 控制输出:2 路低侧 MOSFET 驱动通道,用于控制 DUT 复位引脚、Boot/strap 配置引脚;1 路继电器通道实现被测设备整机电源通断;预留 1 路通用 IO,可扩展其它外设控制。所有控制输出上电默认关闭,保障被测硬件安全。

三、核心功能

  1. 串口透明透传与隔离日志采集 桥接通道无修改转发 DUT 串口收发数据;调试日志独立通道输出,解决传统单串口工装中工装调试信息混入设备控制台、干扰日志解析的痛点。支持串口回环自检,验证串口链路可靠性。

  2. 全程控硬件控制 通过控制串口下发指令,远程实现被测设备电源开关、硬件复位、强制进入固件烧录模式;支持保存引脚配置至板载非易失存储,支持板载自检、固件本地重启。

  3. 标准化命令交互 控制端口内置命令行交互体系,支持status、set、save、self-test、reboot等指令,支持交互式 Shell,可直接被 Python、Shell 脚本调用,无缝接入 Jenkins、GitLab CI 等自动化流水线。

  4. 轻量化可移植 固件基于 Pico SDK 开发,支持 RP2040、RP2350(Pico2)多款芯片;硬件为通用模块化设计,不绑定特定单板,只要匹配电平与接线,即可适配各类嵌入式硬件。

  5. 完备的测试验证体系 宿主机端内置单元测试,完成命令解析、CRC 校验等软件逻辑验证;硬件端支持回环自测、IO 输出自检,每次 CI 任务执行前可自动校验工装自身状态。

四、工作流程

  1. 将 DUTler 通过 USB 连接测试服务器,硬件接线:桥接串口接 DUT 调试串口,MOSFET / 继电器输出接 DUT 复位、Boot 引脚与供电回路;

  2. CI 流水线启动后,脚本连接 Control 串口,下发指令完成 DUT 断电、复位,将单板强制进入烧录模式;

  3. 通过 Bridge 串口向 DUT 烧写固件,启动单板,采集 DUT 控制台日志,执行系统、OTA 升级等测试用例;

  4. 测试完成后,自动断电复位,准备下一轮测试;全过程无需人工插拔线缆、手动按下复位 / BOOT 按键。

五、技术优势与创新点

  1. 三通道串口物理隔离:将 DUT 控制台、设备控制、工装调试日志分到独立 USB 串口,解决日志混杂问题,提升自动化日志解析稳定性;

  2. 低成本硬件在环方案:主控采用低成本 RP2040 芯片,搭配简易 MOSFET、继电器外围电路,相比商用 HIL 测试设备大幅降低硬件成本;

  3. 全开源软硬协同:固件源码、硬件原理图、测试脚本全部开源,可按需修改引脚定义、扩展控制通道,适配企业自研嵌入式硬件;

  4. 原生适配嵌入式固件 CI 场景:面向 Yocto、Mender OTA 升级场景设计,精准匹配固件编译、烧写、上电启动、升级回归的全链路自动化测试需求。

六、应用场景

  1. 嵌入式 Linux 单板硬件持续集成测试、固件版本回归测试;

  2. 设备 OTA 远程升级自动化验证,反复断电、异常掉电可靠性测试;

  3. 嵌入式硬件量产工装、实验室自动化测试台搭建;

  4. 硬件在环 (HIL) 开发调试,自动反复进入 BOOT 烧录模式做固件迭代验证。

七、项目局限与说明

项目属于实验型工具,按 “AS IS” 方式开源交付,不提供商业技术支持;硬件控制引脚为 3.3V 逻辑,使用时需要做好电平匹配、隔离保护,防止过压损坏被测设备;暂不支持硬件 RTS/CTS 流控,高速串口场景需评估适配。

八、License

Apache-2.0 license

九、项目地址

https://github.com/TheYoctoJester/dutler