DEV Community

Cover image for KiCad 8 to KiCad 9 PCB Layout Migration Blueprint: Netlist Parity, Padstack Geometries, and Differential Impedance Rules
cadguide.tools
cadguide.tools

Posted on

KiCad 8 to KiCad 9 PCB Layout Migration Blueprint: Netlist Parity, Padstack Geometries, and Differential Impedance Rules

KiCad 8 to KiCad 9 PCB Layout Migration Blueprint: Netlist Parity, Padstack Geometries, and Differential Impedance Rules

With the annual major release cycle of the KiCad EDA Suite, migrating complex multi-layer high-speed digital and RF PCB designs between major versions requires systematic verification. Upgrading .kicad_pro, .kicad_sch, and .kicad_pcb project trees without a formal pre-flight audit can introduce silent netlist mismatches, altered copper clearance geometries, and clearance violation flags in Design Rule Check (DRC).

Here is a battle-tested engineering checklist to migrate production PCB designs safely while maintaining 100% netlist parity and impedance control.


1. Version Control & Isolated Baseline Artifacts

Before opening any production project in a newer KiCad version:

  1. Commit all uncommitted working trees in Git.
  2. Tag the repository release (e.g., git tag v1.2-kicad8-baseline).
  3. Export an ASCII IPC-D-356 netlist from the current KiCad 8 layout (File > Export > Netlist > IPC-D-356). This serves as your immutable physical comparison gold standard.

2. Upgrading Schematic Symbol Libraries & Power Symbols

KiCad 8 and 9 introduced dedicated pin-to-pin electrical rule checks and improved graphic styling. When opening an older schematic in KiCad 9:

  • Cache Rescue Dialog: If symbols were modified locally or vendor libraries were updated on your workstation, KiCad prompts to rescue changed symbols into <project>-rescue.kicad_sch. Always accept the rescue, ensuring the schematic continues to use the exact pin mappings that produced the physical board layout.
  • Power Symbol Global Net Renaming: Inspect all power flags (+3V3, VCC_IO, GND). Ensure custom power symbols declare the Power attribute properly so that ERC does not generate false Pin connected to other pins, but not driven by any pin warnings.

3. High-Speed Differential Impedance & Layer Stackup Integrity

During major PCB format updates, copper layer thickness parameters and dielectric constant ($D_k / \varepsilon_r$) profiles in the Board Setup table may be recalculated if custom material stackups were defined:

Board Setup > Physical Stackup:
Layer 1 (F.Cu): 35 µm (1 oz) Microstrip
Dielectric 1 (Prepreg 1080): 75 µm, Dk = 4.2, Df = 0.015
Layer 2 (In1.Cu): 35 µm Reference Ground Plane
Enter fullscreen mode Exit fullscreen mode

When routing 90 $\Omega$ USB 2.0 / USB 3.x differential pairs or 100 $\Omega$ PCIe Gen 4 lanes, a $10\,\mu\text{m}$ variance in prepreg thickness during stackup re-import alters characteristic trace impedance ($Z_0$) by several ohms, risking signal integrity reflections:

$$Z_{0,microstrip} \approx \frac{87}{\sqrt{\varepsilon_r + 1.41}} \ln\left(\frac{5.98 \cdot h}{0.8 \cdot w + t}\right)$$

Before re-running global copper zone fills, verify your layer stackup numbers against our Multi-Layer PCB Impedance Profile & Stackup Engineering Guide.


4. Copper Pour Zone Fill Refactoring & Thermal Reliefs

KiCad 9 enhances zone fill algorithms, particularly around teardrop filleting and micro-via thermal reliefs:

  • Re-fill All Zones: Press B to initiate a global copper polygon rebuild across all inner and outer layers.
  • Inspect Thermal Spoke Widths: Check ground pin pads on high-current inductors and buck converters. Verify that four-spoke thermal connections haven't shrunk below trace ampacity limits.
  • Diff Netlist Check: Export a fresh IPC-D-356 netlist from KiCad 9 and run a line-by-line diff against the baseline exported in Step 1. Every copper bridge and net connectivity must align perfectly.

For detailed best practices on hierarchical schematic design and bus aliases, review our guide on KiCad Schematic & Netlist Engineering Standards.

Top comments (0)