用途:当 Project Profile 标明 build_system: platformio 或工作区存在 platformio.ini,且需要把编译产物烧录到目标板时使用,借助 PlatformIO 内置上传机制完成烧录。
主要能力:支持串口、JTAG、DFU 等上传协议,具体由 platformio.ini 中的 upload_protocol 决定;自动定位 pio CLI,解析环境列表与 upload_protocol,未指定环境时使用 default_envs 或第一个环境;可列出已连接设备帮助确认端口;启动时自动复用工程根目录 .em_skill.json 中上次成功的 profile 作为默认参数,显式参数优先,--resume 仅用于断言缓存必须存在,无缓存则非零退出,无缓存或要求重新探测时回退到正常扫描。
必要输入:PlatformIO 工程目录(含 platformio.ini),可选环境名称与上传端口。
使用方式:先阅读 references/usage.md 确认操作;常见场景一次调用完成烧录:python scripts/pio_flasher.py --flash --project-dir <工程目录> --env <环境名>;指定端口时加 --upload-port COM3。随后读取脚本输出的烧录结果报告,关注成功/失败状态与证据,并将结果写回 Project Profile。
失败分流:connection-failure(设备未连接、串口被占用或权限不足)、project-config-error(板卡配置无效或环境名不存在)、upload-failure(上传过程出错)。
交接关系:从 build-platformio 接收编译成功的工程信息;成功后交给 serial-monitor 或 debug-platformio。
限制:资料未提供其他平台、收费或价格信息。