with one click
plug-lens-skill
嵌入式Linux视觉AI应用框架的开发技能集合,支持RK3562/i.MX6ULL开发板的编译、调试和部署。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
嵌入式Linux视觉AI应用框架的开发技能集合,支持RK3562/i.MX6ULL开发板的编译、调试和部署。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
当需要配置或构建基于 CMake/Makefile 的 Linux 应用工程(如 i.MX6ULL/RK3562 开发板)时使用,支持交叉编译和本地编译。
当需要调试 Linux 应用程序时使用,支持本地调试和远程 GDB 调试(如 RK3562 开发板)。
嵌入式C语言编码规范,适用于安全关键嵌入式系统。强制执行OOP设计模式、内存安全、线程安全、硬件交互规则和强制的编辑后安全审查。在编写、修改或审查C代码、嵌入式固件、驱动、HAL代码、RTOS任务或任何运行在嵌入式平台上的代码时使用此Skill。当用户提到C语言、嵌入式系统、MCU、STM32、驱动、外设或固件开发时也会触发。
Serial communication skill for embedded Linux boards. Provides auto-detection, login verification, and command execution. Invoke when user needs serial port interaction, board verification, or command execution via serial console.
用于嵌入式Linux开发板的SSH远程连接和NFS网络文件共享开发流程。支持自动连接、文件同步、远程执行等操作。
| name | plug-lens-skill |
| description | 嵌入式Linux视觉AI应用框架的开发技能集合,支持RK3562/i.MX6ULL开发板的编译、调试和部署。 |
Plug-Lens 是一个基于嵌入式 Linux 的视觉 AI 应用框架,采用事件总线和数据总线的双总线架构设计,实现模块间的松耦合通信。本项目支持 RK3562 和 i.MX6ULL 两种开发板。
| 技能名称 | 功能描述 | 适用场景 |
|---|---|---|
build-linux-app | 构建 Linux 应用工程 | 配置/编译交叉编译项目 |
debug-linux-app | 调试 Linux 应用程序 | 本地/远程 GDB 调试 |
serial-communication | 串口通信工具 | 开发板串口登录、命令执行 |
ssh-nfs-dev | SSH + NFS 远程开发 | 远程连接、文件同步、程序执行 |
embedded-c-coding | 嵌入式C语言编码规范 | 代码审查、安全检查 |
flowchart TD
A[开始] --> B[选择开发板]
B -->|RK3562| C1[配置工具链 arm64-linux-75]
B -->|i.MX6ULL| C2[配置工具链 arm32-linux-hf6ull]
C1 --> D[编译项目]
C2 --> D
D --> E{编译成功?}
E -->|是| F[连接开发板]
E -->|否| G[调试编译错误]
G --> D
F -->|串口| H1[serial-communication]
F -->|网络| H2[ssh-nfs-dev]
H1 --> I[部署并运行]
H2 --> I
I --> J{运行正常?}
J -->|是| K[完成]
J -->|否| L[debug-linux-app]
L --> I
# RK3562 ARM64 开发板(推荐)
use_toolchain arm64-linux-75
# i.MX6ULL ARM32 开发板
use_toolchain arm32-linux-hf6ull
# 清理构建
make clean
# 编译 RK3562(软件模式)
make TARGET_PLATFORM=rk3562 ENGINE=software
# 编译 RK3562(硬件模式,需厂商库)
make TARGET_PLATFORM=rk3562 ENGINE=hardware
# 编译 i.MX6ULL
make TARGET_PLATFORM=imx6ull
方式一:串口连接
# 使用 serial-communication 技能
# 自动检测串口并登录
方式二:SSH连接
# 使用 ssh-nfs-dev 技能
# 建立SSH连接:开发板 IP 默认 192.168.5.11
# 挂载NFS:/mnt/nfs
# 通过NFS同步(推荐)
# 编译产物自动同步到开发板 /mnt/nfs
# 运行应用
cd /mnt/nfs/output
./vision_ai_app
# 使用 debug-linux-app 技能
# 远程 GDB 调试
功能:配置和构建基于 CMake/Makefile 的 Linux 应用工程
适用场景:
关键参数:
| 参数 | 说明 | 默认值 |
|---|---|---|
| TARGET_PLATFORM | 目标平台 | rk3562 |
| ENGINE | 引擎模式 | software |
| CROSS_COMPILE | 交叉编译前缀 | 自动检测 |
执行步骤:
功能:调试 Linux 应用程序,支持本地和远程 GDB 调试
适用场景:
执行步骤:
功能:串口通信工具,支持开发板登录和命令执行
适用场景:
预设配置:
功能:SSH 远程连接和 NFS 文件共享
适用场景:
网络配置:
WSL2 IP: 192.168.5.10
开发板 IP: 192.168.5.11
子网掩码: 255.255.255.0
NFS挂载点: /mnt/nfs
SSH用户: root
功能:嵌入式 C 语言编码规范检查
适用场景:
检查项:
工具链:
arm64-linux-75: 软件模式(推荐)arm64-linux-103: 硬件模式(需要厂商库)第三方库:
third_lib/aarch64/: 通用 ARM64 库third_lib/rk3562/: RK3562 专用库(RGA、MPP、RKNN)编译命令:
# 软件模式(使用 MNN + OpenH264)
make TARGET_PLATFORM=rk3562 ENGINE=software
# 硬件模式(使用 RKNN + RGA + MPP)
make TARGET_PLATFORM=rk3562 ENGINE=hardware
工具链:arm32-linux-hf6ull
第三方库:third_lib/imx6ull/
编译命令:
make TARGET_PLATFORM=imx6ull
flowchart LR
subgraph 开发流程
A[build-linux-app] --> B[ssh-nfs-dev]
B --> C[运行应用]
C --> D{需要调试?}
D -->|是| E[debug-linux-app]
D -->|否| F[完成]
E --> C
end
subgraph 辅助工具
G[serial-communication] -.-> B
H[embedded-c-coding] -.-> A
end
style A fill:#e3f2fd,stroke:#1976d2
style B fill:#e8f5e9,stroke:#388e3c
style E fill:#fff3e0,stroke:#ff9800
style G fill:#fce4ec,stroke:#c2185b
style H fill:#f3e5f5,stroke:#7b1fa2
技能调用顺序:
| 操作 | 命令 |
|---|---|
| 选择 RK3562 工具链 | use_toolchain arm64-linux-75 |
| 选择 i.MX6ULL 工具链 | use_toolchain arm32-linux-hf6ull |
| 编译 RK3562 软件模式 | make TARGET_PLATFORM=rk3562 ENGINE=software |
| 编译 i.MX6ULL | make TARGET_PLATFORM=imx6ull |
| 清理构建 | make clean |
| 查看编译输出 | ls output/ |
.dtsi 文件,必须通过板级 .dts 或 overlay 修改| 问题现象 | 可能原因 | 解决方案 |
|---|---|---|
| 编译失败:找不到工具链 | 未选择工具链 | 使用 use_toolchain 命令 |
| SSH 连接失败 | 网络不通或IP错误 | 检查网络配置 |
| NFS 挂载失败 | 服务未启动 | 在开发板上执行 mount_nfs_wired |
| 程序运行崩溃 | 缺少依赖库 | 检查库路径和 LD_LIBRARY_PATH |
| 人脸检测图片异常 | 尺寸配置错误 | 检查全局视频配置 |
Plug-Lens v1.0.0 | 嵌入式视觉AI应用框架