Files
hardware-development/references/kicad-toolchain.md
T

34 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# KiCad MCP Pro 与 KiCadRoutingTools 协作
用户指定 PCB 设计过程中使用这两个工具。本文件规定分工和工程交接;路由参数的完整说明按需读取本机 [kicad-routing-tools 技能](D:/AI软件/codex-skills/kicad-routing-tools/SKILL.md)。路径或版本变更时核实实际安装,不从旧记录推断能力。
## 分工与入口
| 工具 | 用途 | 本机入口 |
| --- | --- | --- |
| kicad-mcp-pro | 工程信息、原理图/PCB/规则/叠层核查;能力与授权允许时进行布局及局部编辑;原生检查、审核和制造输出 | 已注册的 `mcp__kicad__…` 工具;服务程序 `D:\AI软件\kicad-mcp-pro\.venv\Scripts\kicad-mcp-pro.exe` |
| KiCadRoutingTools | 网络检查、扇出、单端/差分布线、调长、覆铜相关操作、独立连通性与几何 DRC | `D:\AI软件\codex-skills\kicad-routing-tools\scripts\krt.ps1` |
| KiCad 原生 CLI/API | 保存后原生回读、填铜与 DRC;两工具未覆盖的必要局部几何处理 | `C:\Program Files\KiCad\10.0\bin\kicad-cli.exe`;专用 pcbnew Python |
2026-09-14 实测 MCP 3.34.3、KiCad CLI/IPC 10.0.3,服务当时为只读模式;这是环境快照,不能作为以后写操作已启用的依据。调用 `kicad_get_version`、必要时 `kicad_get_server_info` 核查能力/模式;用 `kicad_set_project` 绑定已确认的 PCB/原理图路径,再取工程信息及 `project_get_next_action`。工具建议不能覆盖用户限定的阶段。发现的工具元数据、调用参数和运行时能力优先于静态工具清单。
KiCadRoutingTools 本机版本 0.22.0,根目录 `D:\AI软件\KiCadRoutingTools-0.22.0`,Python 为 `D:\AI软件\kicad-routing-env\Scripts\python.exe`。通过 `krt.ps1` 使用 KiCad Python 3.11 和正确路径;不要混用 MCP 的 Python 3.13 环境。命令使用绝对路径并对路径、网络通配符加引号;先读相应命令帮助。
## 同一工程的交接
1. 对齐 MCP 活动工程、GUI 实际打开的 PCB、磁盘输入和同名 `.kicad_pro`/`.kicad_dru`。已打开一块板不证明它就是请求对象;识别未保存状态,不覆盖用户编辑。
2. 用 `copy_board.py` 成套复制到独立候选路径,并确认自定义规则和库依赖齐全。修改限定于授权对象;固定布局任务禁止调用布局优化器移动器件。
3. 对同一工程可能写入的 GUI/MCP、CLI 布线、填铜、DRC 和保存串行执行。外部文件更新后重新加载/绑定并读回确认,再做下一次编辑;禁止用 GUI 旧内存板覆盖磁盘新结果。
4. 原生工具缺少某类操作时,可在独立副本用版本匹配的 API 或经验证的文件变换完成必要几何工作。保留两工具的工程核查和独立验收,不以自编脚本全面替代它们。
5. 某工具或能力不可用时报告具体原因和未执行项,继续无依赖且获授权的工作;不能假称调用成功,也不能将缺失验收记为通过。
## 路由约束与最终验证
- 指定线宽、线距、过孔时使用适当的 `--escalation off`。不采用默认降级来获得表面连通,不擅自启用 `--clearance-ceiling` 或 `--relax-drc-severities`。即使用 `--no-fix-drc-settings`,仍比较前后工程规则,0.22.0 可能写入输出工程下限。
- 路由结束核查失败、开路、多端网络和实际铜连接,不以 routed 数量表示成功。
- 对最终保存版本执行 KiCadRoutingTools `check_connected.py`、按实际项目规则配置的 `check_drc.py`,以及原生 KiCad 填铜后的 DRC。检查独立工具默认跳过的项目,例如焊盘到板边;由原生或其它适用检查覆盖并披露范围。
- MCP 重新绑定最终结果,核对工程、叠层、规则和适用的原理图/PCB 一致性检查。MCP 若调用同一原生 CLI DRC,不算额外一次独立算法验证;不为凑次数重复同一检查。
- 使用 pcbnew 时取运行时层常量/层表,不硬编码 B.Cu 数字 ID;访问过孔线宽等 API 时遵循当前签名,必要时显式传铜层。圆弧必须按圆弧处理,不能由只认识线段的自编检查器静默按弦长或端点切向代替。
报告实际工具/后端、版本、对象哈希、参数、返回状态及检查范围;自动检查、解析模型、信号完整性仿真和实测的结论分别标识。