Créer une grille de vias de stitching avec l'API Python de pcbnew

Publié le 13 septembre 2026 par leZ

Générez une grille complète de vias de stitching reliés à la masse par script, plutôt qu'un via à la fois — avec pcbnew ou l'API IPC de KiCad.

Le tutoriel sur la création d’un via en pose un seul. Une grille de vias de stitching — reliée à la masse tout autour d’un plan de cuivre pour améliorer le retour de courant HF — se construit avec la même API, dans une double boucle sur les lignes et les colonnes.

Boucler sur les lignes et les colonnes

Chaque via est créé, positionné et rattaché au net dans la même itération :

from pcbnew import PCB_VIA, VECTOR2I, FromMM

rows, cols, spacing = 4, 4, 5  # mm
gnd = board.FindNet("GND")

for row in range(rows):
    for col in range(cols):
        via = PCB_VIA(board)
        via.SetPosition(VECTOR2I(FromMM(20 + col * spacing), FromMM(20 + row * spacing)))
        via.SetWidth(FromMM(0.6))
        via.SetDrill(FromMM(0.3))
        via.SetNet(gnd)
        board.Add(via)

Même structure de boucle côté API IPC, en millimètres directement :

from kicad.geometry import Vector2

rows, cols, spacing = 4, 4, 5  # mm
gnd = board.get_net("GND")

for row in range(rows):
    for col in range(cols):
        via = board.create_via()
        via.position = Vector2.from_mm(20 + col * spacing, 20 + row * spacing)
        via.pad_diameter = 0.6
        via.drill_diameter = 0.3
        via.net = gnd
        board.update_items(via)

Essayez ci-dessous : ajustez lignes, colonnes et espacement pour voir la grille de vias se recomposer.

rows, cols, spacing = 3, 4, 5  # mm

for row in range(rows):
    for col in range(cols):
        via.SetPosition(VECTOR2I(FromMM(20 + col * spacing), FromMM(20 + row * spacing)))
3
4
5

Pour aller plus loin

Pour un stitching utile en pratique, on ne place généralement les vias qu’à l’intérieur du contour d’une zone de cuivre existante — un test d’appartenance point-dans-polygone avant chaque board.Add(via) suffit à filtrer la grille en fonction de la forme réelle du plan de masse.