← 博客

Altium 转 KiCad — 2026 迁移指南

How to convert Altium to KiCad — MakerSuite 3D

KiCad 8 自带原生 Altium 导入器

和反方向不同,KiCad 8(2024 年 2 月发布)通过 File > Import > Non-KiCad Project 直接读取 Altium .PcbDoc 和 .SchDoc 文件。导入器解析 Altium 二进制 OLE2/CFB 格式,提取铜层几何、网络和元件,写出干净的 KiCad 工程。多数板子分钟级转完;导入后的工作是 3D 模型重链接和规则重写,而不是几何转换本身。

导入器实际读到了什么

Altium 文件是 Compound File Binary(CFB)容器 — 老 Microsoft Office 文档用的同一个 OLE2 存储格式。KiCad 8 导入器遍历 CFB 树,解析每个二进制流(Board、Components、Nets、Polygons、Tracks、Vias、Pads、Strings),用 KiCad 原生 S-expression 格式重建设计。这部分工作开源后于 2023 年合入 KiCad 主分支,所以解析器可审计。导入器也处理 .PcbLib(封装库)和 .SchLib(符号库),支持局部迁移。

什么能搬过去、什么需要返修

  • 铜层干净搬过去,包括盲埋孔、敷铜、热焊盘。标准 2/4/6/8 层叠层自动映射。
  • 网络和元件位置、参考、值和网络分配干净搬过去。导入后原理图与 PCB 交叉探针可用。
  • 3D 模型Altium STEP 引用不会自动链接。要么用 KiCad 官方 3D 库(覆盖大部分常见封装),要么用 MakerSuite 3D 的自动推断(按封装名推导模型 URL)。
  • 设计规则各网络类的走线宽度和间距搬得过去。差分对规则、等长、阻抗约束需在 KiCad 语法里重写(高速板预半天)。
  • 自定义焊盘形状Altium 复杂焊盘形状库没有 KiCad 1:1 等价物。多数异形焊盘退化为最近的标准;交付前视觉确认。
  • 原理图图形文本框、自定义符号、装饰元素可能渲染略有差异。功能内容(网络、符号、参考)忠实保留。

五步迁移工作流

  1. Open pcbviewer.app — 先把 .PcbDoc 拖到 MakerSuite 3D 上,捕获原 Altium 板的基线视图。这就是验证转换的参考。
  2. 打开 KiCad 8 > File > Import > Non-KiCad Project,指向 Altium 工程文件夹。等导入器走完所有二进制流。干净导入按板子复杂度需 30 秒到几分钟。
  3. 在 KiCad 里打开导入的 .kicad_pcb。视觉检查:层数对得上吗、元件在预期位置吗、网络名一致吗。跑 DRC 找出导入器标出来的几何问题。
  4. 重链接 3D 模型 — 对 3D 引用为空的封装,用 KiCad 官方库或自动推断。打开 3D 查看器(View > 3D Viewer)确认元件能渲染。
  5. 再把导入的 .kicad_pcb 拖回 MakerSuite 3D,逐标签和原 .PcbDoc 对比。层漂移、丢敷铜、转零件、丢过孔 — 全在并排 3D 视图里立即可见。

把原 .PcbDoc 和转后的 .kicad_pcb 都拖到 MakerSuite 3D — 视觉差异在送厂前抓住导入器回归。

免费试用 MakerSuite 3D

为什么这条迁移路径更顺

KiCad 有靠接收 Altium 工程来增长的战略动机,所以导入器持续维护。反向(KiCad → Altium)没有等价物,因为 Altium 有让人难以离开的商业动机。这种不对称意味着:转到 KiCad 多数板子是一个下午的活,从 KiCad 转 Altium 是多日重建。选团队主用 EDA 时考虑到这一点。

Altium → KiCad 转换何时发生

  • 许可成本下降 — 小团队觉得 Altium 订阅太贵,KiCad 免费提供同等能力
  • 跨平台工作流 — Mac 和 Linux 工程师无法原生跑 Altium,KiCad 哪都跑得了
  • 开源强制 — 公司或资助要求交付设计用开源 EDA 工具
  • 招聘约束 — 受过 KiCad 训练的工程师比 Altium 训练的更好招,尤其入门岗
  • 长期归档 — KiCad 文本式 S-expression 格式人类可读、可版本控制,不像二进制 CFB 会比特腐烂

在浏览器里验证转换

Altium 和 KiCad 源文件都含完整设计 IP。上传到云端转换器或查看器对 NDA 工作是真风险。MakerSuite 3D 在浏览器里通过 JavaScript 完整解析两种格式 — 不走服务器、不上传、不缓存。一标签开原 .PcbDoc、另一标签开转后 .kicad_pcb,逐层对比。任何静默回归立即在 3D 视图里可见,几何不出本机。

常见问题

Does KiCad have a real Altium importer?

Yes — KiCad 8 (released February 2024) ships with native Altium Designer import for .PcbDoc, .SchDoc, .PcbLib, and .SchLib files. File > Import > Non-KiCad Project handles full project conversion. The importer reads Altium's binary OLE2/Compound File Binary format directly. Unlike the reverse direction (KiCad→Altium), which requires third-party tools, KiCad has invested in this importer because growing the user base by accepting Altium projects is strategically aligned with KiCad's mission.

What transfers cleanly and what needs fix-up?

Clean transfer: copper layers, tracks, vias (including blind/buried), pads, through-hole pads, polygons, board outline, drill data, schematic nets, and component placements. Needs fix-up: 3D models (Altium's STEP references don't auto-link to KiCad), some custom pad shapes (Altium's complex shape library doesn't have 1:1 KiCad equivalents), schematic graphic decorations (text frames, custom symbols may render slightly differently), and rule-driven design constraints (KiCad's DRC engine has different rule semantics, so high-speed rules need restating).

How do I handle 3D models?

Altium projects reference STEP models via the Component > 3D Models tab, but the model paths are absolute or relative to the Altium installation. KiCad uses .wrl or .step files referenced from footprints with environment variables like ${KICAD8_3DMODEL_DIR}. After import, footprints will have empty 3D references. Either: (1) use MakerSuite 3D's auto-inference which derives KiCad-CDN model URLs from footprint names automatically, or (2) re-link models manually via Footprint Editor > 3D models tab. The KiCad official 3D library covers most common packages.

Will design rules and constraint classes survive?

Partially. Altium's rule-driven engine (ApplicableTo/Net/NetClass/Layer scoping with priorities) doesn't map 1:1 onto KiCad's NetClass + custom rule system. Track widths and clearances copy over per net class. Differential pair rules, length matching, and impedance constraints require restating in KiCad's syntax. For high-speed boards (DDR, USB 3, PCIe), budget half a day for restating rules in KiCad and validating with the Differential Pair tools. For low-speed digital and analog boards, the default imported rules are usually fine.

Can I verify the converted board before committing to migration?

Yes — open both files in MakerSuite 3D's browser viewer side by side. The .PcbDoc parser and .kicad_pcb parser both render in the same 3D scene format, so visual diffs are immediate. Layer by layer comparison catches silent regressions like missing zones, flipped layers, rotated parts, or lost vias. This pre-commit check is the cheapest way to catch importer bugs before you invest weeks in adapting the design to KiCad's workflow. No install required, runs entirely in the browser.

相关文章

How to Convert KiCad to Altium — Migration Reality CheckFree Online Altium PCB Viewer — View .PcbDoc Files in 3DHow to View KiCad .kicad_pcb Files in 3D Online

拖入 Altium 或 KiCad 文件 — 视觉验证迁移

打开 PCB 查看器