关于 flash-platformio
面向 PlatformIO 嵌入式工程的固件烧录技能。它探测工程环境和上传设置、执行烧录并报告结果,成功后可交接给串口监视或调试技能。
主要功能
- 01探测 pio CLI 和上传协议
- 02选择工程默认环境
- 03列出已连接设备以便选择端口
- 04通过 PlatformIO 上传固件
- 05报告分类故障及日志证据
适用场景
- 01将构建好的固件烧录到目标板
- 02为工程环境选择上传端口
- 03查看上传状态和失败日志
- 04后续进行串口监视或调试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ leokemp223/ embed-ai-tool --skill flash-platformio安装后在 Claude Code 中输入/flash-platformio确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/usage.mdscripts/pio_flasher.py详细介绍
来自项目 READMEPlatformIO 烧录
适用场景
Project Profile中标明build_system: platformio或工作区中存在platformio.ini。- 用户希望将编译产物烧录到目标板,利用 PlatformIO 内置的上传机制。
- 支持串口、JTAG、DFU 等多种上传协议,由
platformio.ini中的upload_protocol决定。
必要输入
- PlatformIO 工程目录(包含
platformio.ini)。 - 可选的环境名称和上传端口。
自动探测
- 脚本启动即自动复用工程根目录
.em_skill.json中上次成功的 profile 作为默认参数(显式参数优先,无需先手动传--resume);--resume仅用于断言缓存必须存在,无缓存则非零退出。无缓存或用户明确要求重新探测时,脚本自动回退到正常扫描。 - 自动定位
pioCLI。 - 解析
platformio.ini中的环境列表和upload_protocol。 - 若未指定环境,使用
default_envs或第一个环境。 - 可列出已连接设备帮助用户确认端口。
执行步骤
- 先阅读 references/usage.md,确认本次操作。
- 对于常见场景,直接一次调用完成烧录:
python scripts/pio_flasher.py --flash --project-dir <工程目录> --env <环境名> - 若需指定上传端口:
python scripts/pio_flasher.py --flash --project-dir <工程目录> --env <环境名> --upload-port COM3 - 读取脚本输出的烧录结果报告,关注成功/失败状态和证据。
- 将烧录结果写回
Project Profile,推荐下一步 skill。
失败分流
connection-failure:设备未连接、串口被占用或权限不足。project-config-error:板卡配置无效或环境名不存在。upload-failure:上传过程中出错。
输出约定
示例输出格式:
烧录成功 ✅
工程: ESP32_DEV → 环境: esp32dev
板卡: esp32dev | 平台: espressif32
固件: firmware.bin (200.0 KB)
耗时: 15.3 秒
- 成功后推荐
serial-monitor(查看串口输出)或debug-platformio(在线调试)。 - 失败时输出失败分类和日志证据。
交接关系
- 从
build-platformio接收编译成功的工程信息。 - 烧录成功后交给
serial-monitor(查看串口输出)或debug-platformio(在线调试)。
评论
支持 Markdown