Skip to content

adamws/kicad-via-patterns

Repository files navigation

icon KiCad Via Patterns

CI/CD CircleCI Coverage Status
Package KiCad Repository GitHub Downloads (all assets, all releases) KiCad v7 KiCad v8 KiCad v9 PyPI - Version
Meta Hatch project linting - Ruff code style - Black types - Mypy License - MIT

Add vias using various patterns

Key Features

Arranges vias in pattern with respect to clearance rules and trace width. Following table shows images of supported patterns with clearance outlines enabled.

Pattern Example
Perpendicular
Diagonal
Stagger

Installation

To install release version of this plugin, use KiCad's Plugin and Content Manager and select Via Patterns from official plugin repository.

pcm-image

Latest master build is automatically uploaded to unofficial PCM compatible repository hosted on GitHub pages. To use it, add https://adamws.github.io/kicad-via-patterns/repository.json to PCM repository list.

How to use

  1. Select via.

  2. Click plugin icon to open dialog window.

    gui

    Select pattern type and size. Set track width and optional extra spacing size. In case of via stitching select 'Inherit net' checkbox. Click OK.

Important

When Extra space is set to 0, vias will be placed as tightly as possible, respecting the clearance rules of the origin via. In some cases, placing vias this closely can lead to suboptimal layout, for example, if it introduces significant breaks in the ground plane. The kicad-via-patterns is a tool, and it is the user's responsibility to use it wisely.

  1. Adjust pattern orientation with rotation buttons in new pop-up dialog.

    gui-rotate

  2. Pattern will start at position of selected via and will use it as an template (i.e. added vias will have same properties).

    • Pattern elements will be automatically selected to ease reposition or rotation/flip.
  3. If 'Inherit net' option selected, then all newly created vias will be assigned to the same net as an template. Otherwise the vias will have no net assigned, in such case update nets before continuing routing.

Warning

For KiCad 9 users: This plugin has been tested only with 'Through' via type with 'Normal' padstack mode.

demo.webm

License

This project is distributed under the terms of the MIT license.