「使用飞书调试开发板」—— 让 AI 智能体接管海思 Hi3519DV500
「使用飞书调试开发板」—— 让 AI 智能体接管海思 Hi3519DV500用 AI Agent 远程控制 Hi3519DV500 开发板SSH 连接、摄像头驱动加载、RTSP 推流、NPU 推理测试以及过程中的所有踩坑记录。前言嵌入式开发最常见的工作流是在 PC 上交叉编译 → 传到开发板 → 串口/SSH 登录 → 敲命令测试。频繁切换终端窗口、复制粘贴命令、记录各种参数很容易出错。把 Hermes AI Agent 接入开发板调试流程后你只需要在飞书上说一句话它就能帮你 SSH 连上开发板、执行命令、读取结果、分析日志。整个过程在聊天窗口里完成还能自动记录所有操作到文档中。本文以Hi3519DV500鸿鸥派开发板为例完整记录了用 Hermes 进行嵌入式调试的全流程及所有踩坑点。第一部分基础环境1.1 硬件清单设备说明开发板鸿鸥派 HongOU PIHi3519DV500摄像头OS04A104MPMIPI 接口30fpsPCUbuntu 24.04 VM Hermes Agent网络路由器局域网开发板 IP: 192.168.1.1681.2 配置 SSH 免密登录这是 Hermes 远程控制开发板的基础# 在 PC 上生成 SSH 密钥ssh-keygen-ted25519# 复制公钥到开发板ssh-copy-id root192.168.1.168# 验证免密登录sshroot192.168.1.168uname -a1.3 Hermes 连接开发板的两种方式方式一直接在终端里执行 SSH 命令ssh root192.168.1.168 cd /komod ./load3519dv500 -a -sensor0 os04a10 -vo_intf mipitxHermes 的 terminal 工具会返回所有输出包括加载的驱动模块列表、错误信息等。方式二通过脚本封装常见操作将频繁使用的命令写成脚本如# board_ctl.sh — 开发板一键启动#!/bin/bashIP192.168.1.168sshroot$IPbspmm 0x11018440 0x4001 cd /komod ./load3519dv500 -i -sensor0 os04a10 -vo_intf mipitx然后在 Hermes 中直接调用脚本。第二部分摄像头驱动加载全流程2.1 上电标准流程每次开发板上电后需要执行以下操作# 步骤1设置传感器时钟掉电丢失必须重设bspmm 0x11018440 0x4001# 步骤2加载驱动模块cd/komod./load3519dv500-a-sensor0os04a10-vo_intfmipitx# 步骤3验证摄像头是否检测到i2cdetect-y-r3# 正常应看到 0x36OS04A10 的 I2C 地址2.2 驱动参数说明./load3519dv500-a-sensor0os04a10-vo_intfmipitx参数值含义-a—先卸载所有模块再重新插入-sensor0os04a10主摄像头传感器型号-vo_intfmipitx视频输出接口MIPI DSI-boarddmeb板型配置-mmz_size1918M内存分配大小2.3 永久配置load3519dv500脚本中的以下参数已永久修改每次加载无需重复指定配置项出厂值当前值SNS_TYPE0imx347_slaveos04a10VO_INTFbt1120mipitx2.4 驱动加载成功标志加载成功后Hermes 的终端输出会显示53个模块被加载最后一行是 Your Board is at Default State 如果模块数少于 53 或有错误信息说明某个组件加载失败。第三部分RTSP 推流与拉流3.1 VENC 推流测试最基本的推流测试cd/root./sample_venc0103参数说明4 个参数缺一不可位置参数值说明第1个index0normal 编码模式第2个rtsp_enable1启用 RTSP 推流第3个vo_intf_type0MIPI_TX 输出第4个sensor0_type3OS04A10 WDR 宽动态3.2 AI ISP 推流图像质量调优cd/root./sample_aiisp0103程序启动后会让你选择 AI 降噪模型推荐选2 (detail_priority)——细节优先模式画面最锐利。3.3 NPU 推理推流# YOLOv8 目标检测./sample_svp_npu_main8803# HRNet 人体关键点检测./sample_svp_npu_main a03# MOTR 多目标跟踪./sample_svp_npu_main b0033.4 RTSP 地址速查测试程序RTSP 地址编码sample_vencrtsp://ip:554/live0H264 H265sample_aiisprtsp://ip:554/live0H265sample_svp_npu_mainrtsp://ip:554/live.h264H264注意不同程序的 RTSP 地址不同sample_svp_npu_main用的是live.h264不是live0。3.5 拉流查看带画面翻转OS04A10 摄像头图像是倒立的拉流时需翻转# SVP 测试拉流ffplay rtsp://192.168.1.168:554/live.h264-vfvflip,hflip# VENC/AI ISP 拉流ffplay rtsp://192.168.1.168:554/live0-vfvflip,hflip第四部分踩坑全记录️ 坑 1传感器时钟必须重设现象加载驱动成功但i2cdetect扫描不到摄像头全部--。原因OS04A10 摄像头需要24MHz时钟但开发板出厂默认是37.125MHz适配 IMX347 传感器。时钟寄存器0x11018440是芯片内部寄存器掉电丢失。解决每次上电后执行bspmm 0x11018440 0x4001教训嵌入式硬件调试第一课——先检查时钟️ 坑 2vo_intf参数是mipitx不是mipi现象执行./load3519dv500 -a -sensor0 os04a10 -vo_intf mipi报错。原因凭经验猜测参数值没有去查脚本的合法选项。解决查看load3519dv500脚本中的参数定义# 查看可选参数grepvo_intf/komod/load3519dv500教训给任何命令参数前先查文档或帮助信息不靠猜测。️ 坑 3sample_venc参数个数搞错现象执行./sample_venc 0 1 23 个参数程序行为异常。原因手册写得不清楚以为只有 3 个参数。实际是 4 个参数index rtsp_enable vo_intf_type sensor0_type解决正确的命令是./sample_venc0103教训嵌入式 C 程序没有--help选项时去读源码中的main()函数参数解析逻辑。️ 坑 4不同程序的 RTSP 地址不同现象启动sample_svp_npu_main后用ffplay rtsp://.../live0拉不到流。原因sample_venc和sample_aiisp用live0但sample_svp_npu_main用的是live.h264。解决区分程序用对地址VENC / AI ISP →/live0SVP (YOLO/HRNet/MOTR) →/live.h264️ 坑 5图像是倒立的现象拉流成功但画面上下颠倒。原因摄像头模组物理安装方向导致。解决拉流时加-vf vflip,hflip翻转ffplay rtsp://...-vfvflip,hflip如果使用 VLC 播放器设置旋转 180 度。️ 坑 6FPC 排线方向现象摄像头完全检测不到i2cdetect全部--。原因FPC 排线插反或没插紧。解决FPC 排线的金手指方向朝向座子的金属触针一侧翻盖压到底听到咔声才算锁紧。检测技巧摄像头芯片应该微微发热冰凉说明没供电。️ 坑 7说 MOTR 不支持 Hi3519DV500现象看到手册写「MOTR 不支持 HI3516DV500」错误地认为 Hi3519DV500 也不支持。原因没有区分芯片型号。HI3516DV500 和 Hi3519DV500 是不同的芯片。解决实际测试发现 Hi3519DV500 完美支持 MOTR./sample_svp_npu_main b003教训不要把一个型号的限制扩展到其他型号。️ 坑 8Ubuntu VM NAT 网络无法拉流现象Ubuntu VM 在 NAT 模式下IP: 10.0.2.x无法直连开发板192.168.1.x拉 RTSP 流。原因NAT 网络跨网段RTSP 的 RTP 数据流被截断。解决Windows 宿主机同网段用 VLC 直接拉流或者 Ubuntu VM 改用桥接网络模式️ 坑 9AI ISP 默认画质模糊现象sample_aiisp默认启动后画面偏模糊。原因AI ISP 默认选择的是去噪优先模型denoise_priority降噪过度导致细节损失。解决程序启动后输入2选择detail_priority细节优先模型画面立竿见影变清晰。️ 坑 10H264 拉流解码报错现象ffplay拉 H264 流时偶尔报解码错误。原因Ubuntu 24.04 预装 ffmpeg 6.1.1 的解码器兼容性问题。解决改用 H265 拉流或忽略解码错误画面仍然可用。第五部分Hermes 调试工作流总结5.1 典型调试对话你帮我看看开发板在线吗 Heresping 192.168.1.168 成功 ✅ 你加载摄像头驱动 Heres已 SSH 登录设置时钟 → 加载驱动 → 检测摄像头 → 全部成功 ✅ 你跑一下 YOLOv8 Heres启动 sample_svp_npu_main 8 8 0 3等待画面...整个过程中不需要手动开串口终端、敲命令、等输出——全部在聊天窗口中完成。5.2 最佳实践SSH 免密登录是前提— 先配好密钥常用命令封装为脚本— 减少重复输入操作手册用 Markdown 维护— 方便 Hermes 读取和搜索每个参数都先查证— 不确定就不猜改开发板配置前先确认— 硬件不像软件写错可能坏硬件5.3 一键上电流程# 开发板端 (SSH)bspmm 0x11018440 0x4001# 时钟24MHzcd/komod./load3519dv500-i-sensor0os04a10-vo_intfmipitx# 加载驱动# 选择要跑的测试cd/root./sample_svp_npu_main8803# YOLOv8# 或者cd/root./sample_aiisp0103# AI ISP选2detail_priority# Ubuntu 端拉流 ffplay rtsp://192.168.1.168:554/live.h264 -vf vflip,hflip总结用 Hermes 调试嵌入式开发板的优势随时随地— 只要有手机飞书上就能控制开发板自动记录— 所有命令和执行结果都被记录在对话历史中减少手动错误— 封装好的脚本和命令不会输错参数边做边文档化— 调试过程和踩坑记录直接形成技术文档最大的门槛是最初的 SSH 免密配置和熟悉开发板的上电流程一旦打通后续效率会大幅提升。作者科技界的一粒微尘GZ号AI的探索之旅