Руководство пользователя

This manual is in the process of being revised to cover the latest stable release version of KiCad. It contains some sections that have not yet been completed. We ask for your patience while our volunteer technical writers work on this task, and we welcome new contributors who would like to help make KiCad’s documentation better than ever.

This document is Copyright © 2010-2023 by its contributors as listed below. You may distribute it and/or modify it under the terms of either the GNU General Public License (http://www.gnu.org/licenses/gpl.html), version 3 or later, or the Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0/), version 3.0 or later.

Все торговые знаки этого руководства принадлежат его владельцам.


Jean-Pierre Charras, Fabrizio Tappero, Wayne Stambaugh, Cirilo Bernardo, Jon Evans, Graham Keeth


Барановский Константин <[email protected]>, 2017-2021 KiCad Russian Team

Обратная связь

The KiCad project welcomes feedback, bug reports, and suggestions related to the software or its documentation. For more information on how to sumbit feedback or report an issue, please see the instructions at https://www.kicad.org/help/report-an-issue/

Introduction to the KiCad PCB Editor

Первоначальная настройка

When the PCB Editor is run for the first time, if the global footprint table file fp-lib-table is not found in the KiCad configuration folder then the KiCad will ask how to create this file:

footprint library table initial setup dialog

The first option is recommended (Copy default global footprint library table (recommended)). The default footprint library table includes all of the standard footprint libraries that are installed as part of KiCad.

If this option is disabled, KiCad was unable to find the default global footprint library table. This probably means you did not install the standard footprint libraries with KiCad, or they are not installed where KiCad expects to find them. On some systems the KiCad libraries are installed as a separate package.

  • If you have installed the standard KiCad footprint libraries and want to use them, but the first option is disabled, select the second option and browse to the fp-lib-table file in the directory where the KiCad libraries were installed.

  • If you already have a custom footprint library table that you would like to use, select the second option and browse to your fp-lib-table file.

  • If you want to construct a new footprint library table from scratch, select the third option.

Footprint library management is described in more detail later.

The PCB Editor user interface

pcbnew user interface

The main PCB Editor user interface is shown above, with some key elements indicated:

  1. Верхняя панель инструментов (управление файлами, средства масштабирования, инструменты для редактирования)

  2. Левая панель управления (параметры отображения)

  3. Панель сообщений и строка состояния

  4. Правая панель управления (инструменты черчения и проектирования)

  5. Панель внешнего вида

  6. Панель фильтра выделения

Навигация на холсте редактора

Холст редактора отображает проектируемую плату. Позволяет панорамировать и масштабировать различные её области, а также может отражать отображение для просмотра платы снизу.

By default, dragging with the middle or right mouse button will pan the canvas view and scrolling the mouse wheel will zoom the view in or out. You can change this behavior in the Mouse and Touchpad section of the preferences (see Configuration and Customization for details).

Several other zoom tools are available in the top toolbar:

  • Zoom In icon zooms in on the center of the viewport.

  • Zoom Out icon zooms out from the center of the viewport.

  • Zoom to Page icon zooms to fit the frame around the drawing sheet.

  • Zoom to Objects icon zooms to fit the items within the drawing sheet.

  • Zoom to Selection icon allows you to draw a box to determine the zoomed area.

The cursor’s current position is displayed at the bottom of the window (X and Y), along with the current zoom factor (Z), the cursor’s relative position (dx, dy, and dist), the grid setting, and the display units.

The relative coordinates can be reset to zero by pressing Space. This is useful for measuring distance between two points or aligning objects.

Клавиши быстрого доступа

The Ctrl+F1 shortcut displays the current hotkey list. The default hotkey list is included in the Actions Reference section of the manual.

The hotkeys described in this manual use the key labels that appear on a standard PC keyboard. On an Apple keyboard layout, use the Cmd key in place of Ctrl, and the Option key in place of Alt.

Many actions do not have hotkeys assigned by default, but hotkeys can be assigned or redefined using the hotkey editor (PreferencesPreferences…​Hotkeys).

Многие команды, запускающиеся клавишами быстрого доступа, доступны через контекстное меню. Открыть контекстное меню можно нажатием правой клавиши мыши в окне редактора. Наличие тех или иных команд в контекстном меню зависит от выделенного объекта и выбранного инструмента.

Hotkeys are stored in the file user.hotkeys in KiCad’s configuration directory. The location is platform-specific:

  • Windows: %APPDATA%\kicad\7.0\user.hotkeys

  • Linux: ~/.config/kicad/7.0/user.hotkeys

  • macOS: ~/Library/Preferences/kicad/7.0/user.hotkeys

KiCad can import hotkey settings from a user.hotkeys file using the Import Hotkeys button in the hotkey editor.

Средства управления отображением и выделением

Слои платы

Layers in the PCB Editor represent physical copper layers on a board, as well as graphical layers used for defining things such as silkscreen, solder mask, and the board edge. There is always one layer that is active in the editor. The active layer is drawn on top of other layers and will be the layer assigned to newly-created objects. The active layer is indicated in the layer selector drop-down box in the top toolbar and is also highlighted in the appearance panel. To change the active layer, you can left-click a layer name in the appearance panel, use the drop-down layer selector in the top toolbar, or use a hotkey. Layers can be hidden to simplify the board view. You can hide a layer even if it is the active layer.

Порядок отображения слоёв платы

TODO: Объяснить.

Панель внешнего вида

The appearance panel provides controls to manage the visibility, color, and opacity of objects in the PCB Editor’s drawing canvas. It has three tabs: the Layers tab contains controls for the board layers, the Objects tab contains controls for different types of graphical objects, and the Nets tab contains controls for the appearance of the ratsnest and copper items.

Средства управления отображением слоёв

На вкладке «Слои» панели «Внешний вид» каждый слой платы выводитсяс цветовым обозначением и состоянием видимости. Активный слой подсвечивается и указывается стрелочкой слева от указателя цвета. Для выбора активного слоя необходимо щёлкнуть по нему левой клавишей мыши. Скрыть или отобразить слой можно щелчком левой клавиши мыши по значку видимости соответствующего слоя. Для изменения цвета слоя щёлкните дважды левой клавишей мыши или один раз средней клавишей мыши по образцу цвета слоя.

Возможность изменения цвета слоёв на панели внешнего вида возникает только после создания собственной цветовой темы в «Настройках».

Ниже списка слоёв находится раскрывающаяся панель, содержащая параметры отображения слоёв. Первый параметр управляет характером отображения неактивных слоёв: «Нормально», «Тускло» или «Скрыть». Режим отображения можно использовать для упрощения вида и концентрации внимания на отдельном слое. Элементы на неактивных слоях нельзя выбрать, когда в качестве режима отображения неактивных слоёв выбран параметр «Тускло» или «Скрыть». Быстрое циклическое переключение режимов отображения осуществляется с помощью комбинации клавиш Ctrl+H.

Перевернуть плату отображает плату так, как при просмотре снизу (то есть отражает вид по оси Y). Это действие можно также выполнить из в меню «Вид».

Отражение вида платы не означает изменения порядка визуального отображения слоёв, активный слой останется сверху, а за ним будут следовать другие слои в обычном порядке.

Управление объектами

Вкладка «Объекты» панели внешнего вида похожа на вкладку «Слои». Основным отличием является отсутствие цветовых настроек у некоторых объектов и присутствие движков для настройки прозрачности у четырёх типов объектов (дорожек, переходных отверстий, контактных площадок и зон). Настройка прозрачности при отображении будет помножена на любую настройку прозрачности цвета слоя. По умолчанию все объекты полностью непрозрачны, за исключением зон, которые изначально отображаются полупрозрачными для лучшей видимости объектов сквозь области зон заливки.

Наборы слоёв

Наборы слоёв хранят информацию о скрытых и видимых слоях и объектах для удобства повторного выполнения задач. Существует несколько встроенных наборов слоёв, а также существует возможность для создания своих собственных наборов. Наборы, создаваемые пользователями, хранятся в настройках проекта для платы, так как они могут создаваться под конкретную структуру платы.

Загрузить набор можно путём выбора набора в раскрывающемся меню «Наборы слоёв» в нижней части панели внешнего вида или быстрым переключением наборов слоёв при удержании клавиши Ctrl и нажатии Tab. При появлении окна переключения нажатие клавиш Tab и Shift+Tab выполняет циклический переход по доступным наборам. Выделенный набор загружается при освобождении клавиши Ctrl.

Для сохранения пользовательского набора сначала необходимо установить видимость слоёв с помощью средств управления видимостью в соответствии с собственными предпочтениями, а затем выбрать пункт «Сохранить набор слоёв…» из раскрывающегося меню «Наборы слоёв». Затем необходимо указать имя набора, после чего он будет доступен для загрузки через раскрывающееся меню или посредством быстрого переключения наборов. Для изменения пользовательского набора слоёв следуйте указанной процедуре, при этом сохранение изменённой версии под старым именем приведёт перезаписи существующей версии. Для удаления пользовательского набор слоёв выберите элемент «Удалить набор слоёв…» из раскрывающегося меню и выберите набор для удаления из списка.

Управление цепью и классом цепей

Вкладка «Цепи» панели внешнего вида отображает список всех цепей и классов цепей на плате. Каждая цепь снабжена средством управления видимостью данной цепи в области связей. При скрытии цепей в области связей сами связи платы не изменяются и не влияют на средство проверки правил проектирования; это делается только для упрощения понимания связей на плате.

Для каждой цепи и класса цепей также может быть задан цвет. По умолчанию этот цвет применяется к линиям связи данной цепи (или всех цепей данного класса). Цвет по умолчанию у цепей отсутствует; поэтому образец цвета отображается в виде шахматного узора. Дважды щёлкните образец цвета цепи или класса цепей, либо щёлкните его правой клавишей мыши для установки цвета.

Однако невозможно задать цвет для класса цепей по умолчанию, потому что цепи в этом классе будут использовать цвет по умолчанию для связей, определяемый в цветовой теме.

С помощью панели внешнего вида можно также выделять и подсвечивать цепи и классы цепей: щёлкните правой клавишей мыши по цепи или классу цепей для вывода этих параметров в составе меню.

Под списком классов цепей находится раскрывающаяся панель, содержащая параметры отображения цепей. Первый параметр этой панели регулирует применение цветов цепей. При выборе параметра «Все» все медные элементы (контактные площадки, дорожки, переходные отверстия и зоны), принадлежащие цепи или классу цепей примут выбранный цвет. При выборе«Связи» (значение по умолчанию), цвета цепи или класса цепей распространятся только на связи. При выборе «Нет», цвета цепи или класса цепей будут полностью игнорироваться.

Второй параметр управляет вариантом отображения связей. Вариант«Все слои» отображает все линии связей между всеми несоединёнными элементами. «Видимые слои» не отображает связи с несоединёнными элементами, которые находятся на скрытых слоях.

Выделение и фильтр выделения

Selecting items in the editing canvas is done with the left mouse button. Single-clicking on an object will select it and dragging will perform a box selection. A box selection from left to right will only select items that are fully inside the box. A box selection from right to left will select any items that touch the box. A left-to-right selection box is drawn in yellow, with a cursor that indicates exclusive selection, and a right-to-left selection box is drawn in blue with a cursor that indicates inclusive selection.

Действие выделения можно изменять удерживанием клавиш-модификаторов при щелчке или перетаскивании мышью. Ниже приводится список клавиш-модификаторов, которые могут применяться совместно со щелчком мыши для выбора одиночных элементов:

Modifier Keys (Windows) Modifier Keys (Linux) Modifier Keys (macOS) Selection Effect




Toggle selection. Note: Ctrl+click can be remapped to highlight net in PreferencesPCB EditorEditing Options.




Add the item to the existing selection.




Remove the item from the existing selection.

long click

long click or Alt

long click or Option

Clarify selection from a pop-up menu.

Следующие клавиши-модификаторы применяются при перетаскивании мышью для выделения области:

Modifier Keys (Windows) Modifier Keys (Linux) Modifier Keys (macOS) Selection Effect




Toggle selection.




Add item(s) to the existing selection.




Remove item(s) from the existing selection.

The selection filter panel in the lower right corner of the PCB Editor window controls which types of objects can be selected with the mouse. Turning off selection of unwanted object types makes it easier to select items in a dense board. The "All items" checkbox is a shortcut to turn the other items on and off. The "Locked items" checkbox is independent of the rest, and controls whether or not items that have been locked can be selected. You can right-click any object type in the selection filter to quickly change the filter to only allow selecting that type of object.

Если выделен медный объект, то это выделение можно распространить на другие медные элементы той же самой цепи с помощью команды «Добавить к выделенному» в контекстном меню, открывающемся щелчком правой клавиши мыши, а также с помощью комбинации клавиш U. При первом запуске этой команды выделение распространяется до ближайшей контактной площадки. Во второй раз, выделение распространяется на все связанные элементы на всех слоях.

Selecting an object displays information about the object in the message panel at the bottom of the window. Double-clicking an object opens a window to edit the object’s properties.

Нажатие Esc всегда приводит к отмене текущего инструмента или операции и возврате к инструменту выделения. Нажатие Esc в активном состоянии инструмента выделения очищает текущее выделение.

Подсветка цепи

Подсветка электрической цепи (или нескольких цепей) в редакторе платы позволяет визуализировать трассировку цепи по плате. Подсветка цепи активируется путём выбора цепи для подсветки в редакторе платы, либо выбором соответствующей цепи в редакторе схем при включении подсветки выбранных цепей (см. внизу). Если подсветка включена, подсвеченная цепь (цепи) будет отображаться более ярким цветом, при этом все другие элементы будут отображаться в более тусклых, нежели обычно, тонах.

There are three ways to select a net or nets to highlight in the PCB editor: by using the hotkey ` after selecting a copper object, by using the context menu of any copper object, and the context menu of the Nets tab of the Appearance panel. When you press the Highlight Net hotkey, the nets of any selected copper items will be highlighted. If no copper items are selected, the net of the copper item under the editor cursor will be highlighted.

Net highlighting can be cleared by using the Clear Net Highlight action (hotkey ~) or by using the Highlight net tool on an empty region in the schematic. By default, Esc also clears net highlighting, but this can be disabled if desired in PreferencesPCB EditorEditing Options.

При выделении цепи (цепей) для подсветки, на левой панели инструментов активируется команда «Переключить подсветку цепей» (выполняется также с помощью комбинации клавиш, Ctrl+`). Эта команда включает или выключает отображение подсветки без выбора новой цепи для подсветки.

Выделение из схемы

KiCad позволяет выполнять сквозное выделение между схемой и платой в обоих направлениях. Существует несколько различных типов сквозного выделения.

Сквозное выделение позволяет выделить символ или вывод насхеме для выделения соответствующего посадочного места или контактной площадки на плате (при их наличии) и наоборот. По умолчанию сквозное выделение приводит к центрированию отображения на выделенном элементе и масштабированию отображения по его размерам. Данное поведение можно отменить в разделе «Параметры отображения» диалогового окна «Настройки».

Сквозная подсветка позволяет подсветить цепь на схеме и на плате одновременно. При включении параметра «Подсвечивать выбранные цепи» в разделе «Параметры отображения» диалогового окна «Настройки» подсветка цепи или шины в редакторе схемы приведёт к подсветке соответствующей цепи (цепей) в редакторе платы.

Средства управления отображением левой панели инструментов

The left toolbar provides options to change the display of items in the PCB Editor.

grid 24

Turns grid display on/off.

Note: by default, hiding the grid will disable grid snapping. This behavior can be changed in the Display Options section of Preferences.

polar coord 24

Switch between polar and Cartesian coordinate display in the status bar.

unit inch 24

unit mil 24

unit mm 24

Display/entry of coordinates and dimensions in inches, mils, or millimeters.

cursor shape 24

Switches between full-screen and small editing cursor (crosshairs).

general ratsnest 24

Turns the ratsnest display on/off.

curved ratsnest 24

Switches between straight and curved ratsnest lines.

contrast mode 24

Switches the non-active layer display mode between Normal and Dim.

Note: this button will be highlighted when the non-active layer display mode is either Dim or Hide. In both cases, pressing the button will change the layer display mode to Normal. The Hide mode can only be accessed via the controls in the Appearance Panel or via the hotkey Ctrl+H.

net highlight 24

When a net has been selected for highlighting, switches the highlighting on or off.

Note: this button will be disabled when no net has been highlighted. To highlight a net, use the hotkey `, right-click any copper object in the net and choose Highlight Net from the Net Tools menu, or right-click the net in the list in the Nets tab of the Appearance panel.

show zone 24

Show zone filled areas.

show zone disable 24

Show zone outlines only.

pad sketch 24

Switches display of pads between filled and outline mode.

via sketch 24

Switches display of vias between filled and outline mode.

showtrack 24

Switches display of tracks between filled and outline mode.

layers manager 24

Shows or hides the Appearance and Selection Filter panels on the right side of the editor.

tools 24

Shows or hides the Properties Manager panel on the left side of the editor.

Создание печатной платы

Базовые принципы построения печатных плат

Печатная плата в KiCad обычно состоит из посадочных мест,представляющих электронные компоненты и их контактные площадки, цепей для соединения контактных площадок друг с другом, дорожек, переходных отверстий и зон заливки, формирующих соединения между контактными площадками в каждой цепи, а также различные графические формы, определяющие контур платы, обозначения шёлкографии и любую другую необходимую информацию.

Информация о цепях на печатных платах в KiCad обычно синхронизируетсяс соответствующей схемой, но цепи также могу создаваться и редактироваться непосредственно в редакторе печатных плат.


KiCad is capable of creating printed circuit boards with up to 32 copper layers, 14 technical layers (silkscreen, solder mask, component adhesive, solder paste, etc), and 13 general-purpose drawing layers.

The internal measurement resolution of all objects in KiCad is 1 nanometer, and measurements are stored as 32-bit integers. This means it is possible to create boards up to approximately 4 meters by 4 meters.

В настоящее время KiCad поддерживает один файл платы на проект / схему.

Создание печатной платы на основе схемы

Creating a board from a schematic is the recommended workflow for KiCad. When you create a new project, KiCad will generate an empty board file with the same name as the project. To start designing the board after you have created a schematic, simply open the board file. You can do this either from the KiCad project manager, or by clicking the "Open PCB in board editor" button in the schematic editor. To import the schematic design information into the board editor, including footprints and net connections, use the ToolsUpdate Schematic from PCB…​ action (F8). You can also use the Update pcb from schematic icon icon in the top toolbar.

Update PCB from Schematic is the preferred way to transfer design information from the schematic to the PCB. In older versions of KiCad, the equivalent process was to export a netlist from the Schematic Editor and import it into the Board Editor. It is no longer necessary to use a netlist file.
Обновить печатную плату на основе схемы

For more information about the Update Schematic from PCB tool, see the forward annotation section of the manual.

Создание платы с нуля

Также можно создать плату без использования схемы, хотя этот рабочий процесс имеет некоторые ограничения и не рекомендован для большинства пользователей. Редактор плат при этом должен быть запущен автономно (не из менеджера проектов KiCad). Перед началом проектирования рекомендуется сохранить файл платы, что приведёт также к созданию файла проекта для сохранения параметров платы. Для выбора места сохранения файла платы выберите пункт «Сохранить как…» из меню «Файл». Файл проекта будет сохранён с тем же именем и в том же месте, которое было выбрано для сохранения файла платы.

Параметры платы

Перед началом проектирования платы, откройте диалоговое окно «Параметры платы» для настройки её основных параметров. Для открытия диалогового окна щёлкните по значку options board в верхней панели инструментов или выберите пункт «Параметры платы…» в меню «Файл».

Настройка структуры платы и физических параметров

There are two sections of Board Setup used to configure the stackup and layers of the board. The Board Editor Layers section is used to enable or disable technical (non-copper) layers, and give custom names to layers if desired. The Physical Stackup section is used to configure the number of copper layers, as well as the physical parameters of the copper and dielectric layers such as thickness and material type. Dielectric, soldermask, and silkscreen layers can have colors assigned to them, which affects the board’s appearance in the 3D viewer.

Начните настройку параметров структуры платы с раздела «Структура платы»:

board setup physical stackup

Set the number of copper layers in the upper left corner and then enter the physical parameters of the stackup if desired. These parameters may be left at their default values, but note that the board thickness value will be used when exporting a 3D model of the board. If you plan to use this feature, it is a good idea to ensure that the stackup thickness is correct.

KiCad currently only supports stackups with an even number of copper layers. To create designs with an odd number of layers (for example, flexible printed circuits or metal-core printed circuits), simply choose the next highest even number and ignore the extra layer.

Далее, при необходимости переименуйте слои в разделе «Слои редактора» или скройте не медные слои, которые не будут использоваться при проектировании. Например, если нижняя шёлкография при проектировании использоваться не будет, снимите флажок рядом со слоем B.Silkscreen.

board setup board editor layers
Copper layers can be designated as signal, power plane, mixed, or jumper in the Board Editor Layers section. This designation is intended as a guide for the user only. Tracks and zones can be routed on any copper layer, no matter what the type is configured to in this dialog.

Некоторые дополнительные параметры структуры находятся в разделах «Обработка платы» и «Паяльная маска/паста» диалогового окна «Параметры платы». В разделе «Обработка платы» настраиваются параметры, определяющие свойства покрытия меди, а также указываются некоторые конструктивные особенности, такие как создание периферийных полу-отверстий или нанесение покрытия на кромки платы. В настоящее время данные параметры влияют только на вывод атрибутов платы в составе файлов заданий Gerber.

The Solder Mask/Paste section allow global adjustment of the clearance (positive or negative) between the copper shapes and solder mask / solder paste shapes of pads on the board. These values will be added to any clearance overrides set on individual footprints or pads. Positive clearance values will result in the shape of the solder mask or paste opening being larger than the copper shape. Negative clearance values will result in the opening being smaller than the copper shape.

Most commercial PCB fabricators expect these values to be zero and make their own adjustments to solder mask and paste openings as part of their CAM process. It is usually best to leave these values at their default of zero unless you are making the PCB yourself or have specific advice from your fabricator to use different values.

Настройка параметров по умолчанию для текста и графики

Раздел параметров по умолчанию для текста и графики в диалоговом окне «Параметры платы» может использоваться для настройки параметров нового текста и графических форм, помещаемых на плату.

board setup text and graphics

Толщину линии, размер и внешний вид текста можно настроить для различных категорий слоёв, показанных в диалоговом окне. Также для всех слоёв доступна дополнительная настройка параметров размера объектов. Более подробная информация о свойствах размеров представлена в разделе «Размеры» ниже.

Dashed line appearance is controlled in the Formatting section. Dash length controls the length of dashes, while Gap length controls the spacing between dashes and dots. The dash and gap lengths are relative to the line width: a gap length of 2 means twice the width of the line.

Text replacement variables can be created in the Text Variables section. These variables allow you to substitute the variable name for any text string. This substitution happens anywhere the variable name is used inside the variable replacement syntax of ${VARIABLENAME}.

For example, you could create a variable named VERSION and set the text substitution to 1.0. Now, in any text object on the PCB, you can enter ${VERSION} and KiCad will substitute 1.0. If you change the substitution to 2.0, every text object that includes ${VERSION} will be updated automatically. You can also mix regular text and variables. For example, you can create a text object with the text Version: ${VERSION} which will be substituted as Version: 1.0.

Text variables can also be created in Schematic Setup. Text variables are project-wide; variables created in the schematic editor are also available in the board editor, and vice versa.

There are also a number of built-in system text variables.

Настройка правил проектирования

Правила проектирования управляют поведением интерактивного трассировщика, заливкой зон меди и средством проверки правил проектирования. Правила проектирования можно изменять в любой момент времени, но рекомендуется устанавливать все известные правила проектирования в начале процесса проектирования платы.


Basic design rules are configured in the Constraints section of the Board Setup dialog. Constraints in this section apply to the entire board and should be set to the values recommended by your board manufacturer. Any minimum value set here is an absolute minimum and cannot be overridden with a more specific design rule. For example, if you need the copper clearance on part of a board to be 0.2mm and in the rest 0.3mm, you must enter 0.2mm for the minimum copper clearance in the Constraints section and use a netclass or custom rule to set the larger 0.3mm clearance.

board setup constraints

В дополнение к настройками минимального зазора, здесь могут быть заданы и некоторые другие параметры:

Setting Description

Arc/circle approximated by segments

In some situations, KiCad must use a series of straight line segments to approximate round shapes such as those of arcs and circles. This setting controls the maximum error allowed by this approximation: in other words, the maximum distance between a point on one of these line segments and the true shape of the arc or circle. Setting this to a lower number than the default value of 0.005mm will result in smoother shapes, but can be very slow on larger boards. The default value typically results in arc approximation error that is not detectable in the manufactured board due to manufacturing tolerances.

Allow fillets outside zone outline

Zones can have fillets (rounded corners) added in the Zone Properties dialog. By default, no zone copper, including fillets, is allowed outside the zone outline. This effectively means that inside corners of the zone outline will not be filleted even when a fillet is configured. By enabling this setting, inside corners of the zone outline will be filleted even though this results in copper from the zone extending outside the zone outline.

Min thermal relief spoke count

This sets the minimum acceptable number of thermal relief spokes connecting a pad to a zone. A DRC violation will be generated if this constraint is violated.

Include stackup height in track length calculations

By default, the height of the stackup is used to calculate the additional length of a track that travels through vias from one layer to another. This calculation relies on the board stackup height being correctly configured. In some situations, it is preferable to ignore the height of vias and just calculate the track length assuming that vias add no length. Disabling this setting will exclude via length from track length calculations.

Предустановленные размеры

The pre-defined sizes section allows you to define the track and via dimensions you want to have available while routing tracks. Net classes can be used to define the default dimensions for tracks and vias in different nets (see below) but defining a list of sizes in this section will allow you to step through these sizes while routing. For example, you may want the default track width on a board to be 0.2 mm, but use 0.3 mm for some sections that carry more current, and 0.15 mm for some sections where space is limited. You can define each of these track widths in the Board Setup dialog and then switch between them when routing traces.

board setup predefined sizes
Классы цепей

The Net Classes section allows you to configure routing and clearance rules for different classes of nets. In KiCad, each net is part of exactly one net class. If you do not add a net to a specific class, it will be part of the Default class, which always exists. Net classes may be created and edited in either the Schematic or Board Setup dialogs.

board setup netclasses

The upper portion of the Net Classes section contains a table showing the net classes in the design and the design rules that apply to each net class. Every class has values for copper clearance, track width, via sizes, and differential pair sizes. These values will be used when creating tracks and vias unless a more specific rule overrides them (see Custom Rules below).

No rule may override the minimum values set in the Constraints section of Board Setup. For example, if you set a net class clearance to 0.1 mm, but the Minimum Clearance in the Constraints section is set to 0.2 mm, nets in that class will have a clearance of 0.2 mm.

The track widths and via sizes defined for each net class are used when the track width and via size controls are set to "use netclass values" in the PCB editor. These widths and sizes are considered the default, or optimal, sizes for that netclass. They are not minimum or maximum values. Manually changing the track width or via size to a different value from that defined in the Net Classes section will not result in a DRC violation. To restrict track width or via size to specific values, use Custom Rules.

The lower portion of the Net Classes section lists pattern-based netclass assignments. Working with pattern-based netclass assignments is explained in the Schematic Editor documentation; pattern-based assignments can be edited in either the Board or Schematic Setup windows.

Note that pattern-based assignments can be created directly from the PCB editing canvas by right clicking a copper track or zone and clicking Assign netclass…​. Netclasses can also be assigned in the schematic using netclass directives or labels instead of pattern-based assignments.

Особые правила

The Custom Rules section contains a text editor for creating design rules using the custom rules language. Custom rules are used to create specific design rule checks that are not covered by the basic constraints or net class settings.

Custom rules will only be applied if there are no errors in the custom rules definitions. Use the Check Rule Syntax button to test the definitions and fix any problems before closing Board Setup.

See Custom Design Rules in the Advanced Topics chapter for more information on the custom rules language as well as example rules.

board setup custom rules
Уровни нарушений

The Violation Severity section allows you to configure the severity of each type of design rule check. Each rule may be set to create an error marker, a warning marker, or no marker (ignored).

Individual rule violations may be ignored in the Design Rule Checker. Setting a rule to Ignore in the Violation Severity section will completely disable the corresponding design rule check. Use this setting with caution.
board setup violation severity
Импорт настроек

Часть или все настройки существующей платы могут быть импортированы. Эту методику можно использовать для создания «шаблона» платы с настройкой параметров, которая будет использоваться в нескольких проектах, чтобы в дальнейшем импортировать эти параметры из шаблона платы в каждую новую плату без необходимости ввода параметров вручную.

board setup import settings

To import settings, click the Import Settings from Another Board…​ button at the bottom of the Board Setup dialog and then choose the kicad_pcb file you want to import from. Select which settings you want to import and the current settings will be overwritten with the values from the chosen board.

Изменение печатной платы

Команды размещения и черчения

Placement and drawing tools are located in the right toolbar. When a tool is activated, it stays active until a different tool is selected or the tool is canceled with the Esc key. The selection tool is always activated when any other tool is canceled.

У некоторых кнопок панели инструментов в наборе имеется более одного инструмента. Такие инструменты имеют маленькую стрелочку в нижнем правом углу кнопки: pcbnew palette buttons

To show the palette, you can click and hold the mouse button on the tool or click and drag the mouse. The palette will show the most recently used tool when it is closed.

cursor 24

Selection tool (the default tool).

tool ratsnest 24

Local ratsnest tool: when the board ratsnest is hidden, selecting footprints with this tool will show the ratsnest for the selected footprint only. Selecting the same footprint again will hide its ratsnest. The local ratsnest setting for each footprint will remain in effect even after the local ratsnest tool is no longer active.

module 24

Footprint placement tool: click on the board to open the footprint chooser, then click again after choosing a footprint to confirm its location.

add tracks 24

ps diff pair 24

Route tracks / route differential pairs: These tools activate the interactive router and allow placing tracks and vias. The interactive router is described in more detail in the Routing Tracks section below.

ps tune length 24

ps diff pair tune length 24

ps diff pair tune phase 24

Tune length: These tools allow you to tune the length of single tracks or the length or skew of differential pairs, after they have been routed. See the Routing Tracks section for details.

add via 24

Add vias: allows placing vias without routing tracks.

Vias placed on top of tracks using this tool will take on the net of the closest track segment and will become part of that track (the via net will be updated if the pads connected to the tracks are updated).

Vias placed anywhere else will take on the net of a copper zone at that location, if one exists. These vias will not automatically take on a new net if the net of the copper zone is changed.

add zone 24

Add filled zone: Click to set the start point of a zone, then configure its properties before drawing the rest of the zone outline. Zone properties are described in more detail below.

add keepout area 24

Add rule area: Rule areas, formerly known as keepouts, can restrict the placement of items and the filling of zones and can also define named areas to apply specific custom design rules to.

add line 24

Draw lines.

Note: Lines are graphical objects and are not the same as tracks placed with the Route Tracks tool. Graphical objects cannot be assigned to a net.

add arc 24

Draw arcs: pick the center point of the arc, then the start and end points. By right clicking this button, you can change the arc editing mode between a mode that maintains the existing arc center and a mode that maintains the arc radius.

add rectangle 24

Draw rectangles. Rectangles can be filled or outlines.

add circle 24

Draw circles. Circles can be filled or outlines.

add graphical polygon 24

Draw graphical polygons. Polygons can be filled or outlined.

Note: Filled graphical polygons are not the same as filled zones: graphical polygons cannot be assigned to a net and will not keep clearance from other items.

image 24

Add bitmap image.

text 24

Add text.

text box 24

Add a textbox.

add aligned dimension 24

add orthogonal dimension 24

add center dimension 24

add radial dimension 24

add leader 24

Add dimensions. Dimension types are described in more detail below.

delete cursor 24

Deletion tool: click objects to delete them.

set origin 24

grid select axis 24

Set drill/place origin (used for fabrication outputs) or grid origin.

measurement 24

Interactively measure the distance between two points.


При перемещении, перетаскивании или черчении элементов платы сетка, контактные площадки или другие объекты могут притягивать курсор к своим опорным точка. Такое поведение можно изменить с помощью диалогового окна настроек. В сложных проектах близкое расположение точек притяжения может вызывать затруднения в использовании инструмента. Притягивание курсора как сеткой, так и объектами, можно временно отключать при движении мыши путём нажатия клавиш-модификаторов из следующей таблицы.

Modifier Key Effect


Disable grid snapping.


Disable object snapping.

Изменение свойств объекта

All objects have properties that are editable in a dialog. Use the hotkey E or select Properties from the right-click context menu to edit the properties of selected item(s). You can only open the properties dialog if all the items you have selected are of the same type. To edit the properties of different types of items at one time, see the section below on bulk editing tools.

In properties dialogs, any field that contains a numeric value can also accept a basic math expression that results in a numeric value. For example, a dimension may be entered as 2 * 2mm, resulting in a value of 4mm. Basic arithmetic operators as well as parentheses for defining order of operations are supported.

Действия с посадочными местами

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation. - covers footprint properties, updating from library, etc.

Действия с контактными площадками

The properties of each individual pad of a footprint can be inspected and edited after placing the footprint on the board. In other words, it is possible to override the design of an individual footprint pad in a specific instance of the footprint on the board, if the footprint design in the library is not appropriate. For example, you may wish to remove the solder paste aperture for a pad that needs to remain unsoldered in a specific design, or you may wish to move the location of a through-hole pad for an axial-lead resistor in order to fit a specific design.

By default, the position of all footprint pads are locked, so it is possible to edit the pad properties but not move the pad’s location relative to the rest of the footprint. Pads may be unlocked to allow free movement, which can be useful for certain applications (such as through-hole footprints with varying lead positions) but is generally never recommended for surface-mount footprints.

The pad properties dialog is opened through the context menu or default hotkey E when a pad is selected. Note that KiCad assumes that if you click near a pad, you are probably trying to select the entire footprint rather than a single pad. To select a single pad, make sure to click inside the pad area, or turn off the Footprints setting in the selection filter (and make sure the Pads setting is turned on) to prevent accidental selection of the entire footprint rather than a specific pad.

pad properties general

The General tab of the pad properties dialog shows the physical properties of the pad, including its geometry, shape, and layer settings.

Pad type: this setting controls which features are enabled for the pad:

SMD pads are electrically-connected and have no hole. In other words, they exist on a single copper layer.

Through-hole pads are electrically-connected and have a plated hole. The hole exists on every layer, and the copper pad exists on multiple layers (see Copper layers setting below).

Edge Connector pads are SMD pads that are allowed to overlap the board outline on the Edge.Cuts layer.

NPTH, Mechanical pads are non-plated through holes that do not have an electrical connection.

SMD Aperture pads are pads that have no hole and no electrical connection. These can be used to add specific designs to a technical layer, for example a paste or solder mask aperture.

The Copper layers setting controls which copper layers will have a shape associated with the pad.

For SMD pads, the options are F.Cu or B.Cu, controlling whether the pad sits on the front or the back of the board relative to the footprint’s location. In other words, if a pad is set to exist on B.Cu in its properties, and the footprint is flipped to the back of the board, that pad will now exist on F.Cu, because it also has been flipped.

For through-hole pads, it is possible to remove the pad shape from copper layers where the pad is not electrically connected to other copper (tracks or filled zones). Setting the copper layers to connected layers only will remove the pad shape from any unconnected layers, and setting to F.Cu, B.Cu, and connected layers will remove the pad shape from any internal unconnected layers. This can be useful in dense board designs to increase the routable area on internal layers.

The Technical layers checkboxes control which technical layers will have an aperture added with the pad’s shape. By default, pads have apertures on the paste and mask layers matching their copper layer.

It is not possible to define a different pad shape or size on different copper layers in the current version of KiCad.

Specify pad to die length: This setting allows a length to be associated with this pad that will be added to the routed track length by the track length tuning tools and the Net Inspector. This can be used to specify internal bondwire lengths for more accurate length matching, or in other situations where the electrical length of a net is longer than the length of the routed tracks on the board.

pad properties overrides

The aperture appearing on any technical layer will have the same shape and size as the pad shape on the copper layer(s). In the PCB manufacturing process, the manufacturer will often change the relative size of mask and paste apertures relative to the copper pad size, but since this size change is specific to a manufacturing process, most manufacturers expect the design data to be provided with the apertures set to the same size as the copper pads. For specific situations where you need to oversize or undersize a technical layer aperture in the design data, you can use the settings in the Overrides tab.

Pad clearance controls the minimum clearance between the pad and any copper shape (tracks, vias, pads, zones) on a different net. This value is normally set to 0 which will cause the pad clearance to be inherited from any clearance override set on the footprint, or the board’s design rules and netclass rules if the footprint clearance is also set to 0.

Solder mask clearance controls the size difference between the pad shape and the aperture shape on the F.Mask and B.Mask layers. A positive number means the solder mask aperture will be larger than the copper shape. This number is an inflation applied to all directions. For example, a value of 0.1mm here will cause the solder mask aperture to be inflated by 0.1mm, meaning that there will be an 0.1mm border on all sides of the pad and the solder mask opening will be 0.2mm wider than the pad when measured along a given axis.

Solder paste absolute clearance controls the size difference between the pad shape and the aperture shape on the F.Paste and B.Paste layers. Its behavior is otherwise identical to the behavior of the solder mask clearance setting.

Solder paste relative clearance allows setting a solder paste clearance value as a percentage of the pad size rather than an absolute distance value. If both relative and absolute clearances are specified, they are added together to determine the solder paste aperture size.

The Overrides tab also has controls for how the pad connects to any copper zone that overlaps it and shares its net.

Pad connection controls whether the pad will have a solid, thermal relief, or no connection to the zone. Like the other overrides, this one may be set for an individual pad or for an entire footprint. The default setting for this control is From parent footprint, and the default footprint setting is to use the connection mode specified in the zone properties.

Thermal relief spoke width controls the width of the spokes generated when the zone connection mode is Thermal Relief.

Thermal relief gap controls the length of the thermal spokes, or the gap between the pad’s shape and the filled copper area of the zone.

Custom pad shape in zone controls the behavior of the zone filler when the pad uses a custom shape rather than one of the default shapes. This can be used to achieve different results when using thermal reliefs and custom pad shapes.

Действия с зонами

Copper zones, also sometimes called copper pours or fills by other EDA tools, are solid or hatched areas of copper assigned to a particular net that automatically keep clearance from other copper objects. Zones are commonly used to fill in all free space on a board layer (or a portion of a layer) in order to create ground and power planes, carry high currents, or to provide shielding.

Some EDA tools have separate tools for creating "plane layers" and for creating copper zones on signal layers. In KiCad, the Copper Zone tool is used for both these applications.

Zones are defined by a polygonal outline that defines the maximum extent of the filled copper area. This outline does not represent physical copper and will not appear in exported manufacturing data. The actual copper areas of the zone must be filled each time the outline, or any objects inside the outline, are modified. The filling process may be run on a single zone, or on all zones in a board (default hotkey B). Zones may be unfilled (default hotkey Ctrl+B) to improve performance and reduce visual clutter while editing large boards.

Zone filling is a manual process rather than occurring every time an object changes that would result in a change to the zone copper. This is because zone filling can be a slow process on older computers or very large designs. It is important to make sure zone fills are up-to-date before generating outputs. KiCad will check that zones have been updated and warn you before generating outputs or running DRC when zones have not yet been refilled.

To draw a zone, click the Add Filled Zone tool (add zone 24) on the right toolbar, or use default hotkey Ctrl+Shift+Z. Click to choose the first point of the zone outline. The Zone Properties dialog will appear, allowing you to choose the zone net and other properties. These properties may be edited at any time, so it is not critical to choose them all correctly at first. Accept the dialog and continue placing points to define the zone outline. To finish the zone, double-click to set the last point. Zone outline points may be modified like graphic polygons, by dragging the square handles to move a corner or dragging the circular handles to move an edge. To edit the zone’s properties, use hotkey E or select Properties from the context menu.

zone properties

Layer: A single zone object can create filled copper on one or more copper layers. Check the box next to each copper layer that this zone outline should fill on. The copper on each layer will be filled independently, but all layers will share the same net.

Net: Select the electrical net that the zone copper should be connected to. It is possible to create zones with no net assignment. Zones with no net will keep clearance from any copper objects on any net.

Zone name can be used to assign a specific name to a zone. This name can be used to refer to the zone in custom DRC rules.

Zone priority level determines the order in which multiple zones on a single layer are filled. The highest priority level zone on a given layer will be filled first. Lower-priority zones will keep clearance to the filled areas of higher-priority zones. Two zones on the same layer with the same priority level will overlap (short-circuit) with each other.

Zones with the same priority level will never keep clearance from each other, even if they are assigned to different nets! The design rule checker will report these short-circuits, but they will not be prevented by the zone filler.

Constrain outline to H, V and 45 degrees controls the initial behavior of the zone outline drawing tool. When this option is enabled, the zone outline will be restricted to 45-degree angles. Note that after the zone outline has been created, this option has no effect. Outline points may be modified freely after creation.

Locked controls whether or not the zone outline object is locked. Locked objects may not be manipulated or moved, and cannot be selected unless the Locked Items option is enabled in the Selection Filter panel.

Outline display controls how the zone outline is drawn on screen. In Line mode, only the border lines of the outline are drawn. In Hatched mode, hatch lines are drawn on the inside of the outline border for a short distance, to make the zone outline more apparent. In Fully Hatched mode, hatch lines are drawn across the entire inside of the zone outline.

Corner smoothing controls the behavior of the filled copper areas at corners of the outline. Corners can be smoothed by a chamfer or fillet, or can extend all the way to the outline corner if smoothing is disabled.

By default, chamfers and fillets are not added to inside corners of the zone outline, because this would result in filled copper extending outside the outline. If smooth inside corners are desired, enable the Allow fillets outside zone outline option in the Constraints section of the Board Setup dialog.

Clearance controls the minimum clearance the filled areas of this zone will keep from other copper objects. Note that if two clearance values are in conflict, the larger clearance value will be used. For example, if a zone is set to use 0.2mm clearance but its netclass is set to use 0.3mm clearance, the result will be an 0.3mm clearance.

Minimum width controls the minimum size of narrow necks of copper created inside the zone. Any copper areas that would be below this minimum width are removed during the filling process.

Pad connection controls the way that the filled zone areas will connect to footprint pads on the same net. Solid connections will result in the copper completely overlapping the pads. Thermal reliefs will result in small copper spokes connecting the pad to the rest of the copper zone, increasing the thermal resistance between the pad and the rest of the zone. This can be useful for hand soldering. Reliefs for PTH will apply thermal reliefs to plated through-hole pads and use solid connections for surface mount pads. None will result in the zone not connecting to any pads on the same net.

Thermal relief gap controls the distance maintained between any pad and the copper zone when the pad connection mode is set to generate thermal reliefs.

Thermal spoke width controls the width of the "spokes", or short copper segments connecting the pad to the rest of the copper zone.

Fill type controls how the copper zone is filled: the default is solid fill, which will result in copper filling in all available space within the zone outline. The zone can also be set to fill a hatch pattern, which will fill the area with a pattern that contains less copper. This can be useful for flexible printed circuits and other specialty applications.

Orientation controls the angle of the hatch pattern lines. An orientation of 0 degrees will result in the hatch pattern using horizontal and vertical lines.

Hatch width controls the width of each line in the hatch pattern.

Hatch gap controls the distance between each line in the hatch pattern.

Smoothing effort controls the style of smoothing applied to the hatch pattern. A value of 0 will result in no smoothing, and a value of 3 will result in the finest smoothing. Higher values will result in longer processing time and larger Gerber files.

Smoothing amount is a ratio that controls the size of the smoothing chamfers or fillets that are generated when smoothing effort is set to a value other than 0. An amount of 0.0 results in no smoothing, and a value of 1.0 results in maximum smoothing (in other words, a chamfer or fillet equal to half of the hatch gap).

Remove islands controls the behavior of isolated copper areas, also called islands, after the initial zone fill. When this is set to always, isolated areas inside the zone are removed. When set to never, isolated areas are left alone, and will result in copper areas that are not connected to the rest of the net. When set to below area limit, a minimum island size can be specified, and islands below this threshold will be removed.

Regardless of the remove islands setting, islands are never removed from zones that are electrically unconnected. In other words, islands are only removed from zones that have at least one electrical connection.

Графические объекты

Графические объекты (линии, дуги, прямоугольники, окружности, полигоны и текст) могут существовать на любом слое, но не могут быть привязаны к цепи. Для прямоугольников, окружностей и полигонов в диалоговом окне свойств можно задать отображение в виде контура или с заполнением. Свойство толщины линии задаёт толщину линии контура даже для заполненных фигур. Чтобы отключить отображение контура у заполненных фигур, толщина линии должна быть установлена в значение 0.

Creating graphical shapes

The right toolbar can be used to create lines (add line 24, default hotkey Ctrl+Shift+L), arcs (add arc 24, default hotkey Ctrl+Shift+A), rectangles (add rectangle 24), circles (add circle 24, default hotkey Ctrl+Shift+C), and polygons (add graphical polygon 24, default hotkey Ctrl+Shift+P).

Rectangles, circles, and polygons can be filled shapes or outlines. The line width option controls the width of the outline. The outline width extends on both sides of the "ideal" shape of the graphic object. For example, a graphic circle that is defined to have 2mm radius and 0.2mm line width will consist of a torus with an outer radius of 2.2mm and inner radius of 1.8mm. If the filled shape option is enabled and the line width is set to 0, the shape will be a filled circle with 2mm radius.

graphic shape properties

Arcs have two editing modes, which are selectable in PreferencesPCB EditorEditing Options or by right clicking the add arc 24 button on the right toolbar. The first mode (keep arc center, adjust radius) maintains the position of the arc center as as the arc endpoints or midpoint are dragged, changing the radius as necessary. The second mode (keep arc endpoints or direction of starting point) maintains the position of the arc endpoints and the arc’s direction of curvature as the midpoint or center are dragged.

Creating text objects

Graphical text may be placed by using the (text 24) icon in the right toolbar or by keyboard shortcut Ctrl+Shift+T. Click to place the text origin, and then edit the text and its properties in the dialog that will appear:

text properties dialog

Text may be placed on any layer, but note that text on copper layers cannot be associated with a net and cannot form connections to tracks or pads. Copper zones will fill around the rectangular bounding box of text objects.

Text supports markup for superscripts, subscripts, overbars, evaluating project variables, and accessing symbol field values.

Feature Markup Syntax Result













Symbol Fields


field_value of symbol refdes

Variables must be defined in Board Setup before they can be used. There are also a number of built-in text variables.

Контур платы

KiCad uses graphical objects on the Edge.Cuts layer to define the board outline. The outline must be a continuous (closed) shape, but can be made up of different types of graphical object such as lines and arcs, or be a single object such as a rectangle or polygon. If no board outline is defined, or the board outline is invalid, some functions such as the 3D viewer and some design rule checks will not be functional.

Bulk editing text and graphics

Properties of text and graphics can be edited in bulk using the Edit Text and Graphic Properties dialog (ToolsEdit Text and Graphic Properties…​).

pcbnew edit text and graphics properties
Scope and Filters

Scope settings restrict the tool to editing only certain types of objects. If no scopes are selected, nothing will be edited.

Filters restrict the tool to editing particular objects in the selected scope. Objects will only be modified if they match all enabled and relevant filters (some filters do not apply to certain types of objects. For example, parent footprint filters do not apply to graphic items and are ignored for the purpose of changing graphic properties). If no filters are enabled, all objects in the selected scope will be modified. For filters with a text box, wildcards are supported: * matches any characters, and ? matches any single character.

Filter items by layer filters to items on the specified board layer.

Filter other symbol fields by name filters to the specified symbol field.

Filter items by parent reference designator filters to fields in the footprint with the specified reference designator. Filter items by parent footprint library id filters to fields in footprint with the specified library identifier.

Only include selected items filters to the current selection.


Properties for filtered objects can be set to new values in the bottom part of the dialog. Properties can be set to arbitrary values by selecting set to specified values or reset to their layer’s default value by selecting set to layer default values.

Drop-down lists and text boxes can be set to -- leave unchanged -- to preserve existing values. Checkboxes can be checked or unchecked to enable or disable a change, but can also be toggled to a third "leave unchanged" state.

All items can have their layer set.

Graphic items can have their line thickness modified.

Text properties that can be modified are font, text width, text height, text thickness (KiCad font only), emphasis (bold and italic), and orientation (keep upright). Footprint text can also have its visibility set.


Dimensions are graphical objects used to show a measurement or other marking on a board design. They may be added on any drawing layer, but are normally added to one of the User layers. KiCad currently supports five different types of dimension: aligned, orthogonal, center, radial, and leader.

Aligned dimensions (add aligned dimension 24) show a measurement of distance between two points. The measurement axis is the line that connects those two points, and the dimension graphics are kept parallel to that axis.

Orthogonal dimensions (add orthogonal dimension 24) also measure the distance between two points, but the measurement axis is either the X or Y axis. In other words, these dimensions show the horizontal or vertical component of the distance between two points. When creating orthogonal dimensions, you can select which axis to use as the measurement axis based on where you place the dimension after selecting the two points to measure.

Center dimensions (add center dimension 24) create a cross mark to indicate a point or the center of a circle or arc.

Radial dimensions (add radial dimension 24) show a measurement between a center point and the outside of a circle or arc. The center point is indicated by a cross.

Leader dimensions (add leader 24) create an arrow with a leader line connected to a text field. This text field can contain any text, and an optional circular or rectangular frame around the text. This type of dimension is often used to call attention to parts of the design for reference in fabrication notes.


After creating a dimension, its properties may be edited (hotkey E) to change the format of the displayed number and the style of the text and graphic lines.

You may customize the default style of newly-created dimension objects in the Text & Graphics Defaults section of the Board Setup dialog.
dimensions dialog

Dimension format options

Override value: When enabled, you may enter a measurement value directly into the Value field that will be used instead of the actual measured value.

Prefix: Any text entered here will be shown before the measurement value.

Suffix: Any text entered here will be shown after the measurement value.

Layer: Selects which layer the dimension object exists on.

Units: Selects which units to display the measured value in. Automatic units will result in the dimension units changing when the display units of the board editor are changed.

Units format: Select from several built-in styles of unit display.

Precision: Select how many digits of precision to display.

Dimension text options

Most of the dimension text options are identical to those options available for other graphical text objects (see the Graphical Objects section above). Some specific options for dimension text are also available:

Position mode: Choose whether to position the dimension text manually, or to automatically keep it aligned with the dimension measurement lines.

Keep aligned with dimension: When enabled, the orientation of the dimension text will be adjusted automatically to keep the text parallel with the measurement axis.

Dimension line options

Line thickness: Sets the thickness of the graphical lines that make up a dimension’s shape.

Extension line offset: Sets the distance from the measurement point to the start of the extension lines.

Arrow length: Sets the length of the arrow segments of the dimension’s shape.

Leader options

dimensions leader

Value: Enter the text to show at the end of the leader line.

Text frame: Select the desired border around the text (circle, rectangle, or none).

Трассировка дорожек

KiCad features an interactive router that:

  • Allows manual or guided (semi-automatic) routing of single tracks and differential pairs.

  • Enables modifications of existing designs by:

    • Re-routing existing tracks when they are dragged

    • Re-routing tracks attached to footprint pads when the footprint is dragged

  • Allows tuning of track lengths and differential pair skew (phase) by inserting serpentine
    tuning shapes for designs with tight timing requirements

By default, the router respects the configured design rules when placing tracks: the size (width) of new tracks will be taken from the design rules and the router will respect the copper clearance set in the design rules when determining where new tracks and vias can be placed. It is possible to disable this behavior if desired by using the Highlight Collisions router mode and turning on the Allow DRC Violations option in the router settings (see below).

The router has three modes that can be selected at any time. The router mode is used for routing new tracks, but also when dragging existing tracks using the Drag (hotkey D) command. These modes are:

  • Highlight Collisions: in this mode, most of the router features are disabled and routing is fully manual. When routing, collisions (clearance violations) will be highlighted in green and the newly-routed tracks cannot be fixed in place if there is a collision unless the Allow DRC Violations option is turned on. In this mode, up to two track segments may be placed at a time (for example, one horizontal and one diagonal segment).

  • Расталкивать: в этом режиме трассируемая дорожка обходит препятствия, которые нельзя переместить (например, контактные площадки и заблокированные дорожки/переходные отверстия), и расталкивает препятствия, перемещение которых возможно. В этом режиме трассировщик предупреждает появление нарушений DRC: если трассировка без нарушения DRC до места расположения курсора невозможна, новая дорожка не создаётся.

  • Обходить препятствия: в этом режиме поведение трассировщика соответствует режиму «Расталкивать», с тем единственным отличием, что препятствия не смещаются.

Which mode to use is a matter of preference. For most users, we recommend using Shove mode for the most efficient routing experience or Walk Around mode if you do not want the router to modify tracks that are not being routed. Note that Shove and Walk Around modes always create horizontal, vertical, and 45-degree (H/V/45) track segments. If you need to route tracks with angles other than H/V/45, you must use Highlight Collisions mode and enable the Free Angle Mode option in the Interactive Router Settings dialog.

There are five main routing functions: Route Single Track, Route Differential Pair, Tune length of a single track, Tune length of a differential pair, and Tune skew of a differential pair. All of these are present in both the Route menu dropdown (individually) on the top toolbar and the drawing toolbar in two overloaded icons on the drawing toolbar on the right. The use of the overloaded icons is described above. One is for the two Route functions and one is for the three Tune functions. In addition, the Route menu allows the selection of Set Layer Pair and Interactive Router Settings.

To route tracks, click the Route Tracks add tracks 24 icon (from the drawing toolbar or from the top toolbar under Route) or use the hotkey X. Click on a starting location to select which net to route and begin routing. The net being routed will automatically be highlighted and the allowable clearance for the net will be indicated with a gray outline around the tracks being routed. The clearance outline can be disabled by changing the Clearance Outlines setting in the Display Options section of the Preferences dialog.

Контур зазора показывает максимальный зазор от размещаемой цепи до любого другого медного объекта на плате. С помощью особых правил проектирования для цепи можно указать другие зазоры до различных объектов. Трассировщик будет соблюдать эти зазоры, но визуально отображаться будет только самый большой зазор.

При использовании трассировщика, новые сегменты дорожки отображаются от точки начала трассировки до курсора редактора. Такие дорожки представляют собой незафиксированные временные объекты для отображения дорожек, которые будут созданы при нажатии левой клавиши мыши или клавиши Enter для фиксации дорожки. Незафиксированные сегменты дорожки показаны более ярким цветом,чем зафиксированные. При выходе из трассировщика с помощью клавиши Esc, либо при выборе другого инструмента, будут сохранены только зафиксированные сегменты дорожки. Команда «Завершить дорожку» (клавиша End) выполняет фиксацию всех дорожек и выход из трассировщика.

При выполнении трассировки можно использовать команду «Отменить последний сегмент» (клавиша kbd: [Backspace]) для отмены фиксации самых последних дорожек. Эта команда может быть использована несколько раз подряд для перехода назад по уже зафиксированной дорожке.

In previous versions of KiCad, using the left mouse button or Enter to fix the routed segments would fix all segments up to but not including the segment ending at the mouse cursor location. In KiCad 6, this behavior is now optional, and by default, all segments including the one ending at the mouse cursor location will be fixed. The old behavior can be restored by disabling the "Fix all segments on click" option in the Interactive Router Settings dialog.

При выполнении трассировки удержание клавиши Ctrl приводит к отключению привязки к сетке, а удержание клавиши Shift — к отключению привязки к объектам, таким как контактные площадки и переходные отверстия.

Привязку к объектам также можно отменить путём отключения параметра «Притягивание к точкам» в разделе «Параметры редактирования» диалогового окна «Настройки». При этом в большинстве случаев рекомендуется оставлять привязку к объектам включённой, чтобы случайно не сместить дорожку от центра контактной площадки или переходного отверстия.

Наклон дорожки

При выполнении трассировки в режиме H/V/45°, наклон относится к варианту соединения двух точек двумя сегментами дорожки, если их нельзя соединить одним сегментом H/V/45°, когда точки соединяются одним горизонтальным или вертикальным сегментом, либо одним диагональным сегментом (45°). Наклон относится к порядку следования этих сегментов: будет ли первый из них размещаться по горизонтали, по вертикали или по диагонали.

pcbnew posture a pcbnew posture b

Трассировщик KiCad пытается автоматически подобрать наилучший наклон, с учётом нескольких факторов. Как правило, предпринимается попытка минимизировать число углов на дорожке, а также по возможности устраняются углы «неправильной» формы, например, острые углы. При выполнении трассировки к контактной площадке или от неё KiCad выбирает наклон линий, соответствующий дорожке с самым длинным контуром контактной площадки.

В некоторых случаях, KiCad не может предложить правильный наклон дорожки. В такой ситуации для переключения наклона дорожки в процессе трассировки используйте команду «Переключить наклон дорожки» (клавиша /).

В ситуациях, когда невозможно предложить «наилучший» вариант наклона (например, когда дорожка начинается от переходного отверстия), для выбора наклона в KiCad будет использоваться направление перемещения курсора мыши. Если дорожка должна начинаться с прямого (горизонтального или вертикального) сегмента, необходимо переместить мышь в сторону от начала дорожки преимущественно в горизонтальном или вертикальном направлении. Если же дорожка должна начинаться по диагонали, переместите мышь по диагонали. Как только курсор будет перемещён на достаточное расстояние от места начала дорожки, наклон «блокируется» и в дальнейшем уже не изменяется, если не переместить курсор обратно к начальной позиции. Обнаружение наклона по движению курсора мыши можно отменить в диалоговом окне «Настройки интерактивного трассировщика» согласно описанию ниже.

Если для переопределения выбранного в KiCad наклона используется команда «Переключить наклон дорожки», автоматическое обнаружение наклона по перемещению мышиотключается на оставшееся время текущей трассировки.

Режим углов дорожек

Трассировщик KiCad может размещать дорожки с прямоугольными или закруглёнными углами (дугами) при трассировке в режиме H/V/45. Для переключения между применением прямоугольных или закруглённых углов необходимо использовать команду «Режим углов дорожек» (клавиша Ctrl+/). При выполнении трассировки с закруглёнными углами за каждый шаг трассировки будет размещаться прямой сегмент, дуга или прямой сегмент и дуга вместе. Наклон дорожки определяет размещение дуги или прямого сегмента, в качестве первого элемента.

Углы дорожек можно скруглить и после трассировки с помощью команды «Скруглить дорожки» после выделения соответствующей дорожки.

Перетаскивание дорожек с дугами в настоящее время не поддерживается. При перетаскивании или смещении дорожек трассировщиком в режиме «Расталкивать» дуги снова преобразуются в прямоугольные углы .

Ширина дорожек

The width of the track being routed is determined in one of three ways: if the routing start point is the end of an existing track and the auto track width button on the top toolbar is enabled, the width will be set to the width of the existing track. Otherwise, if the track width dropdown in the top toolbar is set to "use netclass width", the width will be taken from the netclass of the net being routed (or from any custom design rules that specify a different width for the net, such as inside a neckdown area). Finally, if the track width dropdown is set to one of the pre-defined track sizes configured in the Board Setup dialog, this width will be used.

Ширина дорожки не может быть меньше минимальной ширины дорожки, указанной в разделе «Ограничения» диалогового окна «Настройка платы». Если добавить предопределённую ширину с размером меньше этого минимального ограничения, то вместо него будет установлено значение минимального ограничения.

KiCad’s router supports a single track width for the active route. In other words, to change widths in the middle of a track, you must end the route and then restart a new route from the end of the previous route. To change the width of the active route, use the hotkeys W and Shift+W to step through the track widths configured in the Board Setup dialog.

Размещение переходных отверстий

While routing tracks, switching layers will insert a through via at the end of the current (unfixed) track. Once you place the via, routing will continue on the new layer. There are several ways to select a new layer and insert a via:

  • С помощью клавиш быстрого доступа для выбора конкретного слоя, например PgUp для выбора F.Cu или PgDn для выбора B.Cu.

  • С помощью клавиш быстрого доступа «следующий слой» или «предыдущий слой» (+ и -).

  • С помощью клавиши быстрого доступа «Разместить перех.отв.» (V), которая выполняет переключение на следующий слой активной пары слоёв.

  • С помощью команды «Выбрать слой и разместить перех.отв.» (клавиша <), которая открывает диалоговое окно для выбора целевого слоя.

Размер переходного отверстия будет взят из действующего параметра «Размер перех.отв.», определяемого в раскрывающемся списке на верхней панели инструментов или с помощью клавиш быстрого доступа «Увеличить размер перех.отв.» (') и «Уменьшить размер перех.отв.» (\). Аналогично размеру ширины дорожки, если в качестве размера переходного отверстия в раскрывающемся меню задано значение «размер из класса цепей», то размеры переходного отверстия будут взяты из раздела «Классы цепей» диалогового окна «Настройка платы» (если они не были переопределены особыми правилами проектирования).

If microvias or blind/buried vias are enabled in the Constraints section of the Board Setup dialog, these vias can be placed while routing. Use the hotkey Ctrl+V to place a microvia and Alt+Shift+V to place a blind/buried via. Microvias may only be placed such that they connect one of the outer copper layers to an adjacent layer. Blind/buried vias may be placed on any layer.

Vias placed by the router are considered to be part of a routed track. This means that the via net can be updated automatically (just like track nets can), for example when updating the PCB from the schematic changes the net name of the track. In some cases this may not be desired, such as when creating stitching vias. The automatic update of via nets can be disabled for specific vias by turning off the "automatically update via nets" checkbox in the via properties dialog. Vias placed with the Add Free-standing Vias tool are created with this setting disabled.

Трассировка дифференциальных пар

Differential pairs in KiCad are defined as nets with a common base name and a positive and negative suffix. KiCad supports using + and -, or P and N as the suffix. For example, the nets USB+ and USB- form a differential pair, as do the nets USB_P and USB_N. In the first example, the base name is USB, and USB_ in the second. The suffix styles cannot be mixed: the nets USB+ and USB_N do not form a differential pair. Make sure you name your differential pair nets accordingly in the schematic in order to allow use of the differential pair router in the PCB editor.

To route a differential pair, click the Route Differential Pairs ps diff pair 24 icon (from the drawing toolbar or from the top toolbar under Route) or use the hotkey 6. Click on a pad, via, or the end of an existing differential pair track to start routing. You can start routing from either the positive or negative net of a differential pair.

В настоящий момент невозможно начать трассировку дифференциальной пары с середины существующей дорожки дифференциальной пары.

Трассировщик дифференциальной пары будет пытаться проложитьпару дорожек с зазором, взятым из правил проектирования (зазор дифференциальной пары можно настроить в разделе «Классы цепей» диалогового окна «Настройка платы» или с помощью особых правил проектирования). Если промежуточное расстояние в начальной или конечной точке маршрута отличается от установленного зазора, трассировщик создаёт короткий участок «отвода» для минимизации длины дорожки, на котором дифференциальная пара не будет иметь взаимной связи.

При переключении слоёв или при использовании команды «Разместить перех.отв.» (V) трассировщик дифференциальной пары создаёт поблизости друг от друга два переходных отверстия. Эти переходные отверстия размещаются как можно ближе друг к другу с учётом правил проектирования для зазоров между медными объектами и отверстиями.

Изменение дорожек

After tracks have been routed, they can be modified by moving or dragging, or deleted and re-routed. When a single track segment is selected, the hotkey U can be used to expand the selection to all connected track segments. The first press of U will select track segments between the nearest junctions with pads or vias. The second press of U will expand the selection again to include all track segments connected to the selected track on all layers. Selecting tracks with this technique can be used to quickly delete an entire routed net.

Существует две различных команды перетаскивания, которые можно использовать для изменения сегмента дорожки. Команда «Перетащить (режим 45°)», клавиша быстрого доступа D, используется для перетаскивания дорожек с помощью трассировщика. Использование трассировщика с этой командой в режиме «Расталкивать» приведёт к расталкиванию ближайших дорожек. Если установлен режим трассировщика «Обходить препятствия», перетаскивание с использованием этой команды будет обходить препятствия или останавливаться перед ними. Команда «Перетащить (свободный угол)», клавиша быстрого доступа G, используется для деления сегмента дорожки на две части и перетаскивания нового угла в новое место. Поведение команды «Перетащить (свободный угол)» полностью совпадает с режимом трассировщика «Подсвечивать препятствия»: вместо обхода или расталкивания препятствий, выполняется их подсвечивание.

Перетаскивание дорожек, содержащих дуги, в настоящее время не поддерживается. Попытка перетаскивания таких дорожек в некоторых случаях приводит к удалению дуг. Существует возможность изменения размера конкретной дуги, для чего её необходимо выделить и использовать команду (D). При изменении размера дуги с помощью этой команды проверка на ошибки DRC не выполняется.

The Move command (hotkey M) can also be used on track segments. This command will pick up the selected track segments, ignoring any attached track segments or vias that are not selected. No DRC checking is done when moving tracks using the Move command.

It is possible to re-route tracks attached to footprints while moving the footprints. To do so, use the drag command (D) with a footprint selected. Any tracks that end at one of the footprint’s pads will be dragged along with the footprint. This feature has some limitations: it only operates in Highlight Collisions mode, so the tracks attached to footprints will not walk around obstacles or shove nearby tracks out of the way. Additionally, only tracks that end at the origin of the footprint’s pads will be dragged. Tracks that simply pass through the pad or that end on the pad at a location other than the origin will not be dragged.

Имеется возможность изменения ширины дорожек и размера переходных отверстий без проведения их повторной трассировки с помощью диалогового окна «Параметры дорожек и перех.отв.». Более подробная информация изложена в разделе по средствам множественного редактирования ниже.

Настройка длины дорожек

The length tuning tools can be used to add serpentine tuning shapes to tracks after routing. To tune the length of a track, first pick the appropriate length tuning tool. The single track tuning tool (icon ps tune length 24 or hotkey 7) will add serpentine shapes to bring the length of a single track up to the target value. The differential pair tuning tool (icon ps diff pair tune length 24 or hotkey 8) will do the same for a differential pair. The differential pair skew tuning tool (icon ps diff pair tune phase 24 or hotkey 9) will add length to the shorter member of a differential pair in order to eliminate skew (phase difference) between the positive and negative sides of the pair. As with the Routing icons, the Tuning icons are found in both the Route menu dropdown from the top toolbar and the drawing toolbar on the right.

Чтобы выбрать целевую длину для средства настройки длины, откройте диалоговое окно «Параметры подстройки длины» из контекстного меню или с помощью комбинации клавиш Ctrl+L после включения средства настройки длины:

Pcbnew drill origin setting

Это диалоговое окно может использоваться в том числе и для настройки размера, формы и плотности расположения зигзагов.

After configuring the target length, click a track in the area that you wish to start placing meander shapes. Move the mouse cursor along the track, and meander shapes will be added. A status window will appear next to the cursor showing the current length of the track and the target length. Click again to finish placing the current meander. Multiple meanders can be placed on the same track if desired.

Средства настройки длины поддерживают подстройку длины только для двухточечных цепей между двумя контактными площадками. Настройка длины цепей с другими топологиями пока не поддерживается.

Настройки интерактивного трассировщика

Настройки интерактивного трассировщика можно открыть через меню «Трассировка» или щелчком правой клавиши мыши по кнопке «Трассировать дорожки» на панели инструментов. Эти настройки регулируют поведение трассировщика в процессе трассировки, а также во время перетаскивания существующих дорожек.

pcbnew interactive router settings
Setting Description


Sets the operating mode of the router for creating new tracks and dragging existing tracks. See above for more information.

Free angle mode

Allows routing tracks at any angle, instead of just at 45-degree increments. This option is only available if the router mode is set to Highlight collisions.

Jump over obstacles

In Shove mode, allows the router to attempt to move colliding tracks behind solid obstacles (such as pads).

Remove redundant tracks

Automatically removes loops created in the currently-routed track, keeping only the most recently routed section of the loop.

Optimize pad connections

When this setting is enabled, the router attempts to avoid acute angles and other undesirable routing when exiting pads and vias.

Smooth dragged segments

When dragging tracks, attempts to combine track segments together to minimize direction changes.

Allow DRC violations

In Highlight collisions mode, allows placing tracks and vias that violate DRC rules. It has no effect in other modes.

Optimize entire track being dragged

When enabled, dragging a track segment will result in KiCad optimizing the rest of the track that is visible on the screen. The optimization process removes unnecessary corners, avoids acute angles, and generally tries to find the shortest path for the track. When disabled, no optimizations are performed to the track outside of the immediate section being dragged.

Use mouse path to set track posture

Attempts to pick the track posture based on the mouse path from the routing start location.

Fix all segments on click

When enabled, clicking while routing will fix the position of all the track segments that have been routed, including the segment that ends at the mouse cursor. A new segment will be started from the mouse cursor location. When disabled, the last segment (the one that ends at the mouse cursor) will not be fixed in place and can be adjusted by further mouse movement.

Обозначение в прямой и обратной последовательности

Update PCB From Schematic (forward annotation)

Use the Update PCB from Schematic tool to sync design information from the Schematic Editor to the Board Editor. The tool can be accessed with ToolsUpdate PCB from Schematic (F8) in both the schematic and board editors. You can also use the Update PCB from Schematic icon icon in the top toolbar of the Board Editor. This process is often called forward annotation.

Update PCB from Schematic is the preferred way to transfer design information from the schematic to the PCB. In older versions of KiCad, the equivalent process was to export a netlist from the Schematic Editor and import it into the Board Editor. It is no longer necessary to use a netlist file.
Обновить печатную плату на основе схемы

The tool adds the footprint for each symbol to the board and transfers updated schematic information to the board. In particular, the board’s net connections are updated to match the schematic.

The changes that will be made to the PCB are listed in the Changes To Be Applied pane. The PCB is not modified until you click the Update PCB button.

You can show or hide different types of messages using the checkboxes at the bottom of the window. A report of the changes can be saved to a file using the Save…​ button.


The tool has several options to control its behavior.

Option Description

Re-link footprints to schematic symbols based on their reference designators

Footprints are normally linked to schematic symbols via a unique identifier created when the symbol is added to the schematic. A symbol’s unique identifier cannot be changed.

If checked, each footprint in the PCB will be re-linked to the symbol that has the same reference designator as the footprint.

If unchecked, footprints and symbols will be linked by unique identifier as usual, rather than by reference designator. Each footprint’s reference designator will be updated to match the reference designator of its linked symbol.

This option should generally be left unchecked. It is useful for specific workflows that rely on changing the links between schematic symbols and footprints, such as refactoring a schematic for easier layout or replicating layout between identical channels of a design.

Delete footprints with no symbols

If checked, any footprint in the PCB without a corresponding symbol in the schematic will be deleted from the PCB. Footprints with the "Not in schematic" attribute will be unaffected.

If unchecked, footprints without a corresponding symbol will not be deleted.

Replace footprints with those specified in the schematic

If checked, footprints in the PCB will be replaced with the footprint that is specified in the corresponding schematic symbol.

If unchecked, footprints that are already in the PCB will not be changed, even if the schematic symbol is updated to specify a different footprint.

Update Schematic from PCB (back annotation)

The typical workflow in KiCad is to make changes in the schematic and then sync the changes to the board using the Update PCB From Schematic tool. However, the reverse process is also possible: design changes can be made in the board and then synced back to the schematic using ToolsUpdate Schematic From PCB in either the schematic or board editors. This process is often called back annotation.

Update schematic from PCB

The tool syncs changes in reference designators, values, footprint assignments, and net names from the board to the schematic. Each type of change can be individually enabled or disabled.

The changes that will be made to the schematic are listed in the Changes To Be Applied pane. The schematic is not modified until you click the Update Schematic button.

You can show or hide different types of messages using the checkboxes at the bottom of the window. A report of the changes can be saved to a file using the Save…​ button.


The tool has several options to control its behavior.



Re-link footprints to schematic symbols based on their reference designators

If checked, each footprint in the PCB will be re-linked to the symbol that has the same reference designator as the footprint. This option is incompatible with updating symbol reference designators.

If unchecked, footprints and symbols will be linked by unique identifier as usual, rather than by reference designator.

Reference designators

If checked, symbol reference designators will be updated to match the reference designators of the linked footprints.

If unchecked, symbol reference designators will not be updated.


If checked, symbol values will be updated to match the values of the linked footprints.

If unchecked, symbol values will not be updated.

Footprint assignments

If checked, footprint assignments will be updated for symbols which have had their footprints changed or replaced in the board.

If unchecked, symbol footprint assignments will not be updated.

Net names

If checked, the schematic will be updated with any net name changes that have been made in the board. Net labels will be updated or added to the schematic as necessary to match the board.

If unchecked, net names will not be updated in the schematic.

The Geographical Reannotation feature can be used in combination with backannotating reference designators to reannotate all components in the design based on their location in the layout.
Back annotation with CMP files

Select changes can also be synced from the PCB back to the schematic by exporting a CMP file from the PCB editor (FileExportFootprint Association (.cmp) File…​) and importing it in the Schematic Editor (FileImportFootprint Assignments…​).

This method can only sync changes made to footprint assignments and footprint fields. It is recommended to use the Update Schematic from PCB tool instead.

Обозначение в порядке размещения на плате

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.


Most objects can be locked through their properties dialogs, by using the right-click context menu, or by using the Toggle Lock hotkey (L). Locked objects cannot be selected unless the "Locked items" checkbox is enabled in the selection filter. Attempting to move locked items will result in a warning dialog:

pcbnew locked items dialog

Selecting "Override Locks" in this dialog will allow moving the locked items. Selecting "OK" will allow you to move any unlocked items in the selection; leaving the locked items behind. Selecting "Do not show again" will remember your choice for the rest of your session.

Средства множественного редактирования

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Инструменты очистки

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Importing graphics

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Importing vector drawings from DXF and SVG files

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Importing bitmap images

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Проверка печатной платы

Измерительный инструмент

The measurement tool allows you to make distance and angle measurements between points on the PCB. To activate the tool, click the measurement 24 icon in the right toolbar, or use the hotkey Ctrl+Shift+M. Once the tool is active, click once to set the measurement start point, then click again to finish a measurement.

The measurement tool is used for quick measurements that do not need to be displayed permanently. Any measurement you make will only be shown while the tool is active. To create permanent dimensions that will appear in printouts and plots, use the Dimension tools.

Проверка правил проектирования

The design rule checker is used to verify that the PCB meets all the requirements established in the Board Setup dialog and that all pads are connected according to the netlist or schematic. KiCad can automatically prevent some design rule violations while routing tracks, but many others cannot be prevented automatically. This means it is important to use the design rule checker before creating manufacturing files for a PCB.

To use the design rule checker, click the erc 24 icon in the top toolbar, or select Design Rules Checker from the Inspect menu.

drc control

The top section of the DRC Control window contains some options that control the design rule checker:

Refill all zones before performing DRC: when enabled, zones will be refilled every time the design rule checker is run. Disabling this option may result in incorrect DRC results if zones have not been refilled manually.

Report all errors for each track: when enabled, all clearance errors will be reported for each track segment. When disabled, only the first error will be reported. Enabling this option will result in the design rule checker running more slowly.

Test for parity between PCB and schematic: when enabled, the design rule checker will test for differences between the schematic and PCB in addition to testing the PCB design rules. This option has no effect when running the PCB editor in standalone mode.

After running DRC, any violations will be shown in the center part of the DRC Control window. Rule violations, unconnected items, and differences between the schematic and the PCB are shown in three different tabs. The controls below the list of violations can be used to show or hide violations depending on their severity. A report file in plain text format can be created after running DRC using the Save button.

drc violations

Each violation involves one or more objects on the PCB. In the list of violations, the objects involved are listed below the violation. Clicking on the violation in the list view will move the PCB Editor view so that the affected area is centered. Clicking on one of the objects involved in a violation will highlight the object.

The numbers at the bottom of the window show the number of errors, warnings, and exclusions. Each type of violation can be filtered from the list using the respective checkboxes. Clicking Delete Markers will clear all violations until DRC is run again.

Violations can be right-clicked in the dialog to ignore them or change their severity:

  • Exclude this violation: ignores this particular violation, but does not affect any other violations.

  • Change severity: changes a type of violation from warning to error, or error to warning. This affects all violations of a given type.

  • Ignore all: ignores all violations of a given type. This test will now appear in the Ignored Tests tab rather than the Violations tab.

Excluded and ignored violations are remembered between runs of the design rule checker.

Проверка зазора и ограничений

The clearance and constraint resolution tools allow you to inspect which clearance and design constraint rules apply to selected items. These tools can help when designing PCBs with complex design rules where it is not always clear which rules apply to an object.

To inspect the clearance rules that apply between two objects, select both objects and choose Clearance Resolution from the Inspect menu. The Clearance Report dialog will show the clearance required between the objects on each copper layer, as well as the design rules that resulted in that clearance.

clearance resolution

To inspect the design constraints that apply to an object, select it and choose Constraints Resolution from the Inspect menu. The Constraints Report dialog will show any constraints that apply to the object.

constraints resolution

Find tool

The Find tool searches for text in the PCB, including reference designators, footprint fields, and graphic text. When the tool finds a match, the canvas is zoomed and centered on the match and the text is highlighted. Launch the tool using the (Find icon) button in the top toolbar.

Find dialog

The Find tool has several options:

Match case: Selects whether the search is case-sensitive.

Words: When selected, the search will only match the search term with complete words in the PCB. When unselected, the search will match if the search term is part of a larger word in the PCB.

Wildcards: When selected, wildcards can be used in the search terms. ? matches any single character, and * matches any number of characters. Note that when this option is selected, partial matches are not returned: searching for abc* will match the string abcd, but searching for abc will not.

Wrap: When selected, search results will return to the first hit after reaching the last hit.

Search footprint reference designators: Selects whether the search should apply to footprint reference designators.

Search footprint values: Selects whether the search should apply to footprint value fields.

Search other text items: Selects whether the search should apply to other text items, including graphical text and footprint fields other than value and reference.

Search DRC markers: Selects whether the search should apply to the violation descriptions of DRC markers shown on the board.

Search panel

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.


The 3D Viewer shows a 3-dimensional view of the board and the components on the board. You can view the board from different perspectives, show or hide different types of components, cross-probe from the PCB Editor to the 3D viewer, and generate raytraced renders of the board.

The 3D model for a component will only appear if the 3D model file exists and has been assigned to the footprint.
Many footprints in KiCad’s standard library do not yet have model files created for them. However, these footprints may contain a path to a 3D model that does not yet exist, in anticipation of the 3D model being created in the future.

Dragging with the left mouse button will orbit the 3D view. By default this is the centroid of the board, but the pivot point can be reset to a new point on the board by moving the cursor over the desired point and pressing Space. Scrolling the mouse wheel will zoom the view in or out. Scrolling while holding Ctrl pans the view left and right, and scrolling while holding Shift pans up and down. Dragging with the middle mouse button also pans the view.

Different sized 3D grids can be set using the Preferences3D Grid menu. Bounding boxes for each component can be enabled with PreferencesShow Model Bounding Boxes.

When the PCB Editor and the 3D Viewer are both open, selecting a footprint in the PCB Editor will also highlight the component in the 3D Viewer. The highlight color is adjustable in PreferencesPreferences…​3D ViewerRealtime RendererSelection Color.

Generating images with the 3D Viewer

The current 3D view can be saved to an image with FileExport Current View as PNG…​ or Export Current View as JPG…​, depending on the desired image format. The current view can also be copied to the clipboard using the copy icon button, or EditCopy 3D Image.

The 3D Viewer has a raytracing rendering mode which displays the board using a more physically accurate rendering model than the default rendering mode. Raytracing is slower than the default rendering mode, but it can be used when the most visually attractive results are desired. Raytracing mode is enabled with the raytracing icon button, or with PreferencesRaytracing. The 3D grid and selection highlights are not shown in raytracing mode.

Colors and other rendering options, for both raytraced and non-raytraced modes, can be adjusted in PreferencesPreferences…​3D Viewer.

3D viewer controls

Many viewing options are controlled with the top toolbar.

import3d 24

Reload the 3D model

copy 24

Copy 3D image to clipboard

render mode 24

Render current view using raytracing

refresh 24


zoom in 24

Zoom in

zoom out 24

Zoom out

zoom fit in page 24

Fit drawing in display area

rotate cw x 24

Rotate X clockwise

rotate ccw x 24

Rotate X counterclockwise

rotate cw y 24

Rotate Y clockwise

rotate ccw y 24

Rotate Y counterclockwise

rotate cw z 24

Rotate Z clockwise

rotate ccw z 24

Rotate Z counterclockwise

flip board 24

Flip board view

left 24

Pan board left

right 24

Pan board right

up 24

Pan board up

down 24

Pan board down


Enable/disable orthographic projection

show tht 24

Show/hide 3D models for through-hole components

show smt 24

Show/hide 3D models for surface mount components

show other 24

Show/hide 3D models for components of type 'other'

show not in posfile 24

Show/hide 3D models for components not in position file

Инспектор цепей

The Net Inspector allows you to view statistics about all the nets in a board. To open the inspector, click the list nets 24 icon at the top of the Nets section of the Appearance panel, or select Net Inspector from the Inspect menu.

net inspector

Clicking a net in the list will highlight that net on the board. Clicking a column title allows you to sort the list of nets by that column.

The Group By field allows you to combine different nets together and view the total length of the combined nets. For example, if you have two nets named DATA0 and DATA0_EXT, using a Group By value of DATA0* will create a group containing both nets. More complicated groupings can be created by changing the Group By mode from Wildcard to RegEx (regular expressions). The substring (Substr) variants of the Group By mode will create groups for each set of nets that matches the pattern differently.

For example, if you have the nets U1D+, U1D-, U2D+, and U2D-, the grouping pattern U*D will match all four nets in Wildcard mode, creating a single group U*D. In Wildcard Substr mode, it will match all four nets, but create two different groups: U1D and U2D.

Pad Count and Via Count show the number of pads (surface mount and through hole) and vias on a net. Via Length shows the total height of each via (not accounting for which copper layers the via connects to). In other words, Via Length is equal to Via Count multiplied by the stackup height of the board. Track Length shows the total length of all track segments in a net, not accounting for topology. Die length shows the total of all Pad to Die Length values set for pads on the net.

The lengths shown in the Net Inspector differ from those shown in the length tuning tools, because the Net Inspector shows the sum of all tracks connected to a net, and the length tuning tools show the distance between the closest two pads or branching vias. See the Routing section for more information about the length tuner.

Формирование выходных файлов

KiCad can generate and export files in a number of different formats useful for manufacturing PCBs and interfacing with external software. This functionality is available in the File menu in a few different sections. The Fabrication Outputs section contains the most common operations needed to prepare a PCB for fabrication. The Export section contains tools for generating files that can be read by external software. The Plot function allows you to export 2D line drawings of the PCB in various formats. The Print function allows you to send a view of the PCB to a 2D printer.

Fabrication outputs and plotting

KiCad uses Gerber files as its primary plotting format for PCB manufacturing. To create Gerber files, open the Plot dialog from the File menu, or select Gerbers from the Fabrication Outputs section of the File menu. The Plot dialog will open, allowing you to configure and generate Gerber files.

plot dialog

Plotting options

Include Layers: Check that every layer used on your board is enabled in the list. Disabled layers will not be plotted.

Output directory: Specify the location to save plotted files. If this is a relative path, it is created relative to the project directory.

Plot border and title block: If enabled, the drawing sheet border and title block will be plotted on each layer. This should usually be disabled when plotting Gerber files.

Plot footprint values: If enabled, the Value field of each footprint will be plotted on whatever layer it exists on (unless the field visibility is disabled for a specific footprint).

Plot reference designators: If enabled, the Reference Designator field of each footprint will be plotted on whatever layer it exists on (unless the field visibility is disabled for a specific footprint).

Force plotting of invisible values / refs: If enabled, all footprint values and reference designators will be plotted, even if the field visibility is disabled for some of these fields.

Plot Edge.Cuts on all layers: If enabled, the Edge.Cuts (board outline) layer will be added to all other layers. Check with your manufacturer to see what the correct value of this setting is for their manufacturing process.

Sketch pads on fabrication layers: If enabled, footprint pads on fabrication (F.Fab, B.Fab) layers will be drawn as unfilled outlines rather than filled shapes.

Do not tent vias: If enabled, vias will be left uncovered on the solder mask layers (F.Mask, B.Mask). If disabled, vias will be covered by solder mask (tented).

KiCad does not support tenting or uncovering specific vias. Tenting may only be controlled globally (for all vias on a board).

Drill marks: For plot formats other than Gerber, marks may be plotted at the location of all drilled holes. Drill marks may be created at the actual size (diameter) of the finished hole, or at a smaller size.

Scaling: For plot formats that support scaling other than 1:1, the plot scale may be set. The Auto scaling setting will scale the plot to fit the specified page size.

Plot mode: For some plot formats, filled shapes may be plotted as outlines only (sketch mode).

Use drill/place file origin: When enabled, the coordinate origin for plotted files will be the drill/place file origin set in the board editor. When disabled, the coordinate origin will be the absolute origin (top left corner of the worksheet).

Mirrored plot: For some plot formats, the output may be mirrored horizontally when this option is set.

Negative plot: For some plot formats, the output may be set to negative mode. In this mode, shapes will be drawn for the empty space inside the board outline, and empty space will be left where objects are present in the PCB.

Check zone fills before plotting: When enabled, zone fills will be checked (and refilled if outdated) before generating outputs. Plot outputs may be incorrect if this option is disabled!

Gerber options

Use Protel filename extensions: When enabled, the plotted Gerber files will be named with file extensions based on Protel (.GBL, .GTL, etc). When disabled, the files will have the .gbr extension.

Generate Gerber job file: When enabled, a Gerber job file (.gbrjob) will be generated along with any Gerber files. The Gerber job file is an extension to the Gerber format that includes information about the PCB stackup, materials, and finish. More information about Gerber job files is available at the Ucamco website.

Coordinate format: Configure how coordinates will be stored in the plotted Gerber files. Check with your manufacturer for their recommended setting for this option.

Use extended X2 format: When enabled, the plotted Gerber files will use the X2 format, which includes information about the netlist and other extended attributes. This format may not be compatible with older CAM software used by some manufacturers.

Include netlist attributes: When enabled, the plotted Gerber files will include netlist information that can be used for checking the design in CAM software. When X2 format mode is disabled, this information is included as comments in the Gerber files.

Disable aperture macros: When enabled, all shapes will be plotted as primitives rather than by using aperture macros. This setting should only be used for compatibility with old or buggy CAM software when requested by your manufacturer.

PostScript options

Scale factor: Controls how coordinates in the board file will be scaled to coordinates in the PostScript file. Using a different value for X and Y scale factors will result in a stretched / distorted output. These factors may be used to correct for scaling in the PostScript output device to achieve an exact-scale output.

Track width correction: A global factor that is added (or subtracted, if negative) from the size of tracks, vias, and pads when plotting a PostScript file. This factor may be used to correct for errors in the PostScript output device to achieve an exact-scale output.

Force A4 output: When enabled, the generated PostScript file will be A4 size even if the KiCad board file is a different size.

SVG options

Units: Controls the units that will be used in the SVG file. Since the SVG format has no specified units system, you must export using the same units setting that you want to use for importing into other software.

Precision: Controls how many significant digits will be used to store coordinates.

DXF options

Plot graphic items using their contours: Graphic shapes in DXF files have no width. This option controls how graphic shapes with a width (thickness) in a KiCad board are plotted to a DXF file. When this option is enabled, the outer contour of the shape will be plotted. When this option is disabled, the centerline of the shape will be plotted (and the shape’s thickness will not be visible in the resulting DXF file).

Use KiCad font to plot text: When enabled, text in the KiCad design will be plotted as graphic shapes using the KiCad font. When disabled, text will be plotted as DXF text objects, which will use a different font and will not appear in exactly the same position and size as shown in the KiCad board editor.

Export units: Controls the units that will be used in the DXF file. Since the DXF format has no specified units system, you must export using the same units setting that you want to use for importing into other software.

HPGL options

Default pen size: Controls the plotter pen size used to create graphics.

Drill files

KiCad can generate CNC drilling files required by most PCB manufacturing processes in either Excellon or Gerber X2 format. KiCad can also generate a drill map: a graphical plot of the board showing drill locations. Select the Generate Drill Files option from the Fabrication Outputs menu to open the dialog:

generate drill files dialog

Output folder: Choose the folder to save generated drill and map files to. If a relative path is entered, it will be relative to the project directory.

Drill file format: Choose whether to generate Excellon drill files (required by most PCB manufacturers) or Gerber X2 files.

Mirror Y axis: For Excellon files, choose whether or not to mirror the Y-axis coordinate. This option should in general not be used when having PCBs manufactured by a third party, and is provided for convenience for users who are making PCBs themselves.

Minimal header: For Excellon files, choose whether to output a minimal header rather than a full file header. This option should not be enabled unless requested by your manufacturer.

PTH and NPTH in single file: By default, plated holes and non-plated holes will be generated in two different Excellon files. With this option enabled, both will be merged into a single file. This option should not be enabled unless requested by your manufacturer.

Oval holes drill mode: Controls how oval holes are represented in an Excellon drill file. The default setting, Use route command, is correct for most manufacturers. Only choose the Use alternate drill mode setting if requested by your manufacturer.

Map file format: Choose the output format for plotting a drill map.

Drill origin: Choose the coordinate origin for drill files. Absolute will use the page origin at the top left corner. Drill/place file origin will use the origin specified in the board design.

Drill units: Choose the units for drill coordinates and sizes.

Zeros format: Controls how numbers are formatted in an Excellon drill file. Select an option here based on your manufacturer’s recommendations.

Component placement files

Component placement files are text files that list each component (footprint) on the board along with its center position and orientation. These files are usually used for programming pick-and-place machines, and may be required by your manufacturer if you are ordering fully-assembled PCBs.

A footprint will not appear in generated placement files if the "Exclude from position files" option is enabled for that footprint. This may be used for excluding certain footprints that do not represent physical components to be assembled.
generate placement files dialog

Format: Choose between generating a plain text (ASCII), comma-separated text (CSV), or Gerber placement file format.

Units: Choose the units for component locations in the placement file.

Files: Choose whether to generate separate files for footprints on the front and back of the board or a single file combining both sides.

Include only SMD footprints: When enabled, only footprints with the SMD fabrication attribute will be included. Check with your manufacturer to determine if non-SMD footprints should be included or excluded from the position file.

Exclude all footprints with through hole pads: When enabled, footprints will be excluded from the placement file if they contain any through-hole pads, even if their fabrication type is set to SMD.

Include board edge layer: For Gerber placement files, controls whether or not the board outline is included with the footprint placement data.

Use drill/place file origin: When enabled, component positions will be relative to the drill/place file origin set in the board design. When disabled, the positions will be relative to the page origin (upper left corner).

Additional fabrication outputs

KiCad can also generate footprint report files, IPC-D-356 netlist files, and a bill of materials (BOM) from the board design. These output formats have no configurable options.


KiCad can print the board view to a standard printer using the Print action in the File menu.

print dialog

Include layers: Select the layers to include in the printout. Unselected layers will be invisible. Right-click the list for layer selection commands.

Output mode: Choose whether to print in black and white or full color.

Print drawing sheet: When enabled, the page border and title block will be printed.

Print according to objects tab of appearance manager: When enabled, any objects that have been hidden in the Objects tab of the Appearance panel will be hidden in the printout. When disabled, these objects will be printed if the layer they appear on is selected in the Included Layers area.

Print background color: When printing in full color, this option controls whether or not the view background color will be printed.

Use a different color theme for printing: When printing in full color, this option allows a different color theme to be used for printing. When disabled, the color theme used by the board editor will be used for printing.

Drill marks: Controls whether to show drilled holes at their actual size, at a small size, or hide them from the printout.

Print mirrored: When enabled, the printout will be mirrored horizontally.

Print one page per layer: When enabled, each layer selected in the Included Layers area will be printed to an individual page. If this option is enabled, the Print board edges on all pages option controls whether to add the Edge.Cuts layer to each printed page.

Scale: controls the scale of the printout relative to the page size configured in Page Setup.

Экспорт файлов

KiCad can export a board design to various third-party formats for use with external software. These functions are found in the Export section of the File menu.

Specctra .DSN: creates a file suitable for importing into certain third-party autorouter software. This exporter has no configurable options.

TODO: Document GenCAD exporter
TODO: Document VRML exporter

Модуль экспорта IDF

The IDF exporter exports an IDFv3 compliant board (.emn) and library (.emp) file for communicating mechanical dimensions to a mechanical CAD package. The exporter exports the board outline and cutouts, all pad and mounting through holes including slotted holes, and component outlines; this is the most basic set of mechanical data required for interaction with mechanical designers. All other entities described in the IDFv3 specification are currently not exported.

You must attach IDF component models to your design’s footprints before they will be included in the exported model. For more information on attaching models to footprints, see the footprint documentation. Some IDF-specific guidance is included in the Advanced Topics documentation.
For more information on creating IDF component models, including descriptions of the IDF utility tools included with KiCad, see the Advanced Topics documentation.

Once models have been specified for all desired components, the model of the board can be exported. In the PCB Editor, select FileExportIDFv3…​.

Настройки для вывода IDF

Grid reference point: Choose where the exported model’s reference point should be. If the Adjust automatically option is selected, KiCad will set the reference point to the centroid of the PCB. Otherwise, the reference point is set relative to the display origin.

Output units: Choose whether the exported model’s units are millimeters or mils.

The outputs can be viewed directly in a mechanical CAD application or converted to VRML using the idf2vrml tool.

TODO: Document STEP exporter
TODO: Document SVG exporter
TODO: Document CMP file exporter

Hyperlynx: creates a file suitable for importing into Mentor Graphics (Siemens) HyperLynx simulation and analysis software.

Посадочные места и библиотеки посадочных мест

Управление библиотеками посадочных мест

KiCad’s footprint library management system allows directly using several types of footprint libraries:

  • KiCad .pretty footprint libraries (folders with .pretty extension, containing .kicad_mod files)

  • KiCad Legacy footprint libraries (.mod files)

  • GEDA libraries (folders containing .fp files)

  • Eagle footprint libraries

KiCad only supports writing to KiCad’s native .pretty format footprint libraries (and the .kicad_mod footprint files within them). All other footprint library formats are read-only.

KiCad uses a table of footprint libraries to map footprint libraries of any supported library type to a library nickname. KiCad uses a global footprint library table as well as a table specific to each project. To edit either footprint library table, use PreferencesManage Footprint Libraries…​.

footprint library table dialog

The global footprint library table contains the list of libraries that are always available regardless of the currently loaded project. The table is saved in the file fp-lib-table in the KiCad configuration folder. The location of this folder depends on the operating system being used.

The project specific footprint library table contains the list of libraries that are available specifically for the currently loaded project. If there are any project-specific footprint libraries, the table is saved in the file fp-lib-table in the project folder.

Initial Configuration

The first time the PCB Editor (or any other KiCad tool that uses footprints) runs and the global footprint table file fp-lib-table is not found, KiCad will guide the user through setting up a new footprint library table. This process is described above.

Managing Table Entries

Footprint libraries can only be used if they have been added to either the global or project-specific footprint library table.

Add a library either by clicking the Folder icon button and selecting a library or clicking the Plus icon button and typing the path to a library file. The selected library will be added to the currently opened library table (Global or Project Specific). Libraries can be removed by selecting desired library entries and clicking the Delete icon button.

The Up icon and Down icon buttons move the selected library up and down in the library table. This does not affect the display order of libraries in the Footprint Library Browser, Footprint Editor, or Add Footprint tool.

Libraries can be made inactive by unchecking the Active checkbox in the first column. Inactive libraries are still in the library table but do not appear in any library browsers and are not loaded from disk, which can reduce loading times.

A range of libraries can be selected by clicking the first library in the range and then Shift-clicking the last library in the range.

Each library must have a unique nickname: duplicate library nicknames are not allowed in the same table. However, nicknames can be duplicated between the global and project library tables. Libraries in the project table take precedence over libraries with the same name in the global table.

Library nicknames do not have to be related to the library filename or path. The colon character (:) cannot be used in library nicknames or footprint names because it is used as a separator between nicknames and footprints.

Each library entry must have a valid path. Paths can be defined as absolute, relative, or by environment variable substitution.

The appropriate library format must be selected in order for the library to be properly read. KiCad supports reading KiCad (.pretty), KiCad legacy (.mod), Eagle (.lbr), and GEDA (folder with .fp files) footprint libraries.

There is an optional description field to add a description of the library entry. The option field is not used at this time so adding options will have no effect when loading libraries.

Environment Variable Substitution

The footprint library tables support environment variable substitution, which allows you to define environment variables containing custom paths to where your libraries are stored. Environment variable substitution is supported by using the syntax ${ENV_VAR_NAME} in the footprint library path.

By default, KiCad defines several environment variables which are described in the project manager documentation. Environment variables can be configured in the PreferencesConfigure Paths…​ dialog.

Using environment variables in the footprint library tables allows libraries to be relocated without breaking the footprint library tables, so long as the environment variables are updated when the library location changes.

${KIPRJMOD} is a special environment variable that always expands to the absolute path of the current project directory. ${KIPRJMOD} allows libraries to be stored in the project folder without having to use an absolute path in the project library table. This makes it possible to relocate projects without breaking their project library tables.

Using the GitHub Plugin

KiCad removed support for the GitHub library plugin in version 6.0.

Создание и изменение посадочных мест

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Контактная площадка сложной формы

Атрибуты посадочных мест

Расскажите здесь о связках цепей

Мастеры создания посадочных мест

Более подробная информация по созданию новых мастеров посадочных мест приведена в разделе «Сценарии» главы «Дополнительные темы».

Дополнительные темы

Конфигурирование и настройка

The KiCad PCB Editor has a variety of preferences that can be configured through the Preferences dialog. Like all parts of KiCad, the preferences for the PCB Editor are stored in the user configuration directory and are independent between KiCad minor versions to allow multiple versions to run side-by-side with independent preferences.

The first sections of the Preferences dialog (Common, Mouse and Touchpad, and Hotkeys) are shared between all KiCad programs. These sections are described in detail in the KiCad manual under the "Common preferences" section.

Параметры отображения

Pcbnew preferences menu

Графический движок: Определяет вариант используемого графического движка: «Ускоренная графика» или «Обычная графика».

Стиль сетки: Устанавливает вариант нанесения сетки выравнивания.

Толщина сетки: Определяет вариант отображения толстых линий сетки или точек.

Мин. шаг сетки: Определяет минимальное расстояние, в пикселах, между двумя линиями сетки. Линии сетки, которые не соответствуют этому минимальному расстоянию, не будут наносится независимо от текущей настройки параметров сетки.

Привязка к сетке: Определяет при каких условиях операции рисования и редактирования будут привязаны к координатам на активной сетке. Параметр «Всегда» сохраняет привязку даже при скрытой сетке; Параметр «При отображении сетки» включает привязку только в случае отображения сетки.

Grid snapping can be temporarily disabled by holding down Ctrl.

Форма курсора: Определяет будет ли курсор при редактировании отображаться в виде малого или полноэкранного перекрестия (набор линий, пересекающих всю поверхность холста). Курсор редактирования указывает на место выполнения следующей команды рисования или редактирования, которое может быть привязано к сетке, если привязка включена.

Всегда отображать перекрестие: Определяет будет ли курсор редактирования отображаться постоянно или только в режиме редактирования и при использовании инструмента рисования.

Имена цепей: Определяет будут ли подписи с именами цепей выводится на медных объектах. Эти подписи служат только в качестве ориентиров при редактировании и не включаются в файлы для производства.

Показать номера конт.пл.: Определяет будут ли подписи с номерами контактных площадок выводится на контактных площадках посадочных мест.

Показать метку конт.пл. <без цепи>: Определяет будут ли контактные площадки без цепи обозначаться специальным маркером.

Зазор дорожки: Определяет будут ли отображаться контуры зазора вокруг дорожек и переходных отверстий. Контуры зазора показаны в виде тонких очертаний вокруг объектов для демонстрации минимального расстояния до других объектов, с учётом ограничений и правил проектирования.

Показать зазор конт.пл.: Определяет будут ли отображаться контуры зазора вокруг контактных площадок.

Center view on cross-probed items: When the Schematic and PCB Editors are both running, controls whether clicking a component or pin in Eeschema will center the PCB Editor view on the corresponding footprint or pad.

Вместить выделенный элемент в экране: Определяет будет ли масштабироваться отображение, чтобы вместить вид выделенного посадочного места или контактной площадки.

Highlight cross-probed nets: Controls whether or not nets highlighted in Eeschema will be highlighted in the PCB Editor when the highlight tool is activated in both tools.

Параметры редактирования

pcbnew preferences editing

Переворачивать элементы слева направо: Определяет направление, в котором будут переворачиваться элементы платы при их перемещении между верхним и нижним слоями. Если отмечено, элементы переворачиваются слева направо (вокруг вертикальной оси); если не отмечено, элементы переворачиваются сверху вниз (вокруг горизонтальной оси).

Step for rotate commands: Controls how far the selected object(s) will be rotated each time the Rotate command is used.

Allow free pads: Controls whether or not the pads of footprints can be unlocked and edited or moved separately from the footprint.

Magnetic points: This section controls object snapping, also called magnetic points. Object snapping takes precedence over grid snapping when it is enabled. Object snapping only works to objects on the active layer. Hold Shift to temporarily disable object snapping.

Привязка к конт.пл.: Управляет привязкой курсора редактирования к началу координат контактной площадки.

Привязка к дорожкам: Управляет привязкой курсора редактирования к конечным точкам сегмента дорожки.

Привязка к графическим элементам: Управляет привязкой курсора редактирования к точкам формы графического элемента.

Всегда показывать выбранные связи: Если отмечено, связи выделенного посадочного места отображаются всегда, даже когда глобальные связи скрыты.

Показывать связи кривыми линиями: Определяет отображение связей в виде прямых или кривых линий.

Действие при перетаскивании дорожки: Определяет действие, выполняемое при перетаскивании дорожки мышью: Параметр «Переместить» выполняет перемещение сегмента дорожки независимо от всех остальных элементов. Параметр «Перетащить (режим 45°)» использует метод расталкивания при перетаскивании дорожки, с учётом правил проектирования и сохранением прикрепления к другим сегментам дорожки.Параметр «Перетащить (свободный угол)» выполняет перетаскивание ближайшего угла сегмента дорожки, подсвечивая столкновения с другими объектами без изменения их местоположения.

Limit actions to 45 degrees from start Controls whether lines drawn with the graphic drawing tools can take on any angle. Note that this only affects drawing new lines: lines can be edited to take on any angle.

Показать границы страницы: Определяет будет ли контур страницы отображаться в виде прямоугольника.

Refill zones after Zone Properties dialog: Controls whether or not zones are automatically refilled after editing the properties of any zone. This may be disabled on complicated designs or slower computers to improve responsiveness.


pcbnew preferences colors

KiCad supports switching between different color themes to match your preferences. Kicad 7.0 comes with two built-in color themes: "KiCad Default" is a new theme designed to have good contrast and balance for most cases and is the default for new installations. "KiCad Classic" is the default theme from KiCad 5.1 and earlier versions. Neither of these built-in themes can be modified, but you can create new themes to customize the look of KiCad as well as install themes made by other users.

Цветовые темы сохраняются в JSON-файлах, расположенных в подкаталоге colors каталога конфигурации KiCad. Кнопка «Открыть каталог темы» позволяет открыть этот каталог в диспетчере файлов операционной системы, облегчая управление установленными темами. Для установки новой темы, поместите её в эту папку и перезапустите KiCad. Новая тема будет доступна из раскрывающегося списка цветовых тем, если файл является допустимым файлом цветовой темы.

Для создания нового файла цветовой темы, выберите «Создать тему…» из выпадающего списка цветовых тем. Введите имя цветовой темы, после чего можно начинать редактировать цвета. Цвета в новую тему копируются из той темы, которая была выбрана при создании новой темы.

Для изменения цвета дважды щёлкните левой или средней клавишей мыши по образцу цвета в списке. Кнопка «По умолчанию» сбрасывает данный цвет к соответствующему значению в цветовой схеме «KiCad по умолчанию».

Цветовые схемы сохраняются автоматически; все изменения применяются сразу после закрытия диалогового окна «Настройки». В окне с правой стороны от диалогового окна отображается предпросмотр внешнего вида темы.

Плагины действий

pcbnew preferences action plugins

The KiCad PCB editor supports plugins written in Python that can perform actions on the board being edited. These plugins can be installed using the built-in Plugin and Content Manager (see the KiCad chapter for details) or by placing the plugin files inside the user plugins directory. See the Scripting section below for details.

Each plugin that is detected will be shown in a row on this preferences page. Plugins may show a button on the top toolbar of the PCB editor. If the "Show button" control is unchecked for a plugin, it may still be accessed from the Tools > External Plugins menu.

The arrow controls at the bottom of the list allow changing the order that the plugins appear in the toolbar and menu. The folder button will launch a file explorer to the plugin folder, to make installing new plugins easier. The refresh button will scan the plugin folder for any new or removed plugins and update the list.

Начало координат и оси

pcbnew preferences origin axes

Начало координат экрана: Определяет точку отсчёта начала координатпри отображении в окне редактора. Параметр «Начало координат листа» фиксирует точку отсчёта в углу страницы. Параметры «Начало координат сверловки/размещения» и «Начало координат сетки» позволяют пользователю перемещать точку отсчёта.

Ось X: Определяет направление увеличения значений координат X вправо или влево.

Ось Y: Определяет направление увеличения значений координат Y вверх или вниз.

Text variables

KiCad supports text variables, which allow you to substitute the variable name with a defined text string. This substitution happens anywhere the variable name is used inside the variable replacement syntax of ${VARIABLENAME}.

You can define your own text variables in the schematic or board setup dialogs, but there are also a number of built-in system text variables. System text variables may be available in some contexts and not others.

The following variables can be used in PCB text, footprint text, and footprint fields. There are also a number of variables that can be used in the Schematic Editor.

Variable name Description


Contents of drawing sheet’s Issue Date field.


Today’s date, in ISO format.


Contents of drawing sheet’s Revision field.


Contents of drawing sheet’s Title field.


Contents of drawing sheet’s Company field.


Contents of drawing sheet’s Comment<n> field.


Contents of project text variable <variablename>.


Contents of footprint field <fieldname>. Fields can only be accessed from within of their parent object, so footprint fields can be accessed from other text or fields within the footprint.

Both built-in footprint fields and user-defined fields from the corresponding symbol are available. Built-in footprint fields use all uppercase letters: for example, to access a footprint’s value, use ${VALUE}.

Built-in footprint fields are REFERENCE, VALUE, LAYER, FOOTPRINT_LIBRARY, FOOTPRINT_NAME, NET_NAME(<pad_number>), NET_CLASS(<pad_number>), PIN_NAME(<pad_number>).


Contents of field <fieldname> in footprint <refdes>.

Both built-in footprint fields and user-defined fields from the corresponding symbol are available. Built-in footprint fields use all uppercase letters: for example, to access the value of U1, use ${U1:VALUE}.

Built-in footprint fields are REFERENCE, VALUE, LAYER, FOOTPRINT_LIBRARY, FOOTPRINT_NAME, NET_NAME(<pad_number>), SHORT_NET_NAME(<pad_number>), NET_CLASS(<pad_number>), PIN_NAME(<pad_number>).

Особые правила проектирования

KiCad’s custom design rule system allows creating design rules that are more specific than the generic rules available in the Constraints page of the Board Setup dialog. Custom design rules have many applications, but in general they are used to apply certain rules to a portion of the board, such as a specific net or netclass, a specific area, or a specific footprint.

Особые правила проектирования хранятся в отдельном файле с расширением kicad_dru. Этот файл создаётся автоматически при добавлении в проект особых правил. В случае использования особых правил в проекте, необходимо сохранять файл kicad_dru вместе с файлами kicad_pcb и kicad_pro при создании резервных копий или отправке коммита в систему контроля версий.

Содержимое файла kicad_dru изменяется автоматически с помощью KiCad и не подлежит редактированию в каких-либо внешних текстовых редакторах. Изменение особых правил проектирования следует всегда выполнять на странице «Особые правила» диалогового окна «Параметры платы».

Редактор особых правил проектирования

Редактор особых правил проектирования находится в диалоговом окне «Параметры платы» и представляет из себя текстовый редактор для ввода особых правил, средство проверки синтаксиса для проверки особых правил и выявления всевозможных ошибок, а также диалоговое окно справки по синтаксису, содержащее краткий справочник синтаксиса особых правил и несколько примеров.

После изменения особых правил рекомендуется воспользоваться кнопкой Проверить синтаксис правил, чтобы убедиться в отсутствии синтаксических ошибок. Наличие каких-либо ошибок в тексте особых правил будет препятствовать работе средства проверки правил проектирования.

Синтаксис особых правил

Язык особых правил проектирования основан на s-выражениях и позволяет создавать ограничения для проектирования, которые невозможны при использовании встроенных ограничений. Каждое правило проектирования обычно содержит условие, определяющее сопоставляемые объекты, а также ограничение, определяющее правило, применяемое к сопоставляемым объектам.

Скобки (( и )) в языке используются для определения выражений, состоящих из маркеров и соответствующих им значений. Число скобок всегда должно совпадать: на каждую открывающую скобку ( всегда должна быть закрывающая ). Внутри выражения, маркеры и значения отделяются пробелом. Условно принято использование одного пробела, но допускается использование любого числа пробелов между маркером и значением. В местах использования строк не содержащие пробелов строки могут заключаться в " или ', либо указываться без кавычек. Строки, содержащие пробелы, всегда заключаются в кавычки. При необходимости можно использовать вложенные кавычки с одним уровнем вложенности, в котором " будут использоваться для внешних кавычек, а ' для внутренних (или наоборот). Переводы строк вставлять необязательно, но в примерах их обычно используют для ясности.

При описании синтаксиса ниже элементы в <угловых скобках> обозначают обязательные маркеры, а элементы в [квадратных скобках] — необязательные маркеры или маркеры, которые необходимы лишь в некоторых случаях.

The Custom Rules file must start with a version header defining the version of the rules language. As of KiCad 7.0, the version is 1. The syntax of the version header is (version <number>). So in KiCad 7.0 the header should read:

(version 1)

После строки заголовка можно расположить любое количество правил. При этом необходимо учитывать обратный порядок приоритета при расположении правил, согласно которому последнее правило в файле обладает наивысшим приоритетом. Как только будет найдено правило, совпадающее с данным набором тестируемых объектов, никакие другие правила не рассматриваются. На практике это означает, что наиболее специфические правила необходимо располагать ближе к концу файла, чтобы они имели больший приоритет, чем более общие правила.

Например, при создании одного правила, ограничивающего минимальный зазор между дорожками в цепи HV и дорожками любой другой цепи, а также другого правила, которое ограничивает минимальный зазор для всех объектов внутри определённой области правил, убедитесь в том, что первое правило находится ближе к концу файла особых правил, чем второе правило. Иначе дорожки в цепи HV могут получить неверный зазор при попадании в область второго правила.

Каждое правило должно иметь имя, а также одно или несколько выражений constraint. Имя может быть представлено любой строкой и используется в качестве ссылки на правило в отчётах DRC. Выражение constraint определяет поведение правила. Правила могут иметь выражение condition, которое определяет объекты, к которым должно применяться правило, а также необязательное выражение layer, которое указывает к каким уровням платы это правило будет применяться.

(rule <имя>
    [(layer <имя_слоя>)]
    [(condition <выражение>)]
    (constraint <тип_ограничения> [аргументы _ограничения]))

В файл особых правил проектирования также могут вставляться комментарии для описания правил. Комментариями считаются любые строки, начинающиеся с символа # (не включая пробел).

# Зазор для цепей 400В до всего остального
(rule HV
    (condition "A.NetClass == 'HV'")
    (constraint clearance (min 1.5mm)))
Выражение «Layer»

Выражение`layer` определяет слои, на которые будет распространяться это правило. Не смотря на то, что слой объектов может быть проверен с помощью выражения condition, в соответствии с описанием ниже, использование выражения layer в данном случае более эффективно.

В качестве значения выражения layer может выступать любое имя слоя платы, либо сокращённое обозначение outer для обозначения верхних и нижних слоёв меди (F.Cu и B.Cu), а также inner для обозначения внутренних слоёв меди.

Если выражение layer отсутствует, правило будет относится ко всем слоям.


# Не допускать размещение посадочных мест на нижнем слое (отсутствие условия означает применение правила ко всем случаям)
(rule "Top side footprints only"
    (layer B.Cu)
    (constraint disallow footprint))

# Это правило делает тоже самое, но более эффективно
(rule "Top side footprints only"
    (condition "A.Layer == 'B.Cu'")
    (constraint disallow footprint))

# Большая величина зазора на внешних слоях больше (зазор внутреннего слоя задаётся минимальным слоем платы)
(rule "clearance_outer"
    (layer outer)
    (constraint clearance (min 0.25mm)))
Выражение «Condition»

Условие правила является выражением, которое содержится внутри текстовой строки (и поэтому обычно заключается в кавычки, чтобы для большей ясности можно было использовать пробелы). Проверка выражения осуществляется по каждой паре тестируемых объектов с помощью средства проверки правил проектирования. Например, при проверке зазора между медными объектами, сравнивается каждый медный объект (сегмент дорожки, контактная площадка, переходное отверстие, и так далее) в каждой цепи с другим медным объектом другой цепи. Если задано особое правило, выражение которого совпадает с этими двумя медными объектами, и ограничение определяет зазор меди, то это особое правило может быть использовано для определения необходимого зазора между этими двумя объектами.

Тестируемые объекты в языке выражений обозначаются как A и B. Порядок следования этих двух объектов не важен, потому что средство проверки правил проектирования тестирует оба возможных порядка. Например, можно написать правило, которое предполагает, что A является дорожкой, а B — переходным отверстием. Существует несколько функций-выражений, выполняющих совместное тестирование обоих объектов; в них AB используется в качестве имени объекта.

Результат выражения в условии должен иметь логическое значение (true или false). Правило применяется к заданным объектам, если результатом выражения становится`true`.

Каждый тестируемый объект имеет свойства, которые можно сравнивать, также как и функции, которые можно использовать для выполнения некоторых тестов. Для использования свойств и функций используется следующий синтаксис: <объект>.<свойство> и <объект>.<функция>([аргументы]) соответственно.

Когда в текстовом редакторе вводится <объект>. (A., B. или AB.), то открывается список автозаполнения, содержащий все свойства объектов, которые могут быть использованы.

Свойства объектов и функции сравниваются с помощью логических операторов с выводом результата в виде логического значения. Логические операторы основаны на синтаксисе C/C++. Поддерживаются следующие операторы:




Не равно

>, >=

Больше, больше или равно

<, <=

Меньше, меньше или равно





Например, A.NetClass == 'HV' будет применяться к любым объектам, которые являются частью класса цепи «HV» и A.NetClass != B.NetClass будет применяться к любым объектам, которые относятся к разным классам цепей. Для уточнения порядка действий в сложных выражениях можно использовать скобки, но это необязательно.

Некоторые свойства содержат значения физических измерений, таких как размер, угол, длина, положение и так далее. С этими свойствами в языке особых правил могут использоваться символы единиц измерения для указания на использующиеся единицы. Если символы единиц измерения не используются, будет использовано внутреннее представление единиц измерения свойства (нанометры для расстояний и градусы для большинства углов). Поддерживаются следующие символы единиц измерения:



mil, th

Тысячные доли дюйма (милы)

in, "






Единицы измерения, использующиеся в особых правилах проектирования, не зависят от единиц измерения, использующихся для отображения в Редакторе печатных плат.

Выражение ограничение определяет поведение правила на объектах, совпадающих с условием. Каждое выражение ограничения имеет тип ограничения и один или более аргументов, задающих поведение ограничения. В одном правиле может содержаться несколько выражений ограничения для установки нескольких ограничений (например, clearance и track_width) для объектов, совпадающих с теми же условиями правила.

Многие ограничения принимают аргументы, в которых задаётся физическое измерение или количество. Эти ограничения поддерживают возможность указания минимального, оптимального и максимального значения (в виде сокращения «min/opt/max»). Минимальное и максимальное значения используются для проверки правила проектирования: если действительная величина меньше минимального или больше максимального значения, указанного в ограничении, создаётся ошибка DRC. Оптимальное значение используется лишь в некоторых ограничениях и содержит информацию для KiCad о «наилучшем» значении, которое будет использоваться по умолчанию. Например, оптимальное значение зазор диф.пары`diff_pair_gap` используется трассировщиком при размещении новых дифференциальных пар. Если же в результате последующих изменений величина зазоров дифференциальных пар будет отличаться от оптимального значения, это не приведёт к созданию ошибок до тех пор, пока зазор находится в диапазоне между минимальным и максимальным значением (если таковые указаны). Во всех случаях, при использовании значения с min/opt/max, можно указать как любое из этих значений, так и полный набор с минимальным, оптимальным и максимальным значением.

Значения с «min/opt/max» указываются следующим образом: (min <значение>), (opt <значение>) и (max <значение>). Например, ограничение ширины дорожки может быть записано как`(constraint track_width (min 0.5mm) (opt 0.5mm) (max 1.0mm))` или просто в виде (constraint track_width (min 0.5mm)) если ограничение будет задано только для минимального значения ширины.

Constraint type Argument type Description



Checks the width of annular rings on vias.



Specifies the electrical clearance between copper objects of different nets. (See physical_clearance if you wish to specify clearance between objects regardless of net.)

To allow copper objects to overlap (collide), create a clearance constraint with the min value less than zero (for example, -1).



Checks the clearance between footprint courtyards and generates an error if any two courtyards are closer than the min distance. If a footprint does not have a courtyard shape, no errors will be generated from this constraint.

To allow courtyard objects to overlap (collide), create a courtyard_clearance constraint with the min value less than zero (for example, -1).



Checks the gap between coupled tracks in a differential pair. Coupled tracks are segments that are parallel to each other. Differential pair gap is not tested on uncoupled portions of a differential pair (for example, the fanout from a component).



Checks the distance that a differential pair track is routed uncoupled from the other polarity track in the pair (for example, where the pair fans out from a component, or becomes uncoupled to pass around another object such as a via).



Specify one or more object types to disallow, separated by spaces. For example, (constraint disallow track) or (constraint disallow track via pad). If an object of this type matches the rule condition, a DRC error will be created. This constraint is essentially the same as a keepout rule area, but can be used to create more specific keepout restrictions.



Checks the clearance between objects and the board edge.

This can also be thought of as the "milling tolerance" as the board edge will include all graphical items on the Edge.Cuts layer as well as any oval pad holes. (See physical_hole_clearance for the drilling tolerance.)

To allow objects to overlap (collide) with the board edge, create an edge_clearance constraint with the min value less than zero (for example, -1).



Checks the total routed length for the nets that match the rule condition and generates an error for each net that is below the min value (if specified) or above the max value (if specified) of the constraint.



Checks the size (diameter) of a drilled hole in a pad or via. For oval holes, the smaller (minor) diameter will be tested against the min value (if specified) and the larger (major) diameter will be tested against the max value (if specified).



Checks the clearance between a drilled hole in a pad or via and copper objects on a different net. The clearance is measured from the diameter of the hole, not its center.



Checks the clearance between mechanically-drilled holes in pads and vias. The clearance is measured between the diameters of the holes, not between their centers.

This constraint is solely for the protection of drill bits. The clearance between laser-drilled (microvias) and other non-mechanically-drilled holes is not checked, nor is the clearance between milled (oval-shaped) and other non-mechanically-drilled holes.



Checks the clearance between two objects on a given layer (including non-copper layers).

While this can perform more general-purpose checks than clearance, it is much slower. Use clearance where possible.



Checks the clearance between a drilled hole in a pad or via and another object, regardless of net. The clearance is measured from the diameter of the hole, not its center.

This can also be thought of as the "drilling tolerance" as it only includes round holes (see edge_clearance for the milling tolerance).



Checks the clearance between objects on silkscreen layers and other objects.

To allow silkscreen objects to overlap (collide) with other objects, create a silk_clearance constraint with the min value less than zero (for example, -1).



Checks the total skew for the nets that match the rule condition, that is, the difference between the length of each net and the average of all the lengths of each net that is matched by the rule. If the absolute value of the difference between that average and the length of any one net is above the constraint max value, an error will be generated.



Specifies the width of the gap between a pad and a zone with a thermal-relief connection.



Specifies the width of the spokes connecting a pad to a zone with a thermal-relief connection.



Checks the width of track and arc segments. An error will be generated for each segment that has a width below the min value (if specified) or above the max value (if specified).



Counts the number of vias on every net matched by the rule condition. If that number exceeds the constraint max value on any matched net, an error will be generated for that net.



Specifies the connection to be made between a zone and a pad.

Справочник свойств объекта и функций

В выражениях особого правила может проводится проверка следующих свойств:

Общие свойства

Эти свойства применяются ко всем объектам печатной платы.

Property Data type Description



The board layer on which the object exists. For objects that exist on more than one layer, this property will return the first layer (for example, F.Cu for most through-hole pads/vias).



True if the object is locked.



Returns the unique identifier of the parent object of this object.



The position of the object’s origin in the X-axis. Note that the origin of an object is not always the same as the center of the object’s bounding box. For example, the origin of a footprint is the location of the (0, 0) coordinate of that footprint in the footprint editor, but the footprint may have been designed such that this location is not in the center of the courtyard shape.



The position of the object’s origin in the Y-axis. Note that KiCad always uses Y-coordinates that increase from the top to bottom of the screen internally, even if you have configured your settings to show the Y-coordinates increasing from bottom to top.



One of "Footprint", "Pad", "Graphic Shape", "Board Text", "Footprint Text", "Zone", "Track", "Via", "Zone", or "Group".

Свойства соединённых объектов

Эти свойства применяются к медным объектам, которые могут соединяться с цепью (контактные площадки, переходные отверстия, зоны, дорожки).

Property Data type Description



The net code of the copper object.

Note that net codes should not be relied upon to remain constant: if you need to refer to a specific net in a rule, use NetName instead. Net can be used to compare the nets of two objects with better performance, for example A.Net == B.Net is faster than A.NetName == B.NetName.



The name of the netclass for the copper object.



The name of the net for the copper object.

Свойства посадочных мест

These properties apply to footprints.

Property Data type Description



The copper clearance override set for the footprint.



The "Description" from the library footprint.



The "Keywords" from the library footprint.

Library ID


The link to the library footprint in library_name:footprint_name format.



The orientation (rotation) of the footprint in degrees.



The reference designator of the footprint.



The solder paste margin override set for the footprint.



The solder paste margin ratio override set for the footprint.



The thermal relief gap set for the footprint.



The thermal relief connection width set for the footprint.



The contents of the "Value" field of the footprint.



One of "Inherited", "None", "Thermal reliefs" or "Solid".

Свойства контактной площадки

These properties apply to footprint pads.

Property Data type Description



The copper clearance override set for the pad.



One of "None", "BGA pad", "Fiducial, global to board", "Fiducial, local to footprint", "Test point pad", "Heatsink pad", "Castellated pad".



The size of the pad’s drilled hole/slot in the X axis.



The size of the pad’s drilled hole/slot in the Y axis.



The orientation (rotation) of the pad in degrees.



The "number" of a pad, which can be a string (for example "A1" in a BGA).



The value of the "pad to die length" property of a pad, which is additional length added to the pad’s net when calculating net length.



One of "Through-hole", "SMD", "Edge connector", or "NPTH, mechanical".



The name of the pad (usually the name of the corresponding pin in the schematic).



The electrical type of the pad (usually taken from the corresponding pin in the schematic). One of "Input", "Output", "Bidirectional", "Tri-state", "Passive", "Free", "Unspecified", "Power input", "Power output", "Open collector", "Open emitter", or "Unconnected".



For rounded rectangle pads, the ratio of radius to rectangle size.



One of "Circle", "Rectangle", "Oval", "Trapezoid", "Rounded rectangle", "Chamfered rectangle", or "Custom".



The size of the pad in the X-axis.



The size of the pad in the Y-axis.



The solder mask margin override set for the pad.



The solder paste margin override set for the pad.



The solder paste margin ratio override set for the pad.



The thermal relief gap set for the pad.



The thermal relief connection width set for the pad.



One of "Inherited", "None", "Thermal reliefs" or "Solid".

Свойства дорожки и дуги

These properties apply to tracks and arc tracks.

Свойство Тип данных Описание



Начало координаты x.



Начало координаты y.



Конец координаты x.



Конец координаты y.



Ширина дорожки или дуги.

Свойства переходного отверстия

These properties apply to vias.

Свойство Тип данных Описание



Диаметр контактной площадки переходного отверстия.



Итоговый диаметр переходного отверстия.



Последний слой в структуре переходного отверстия.



Первый слой в структуре переходного отверстия.



В качестве значения принимает следующие строки: «Through», «Blind/buried» и «Micro».

Свойства зоны и области правил

Свойства применяются к медным и не медным зонам и областям правил (называвшимся ранее областями запрета).

Свойства Тип данных Описание



Значение для переопределения зазора меди для зоны.



Минимально допустимая ширина заливаемых областей в зоне.



Имя, задаваемое пользователем (по умолчанию пустое).



В качестве значения принимает следующие строки: «Inherited», «None», «Thermal reliefs», «Solid» и «Reliefs for PTH».



Уровень приоритета зоны.



Значение зазора терморазгрузки для зоны.



Значение ширины соединения терморазгрузки для зоны.

Свойства графических форм

Эти свойства применяются к графическим элементам: линиям, дугам, окружностям, прямоугольникам и полигонам.

Свойство Тип данных Описание



Конец координаты x.



Конец координаты y.



Толщина штрихов фигуры.

Свойства текста

Эти свойства применяются к текстовым объектам (поля посадочных мест, метки с произвольным текстом и так далее).

Свойство Тип данных Описание


логическое значение

true, если текст полужирный.



Высота символа шрифта.



Выравнивание текста по горизонтали: в качестве значения используются строки «Left», «Center» и «Right».


логическое значение

true, если текст наклонный.


логическое значение

true, если текст отражённый.



Содержимое текстового объекта.



Толщина штриха шрифта.



Ширина символа шрифта.



Выравнивание текста по вертикали: в качестве значения используются строки «Top», «Center» и «Bottom».


логическое значение

true, если текстовый объект видимый (отображается).


Следующие функции могут выполнять действия с объектами в выражениях особых правил:

Function Objects Description


A or B

Returns true if the object exists on the given board layer. layer_id is a string containing the name of a board layer.

fromTo('x', 'y')

A or B

Returns true if the object exists on the copper path between the given pads. x and y are the full names of pads in the design, such as 'R1-Pad1'.


A or B

Returns true if the object is part of a differential pair and the base name of the pair matches the given argument x. For example, inDiffPair('/USB_') or inDiffPair('/USB') returns true for objects in the nets /USB_P and /USB_N. * can be used as a wildcard, so inDiffPair('/USB*') matches /USB1_P and /USB1_N. Note this will always return false if the given net is not a diff pair, meaning that there isn’t a matching net of the opposite polarity. So, on a board with a net named /USB_P but no net named /USB_N, this function returns false.


A or B

Returns true if any part of the object is inside the named rule area or zone. Rule area and zone names can be set in their respective properties dialogs. If the given area is a filled copper zone, the function tests if the given object is inside any of the filled copper regions of the zone, not if the object is inside the zone’s outline.




A or B

Returns true if the any part of the object is inside the courtyard of the given footprint reference. The first variant checks both the front or back courtyard and returns true if the object is inside either one; the second and third variants check a specific courtyard. The * wildcard can be used in the reference: insideCourtyard('R*') would check all footprints with references that start with R.


A or B

Returns true if the object is a blind/buried via.



Returns true if the two objects being tested are part of the same differential pair but are opposite polarities. For example, returns true if A is in net /USB+ and B is in net /USB-.


A or B

Returns true if the object is a microvia.


A or B

Returns true if the object is a plated hole (in a pad or via).


A or B

Returns true if the object is a member of the named group x.

Примеры использования особых правил проектирования

(rule RF_width
	(layer outer)
	(condition "A.NetClass == 'RF'")
	(constraint track_width (min 0.35mm) (max 0.35mm)))

(rule "BGA neckdown"
	(constraint track_width (min 0.2mm) (opt 0.25mm))
	(constraint clearance (min 0.05mm) (opt 0.08mm))
	(condition "A.insideCourtyard('U3')"))

(rule "Distance between Vias of Different Nets"
	(constraint hole_to_hole (min 0.25mm))
	(condition "A.Type =='Via' && B.Type =='Via' && A.Net != B.Net"))

(rule "Distance between test points"
	(constraint courtyard_clearance (min 1.5mm))
	(condition "A.Reference =='TP*' && B.Reference == 'TP*"))

# Здесь предполагается наличие выреза с линиями толщиной 1 мм
(rule "Clearance to cutout"
	(constraint clearance (min 0.8mm))
	(condition "A.Layer=='Edge.Cuts' && A.Thickness == 1.0mm"))

(rule "Max Drill Hole Size Mechanical"
	(constraint hole (max 6.3mm))
	(condition "A.Pad_Type == 'NPTH, mechanical'"))

(rule "Max Drill Hole Size PTH"
	(constraint hole (max 6.35mm))
	(condition "A.Pad_Type == 'Through-hole'"))

# Specify an optimal gap for a particular differential pair
(rule "Clock gap"
	(condition "A.inDiffPair('/CLK')")
	(constraint diff_pair_gap (opt 0.8mm)))

# Укажите более широкий зазор между дифференциальными парами и другими элементами
(rule "Differential pair clearance"
	(condition "A.inDiffPair('*') && !AB.isCoupledDiffPair()")
	(constraint clearance (min 1.5mm)))


Сценарии позволяют автоматизировать выполнение задач в KiCad с использованием языка Python. Расширить функциональность KiCad позволяют «плагины действий» Python, которые добавляются в верхнюю панель инструментов. Также можно создавать автономные сценарии для взаимодействия с файлами KiCad, например, для автоматического формирования файлов для производства из файла платы.

Данное руководство содержит общие рекомендации по созданию сценариев. При написании или изменении сценариев пользователям также потребуется документация, созданная с помощью Doxygen и размещённая наhttps://docs.kicad.org/doxygen-python/namespaces.html[https://docs.kicad.org/doxygen-python/namespaces.html].

Для поддержки сценариев в KiCad 6 или более новой версии необходимо наличие Python 3, так как Python 2 более не поддерживается.

Места для размещения сценариев Python

Plugin scripts for the PCB editor can be installed automatically using the Plugin and Content Manager (PCM), or manually by copying the plugin to a folder. Each plugin should be in its own folder within the plugins folder. The location of the plugins folder is by default:

Platform Path







The type of plugin is determined by the Python Class it inherits from. As in, inheriting from FootprintWizardBase.FootprintWizard will create a Footprint Wizard plugin, and inheriting from pcbnew.ActionPlugin will create an Action plugin.

Плагины действий

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation. (how to install new action plugins)

Мастеры создания посадочных мест

Генераторы посадочных мест являются набором python-сценариев, доступ к которым осуществляется из редактора посадочных мест. При открытии диалогового окна мастера можно выбрать один из сценариев, который выведет изображение посадочного места, а также ряд изменяемых параметров.

Если плагины не были корректно установлены, то последние их версии доступны на сайте исходных кодов KiCad gitlab.

Writing Footprint Wizards

There are 3 minimum steps required to create a Footprint Wizard:

  1. Instantiate a Python class, inheriting from FootprintWizardBase.FootprintWizard.

  2. Define the 6 required functions: GetName(), GetDescription(), GetValue(), GenerateParameterList(), CheckParameters(), and BuildThisFootprint().

  3. Register the class by calling {your_class_name}().register().

The GetName(), GetDescription(), and GetValue() functions are there to provide strings to the UI. The only functionality needed is to return an appropriate string.

The GenerateParameterList() function defines the parameters needed for the footprint. Parameters are grouped into a page + name format. For example, calling self.AddParam("demo", "radius", self.uMM, 5) would add a parameter named radius into the page named demo. Retrieving that parameter data would be done with a call such as self.footprint_radius = self.parameters["demo"]["radius"].

The CheckParameters() function is available to perform any data validation on the parameters defined in GenerateParameterList(). This function is also where the self.footprint_radius = self.parameters["demo"]["radius"] calls reside.

The BuildThisFootprint() function is where the footprint building steps are called. This function is where one creates the footprint.

The required {your_class_name}().register() call can either be at the end of the Python file, or in an init.py file. Both styles are supported by KiCad.

KiCad will not reload a plugin after it has raised an error (for example, the NotImplementedError). One will need completely close out KiCad and restart it. However, this doesn’t apply to changes which do not raise an error.

Использование консоли сценариев

The PCB Editor comes with a built-in Python console that can be used to inspect and interact with the board. To launch the console, use the Scripting console icon button in the top toolbar. The PCB Editor Python API is not automatically loaded, so to load it, type import pcbnew into the console. The command pcbnew.GetBoard() will then return a reference to the board currently loaded in the PCB Editor, which can be inspected and modified through the console.

TODO: Описать другие полезные функции PyAlaMode

Создание внешних сценариев

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Создание плагинов действий

This section of the KiCad documentation has not yet been written. We appreciate your patience as our small team of volunteer documentation writers work to update and expand the documentation.

Working With IDF Component Outlines

KiCad can export an IDF representation of the board for use in mechanical CAD software. Below is some guidance on attaching IDF component outlines to footprints, creating new IDF component outlines, and a description of the IDF utilities included with KiCad.

Определение моделей компонентов, используемых модулем экспорта

IDF component models are attached to footprints using the footprint’s 3D model properties. The IDF exporter uses different filetypes than the 3D viewer and other 3D model exporters, so adding 3D models for the IDF exporter does not conflict with 3D models added to a footprint for other purposes.

To add an IDF model to a footprint in the footprint or PCB editors, edit the footprint’s properties and click on the 3D Models tab.

Свойства посадочных мест, настройки 3D

Click the folder icon button and select the IDF (*.idf;*.IDF) filetype filter. Browse to the desired outline file.

Выбор IDF-контура компонента

Once the desired component outline file is selected, enter any necessary values for the offset and rotation. The offsets must be specified using the IDF board output units (mm or mils) and in the IDF coordinate system, which is a right-hand coordinate system with +Z pointing towards the viewer, +X to the viewer’s right, and +Y towards the upper edge of the screen. The rotation must be in degrees; positive rotation is a counter-clockwise rotation as described in the IDFv3 specification.

Multiple outlines may be combined with appropriate offsets to represent simple assemblies such as a DIP package in a socket.

Only the offset values and the Z rotation value are used by the IDF exporter; all other values are ignored.

Создание файла контура компонента

The component outline file (*.idf) consists of a single .ELECTRICAL or .MECHANICAL section as described in the specification document. The section may be preceded by any number of comment lines; the comment lines are copied by the exporter into the library file and can be used to track metadata such as references to the documents used to determine the component’s outline and dimensions.

Секция контура компонента содержит поля, которые являются строками, целыми числами или числами с плавающей точкой (десятичным разделителем должна быть именно точка, а не запятая). Строка представляет собой комбинацию символов, которые могут включать в себя пробелы; если строка содержит пробелы, то она должна быть заключена в кавычки. Кавычки не должны использоваться внутри строки. Числа с плавающей точкой могут быть представлены в виде десятичной дроби или в экспоненциальном виде, но применение десятичных дробей является предпочтительным для человеческого восприятия. Файл IDF должен состоять только из 7-битных символов ASCII; использование 8-битных символов приведет к непредсказуемому поведению.

An IDF file consists of SECTIONS which consist of RECORDS which consist of FIELDS. For the IDF outline files only one type of section may exist and must be one of .ELECTRICAL or .MECHANICAL. A record is a single line of text and may contain one or more fields. Fields are sequences of characters separated by one or more spaces which do not appear between quotation marks. All fields of a record must appear on a single line; records may not span lines.

The section heading (.ELECTRICAL or .MECHANICAL) is considered the first record (Record 1) of the section. Record 1 must be followed by Record 2 which has four fields:

  1. Наименование контура: строка, которая в сочетании с Полем 2 должна сформировать уникальный идентификатор для контура компонента. Для стандартных корпусов лучше использовать их наименование, например, "SOT-23". Для уникальных корпусов – наименование компонента, заданное производителем (part number).

  2. Наименование компонента: не смотря на очевидное указание использовать наименование компонента (например, BS107), в этой строке лучше сохранить вспомогательное описание корпуса. Например, если значение Поля 1 – "TO-92 ", то Поле 2 можно использовать для описания расположения контактных площадок или ориентации конкретно этого файла контура TO-92.

  3. IDF Unit: this must be one of MM or THOU and it applies only to the units describing this single component outline.

  4. Высота компонента: число с плавающей точкой, представляющее номинальную высоту компонента (от поверхности установки) с использованием единиц измерения, указанных в Поле 3.

После Записи 2 должны следовать несколько Записей 3, которые определяют контур компонента. Запись 3 состоит из четырех полей:

  1. Loop Index: 0 (outline points are specified in counter-clockwise order) or 1 (outline points are specified in clockwise order)

  2. Значение координаты X: число с плавающей точкой

  3. Значение координаты Y: число с плавающей точкой

  4. Included Angle: a floating point number. If the value is 0 then a straight line segment is drawn from the previous point to this point. If the value is 360 then the previous point specifies the center of a circle and this point specifies a point on the circle; never specify a circle using a value of -360 as at least one major mechanical CAD package does not behave well in that situation. If the value is negative then a clockwise arc is drawn from the previous point to this point and if the value is positive then a counter-clockwise arc is drawn.

Допускается описание только одного замкнутого контура. Т.о. не представляется возможным отобразить вырез внутри контура. Координаты последней точки должны быть таким же, как первой (если контур не представляет собой окружность).

Пример IDF-файла 1:

# a simple cylinder - this could represent an electrolytic capacitor
    "cylinder" "5mm OD, 5mm height" MM 5
    0 0 0 0
    0 2.5 0 360

Пример IDF-файла 2:

# an upside-down T
# a comment added for the sake of adding comments
    "Capital T" "5x8x10mm, upside down" MM 10
    0 -0.5 8 0
    0 -0.5 0.5 0
    0 -2.5 0.5 0
    0 -2.5 -0.5 180
    0 2.5 -0.5 0
    0 2.5 0.5 180
    0 0.5 0.5 0
    0 0.5 8 0
    0 -0.5 8 180

Рекомендации по созданию контуров

При создании контуров и, особенно, при использовании результатов работы совместно с другими разработчиками, последовательность в проектировании и именовании файлов помогает людям находить файлы быстрее и размещать компоненты с минимальными конфликтами.

Именование корпусов

Попробуйте сделать некоторые сведения о контуре доступными в имени файла, чтобы дать пользователю общее представление о том, чем является контур. Например, цилиндрические корпуса с аксиальными выводами могут представлять как некоторые типы конденсаторов, так и резисторов. Так что имеет смысл определить контур как горизонтальное или вертикальное устройство с аксиальными выводами и добавить некоторую дополнительную информацию о размерах, являющихся наиболее важными: диаметр, длина и шаг. Если устройство имеет уникальный контур, то наименование компонента, заданное производителем (part number), и префикс, чтобы указать класс устройства, будут достаточны.


Используйте комментарии в IDF-файле, чтобы предоставить пользователям больше информации о контуре. Например, приведите ссылку на источник, используемый для получения информации о геометрии корпуса.

Записи Наименование контура и Наименование компонента

Тщательно продумайте о значениях, которые хотите указать в записях Наименование контура и Наименование компонента. Взятые вместе, эти строки выступают в качестве уникального идентификатора для системы машиностроительной САПР. Значения строк могут иметь какое-то значение для пользователя, но в этом нет необходимости: значения в первую очередь предназначены для САПР. В идеале, выбор значений будет уникальным в пределах любой большой коллекции контуров. Правильный выбор значений также приведет к уменьшению числа конфликтов, особенно в сложных платах.

Ориентация и положение контактов

Component outlines should be created to match the orientation and position of the corresponding footprints. This avoids the need to specify a non-zero rotation for the IDF component outline. Since the IDF exporter ignores the (X, Y) offset values, it is vital that you use the correct origin in the IDF component outline.

Пример контуров

The image above shows sample outlines generated by the programs idfcyl and idfrect and rendered in a mechanical CAD program. From left to right are (a) vertical radial leaded cylinder, (b) vertical axial leaded cylinder with wire on left, (c) vertical axial leaded cylinder with wire on right, (d) horizontal axial leaded cylinder, (e) horizontal radial leaded cylinder, (f) square outline, plain, (g) square outline with chamfer, (h) square outline with axial lead on right. The top outlines were specified in units of millimeters while the bottom outlines were specified in units of inches.

Советы по размерам

Цель использования выдавленных контуров – дать конструктору некоторое представление о расположении и физическом пространстве, занимаемом каждым компонентом. Обычно конструктор заменяет некоторые грубые контуры на более подробные механические модели, например, чтобы при проверке убедиться, что светодиод, установленный под прямым углом, будет вписываться в отверстие на панели. В большинстве случаев точность наброска не имеет значения, но это хорошая практика создания контуров, передающих больше конструкторской информации. В некоторых случаях пользователь может захотеть установить компонент в корпус с очень маленьким свободным пространством, например, в портативный музыкальный проигрыватель. В такой ситуации, когда большинство выдавленных контуров достаточно хорошо представляют компоненты, конструктор может заменить очень мало моделей при проектировании корпуса. Если контуры не достоверно отражают действительность, то конструктор потратит много времени на замену моделей, чтобы обеспечить хорошую подгонку. В конце концов, отдав мусор нельзя рассчитывать на получение конфетки. И напротив, предоставив наиболее полные данные можно быть уверенным в быстром и хорошем результате.

Инструменты IDF-контуров компонентов

Доступен ряд инструментов командной строки, чтобы помочь при создании IDF-контуров:

  1. idfcyl: creates an outline of a cylinder in vertical or horizontal orientation and with axial or radial leads

  2. idfrect: creates an outline of a rectangle which may have either an axial lead or a chamfer in the top left corner

  3. dxf2idf: converts a drawing in DXF format into an IDF component outline


idfcyl generates outlines for cylindrical components.

When idfcyl is invoked with no arguments it prints out a usage note and a summary of its inputs:

idfcyl: This program generates an outline for a cylindrical component.
    The cylinder may be horizontal or vertical.
    A horizontal cylinder may have wires at one or both ends.
    A vertical cylinder may have at most one wire which may be
    placed on the left or right side.

    Unit: mm, in (millimeters or inches)
    Orientation: V (vertical)
    Lead type: X, R (axial, radial)
    Diameter of body
    Length of body
    Board offset
    *   Wire diameter
    *   Pitch
    **  Wire side: L, R (left, right)
    *** Lead length
    File name (must end in *.idf)

        *   only required for horizontal orientation or
            vertical orientation with axial leads

        **  only required for vertical orientation with axial leads

        *** only required for horizontal orientation with radial leads

Примечания могут быть подавлены путем ввода любой произвольного аргумента в командной строке. Пользователь может ввести информацию вручную в командной строке или создавать сценарии для генерации контуров. Следующий скрипт создаёт один контур в виде цилиндра с аксиальными выводами с контактом справа:

# Generate a cylindrical IDF outline for test purposes
# vertical 5mm cylinder,  nominal length 8mm + 3mm board offset,
# axial wire on right,  0.8mm wire dia., 3.5mm pitch
idfcyl - 1 > /dev/null <<  _EOF

idfrect generates outlines for rectangular components.

When idfrect is invoked with no arguments it prints out a usage note and a summary of its inputs:

idfrect: This program generates an outline for a rectangular component.
    The component may have a single lead (axial) or a chamfer on the
    upper left corner.
    Unit: mm, in (millimeters or inches)
    Chamfer: length of the 45 deg. chamfer
    *  Leaded: Y,N (lead is always to the right)
    ** Wire diameter
    ** Pitch
    File name (must end in *.idf)

        *   only required if chamfer = 0

        **  only required for leaded components

Примечания могут быть подавлены путем ввода любой произвольного аргумента в командной строке. Пользователь может ввести информацию вручную в командной строке или создавать сценарии для генерации контуров. Следующий скрипт создаёт два контура в виде прямоугольника (один – со скошенным углом, другой – с аксиальным выводом):

# Generate various rectangular IDF outlines for test purposes
# 10x10, 1mm chamfer, 2mm height
idfrect - 1 > /dev/null <<  _EOF
# 10x10x12,  0.8mm lead on 6mm pitch
idfrect - 1 > /dev/null <<  _EOF

dxf2idf creates an IDF component file from a DXF outline.

The DXF file used to specify the component outline can be prepared with the free software LibreCAD for best compatibility.

When dxf2idf is invoked with no arguments it prints out a usage note and a summary of its inputs:

dxf2idf: this program takes line, arc, and circle segments
    from a DXF file and creates an IDF component outline file.

    DXF filename: the input file, must end in '.dxf'
    Units: mm, in (millimeters or inches)
    Geometry Name: string, as per IDF version 3.0 specification
    Part Name: as per IDF version 3.0 specification of Part Number
    Height: extruded height of the outline
    Comments: all non-empty lines are comments to be added to
        the IDF file. An empty line signifies the end of
        the comment block.
    File name: output filename, must end in '.idf'

The notes can be suppressed by entering any arbitrary argument on the command line. A user can manually enter information at the command line or create scripts to generate outlines. The following script creates a 5mm high outline from a DXF file test.dxf:

# Generate an IDF outlines from a DXF file
dxf2idf - 1 > /dev/null << _EOF
This is an IDF test file produced from the outline 'test.dxf'
This is a second IDF comment to demonstrate multiple comments


The idf2vrml tool reads a set of one IDF Board (.emn) and one IDF Component file (.emp) and produces a VRML file which can be viewed with a VRML viewer. This feature is useful for visualization of the board assembly in cases where the user does not have access to MCAD software. Invoking idf2vrml without any arguments will result in the display of a usage message:

Usage: idf2vrml -f input_file.emn -s scale_factor {-k} {-d} {-z} {-m}
   -k: produce KiCad-friendly VRML output; default is compact VRML
   -d: suppress substitution of default outlines
   -z: suppress rendering of zero-height outlines
   -m: print object mapping to stdout for debugging purposes
example to produce a model for use by KiCad: idf2vrml -f input.emn -s 0.3937008 -k
The idf2vrml tool does not correctly render OTHER_OUTLINE entities in an emn file if that entity is specified on the back layer of the PCB; however you will not noticeable using files exported by KiCad because there is no mechanism to specify such an entity. This is only an issue if you render a third party emn file which does employ an entity on the back side of a board.

Справочник команд

Below is a list of every available action in the PCB Editor: a command that can be assigned to a hotkey.

Редактор печатных плат

The actions below are available in the PCB Editor. Hotkeys can be assigned to any of these actions in the Hotkeys section of the preferences.

Action Default Hotkey Description

Align to Bottom

Aligns selected items to the bottom edge

Align to Horizontal Center

Aligns selected items to the horizontal center

Align to Vertical Center

Aligns selected items to the vertical center

Align to Left

Aligns selected items to the left edge

Align to Right

Aligns selected items to the right edge

Align to Top

Aligns selected items to the top edge

Distribute Horizontally

Distributes selected items along the horizontal axis

Distribute Vertically

Distributes selected items along the vertical axis

Place Off-Board Footprints

Performs automatic placement of components outside board area

Place Selected Footprints

Performs automatic placement of selected components

Flip Board View

View board from the opposite side

Sketch Graphic Items

Show graphic items in outline mode

Decrease Layer Opacity


Make the current layer more transparent

Increase Layer Opacity


Make the current layer less transparent

Switch to Copper (B.Cu) layer


Switch to Copper (B.Cu) layer

Switch to Inner layer 1

Switch to Inner layer 1

Switch to Inner layer 10

Switch to Inner layer 10

Switch to Inner layer 11

Switch to Inner layer 11

Switch to Inner layer 12

Switch to Inner layer 12

Switch to Inner layer 13

Switch to Inner layer 13

Switch to Inner layer 14

Switch to Inner layer 14

Switch to Inner layer 15

Switch to Inner layer 15

Switch to Inner layer 16

Switch to Inner layer 16

Switch to Inner layer 17

Switch to Inner layer 17

Switch to Inner layer 18

Switch to Inner layer 18

Switch to Inner layer 19

Switch to Inner layer 19

Switch to Inner layer 2

Switch to Inner layer 2

Switch to Inner layer 20

Switch to Inner layer 20

Switch to Inner layer 21

Switch to Inner layer 21

Switch to Inner layer 22

Switch to Inner layer 22

Switch to Inner layer 23

Switch to Inner layer 23

Switch to Inner layer 24

Switch to Inner layer 24

Switch to Inner layer 25

Switch to Inner layer 25

Switch to Inner layer 26

Switch to Inner layer 26

Switch to Inner layer 27

Switch to Inner layer 27

Switch to Inner layer 28

Switch to Inner layer 28

Switch to Inner layer 29

Switch to Inner layer 29

Switch to Inner layer 3

Switch to Inner layer 3

Switch to Inner layer 30

Switch to Inner layer 30

Switch to Inner layer 4

Switch to Inner layer 4

Switch to Inner layer 5

Switch to Inner layer 5

Switch to Inner layer 6

Switch to Inner layer 6

Switch to Inner layer 7

Switch to Inner layer 7

Switch to Inner layer 8

Switch to Inner layer 8

Switch to Inner layer 9

Switch to Inner layer 9

Switch to Next Layer


Switch to Next Layer

Switch to Previous Layer


Switch to Previous Layer

Toggle Layer


Switch between layers in active layer pair

Switch to Component (F.Cu) layer


Switch to Component (F.Cu) layer

Net Inspector

Show the net inspector

Local Ratsnest

Toggle ratsnest display of selected item(s)

Net Color Mode (3-state)

Cycle between using net and netclass colors for all nets, just ratsnests, and none

Sketch Pads

Show pads in outline mode

Curved Ratsnest Lines

Show ratsnest with curved lines

Ratsnest Mode (3-state)

Cycle between showing ratsnests for all layers, just visible layers, and none

Repair Board

Run various diagnostics and attempt to repair board

Show Appearance Manager

Show/hide the appearance manager

Show pad numbers

Show pad numbers

Show Properties Manager

Show/hide the properties manager

Scripting Console

Show the Python scripting console

Show Ratsnest

Show board ratsnest

Sketch Text Items

Show footprint texts in line mode

Sketch Tracks


Show tracks in outline mode

Sketch Vias

Show vias in outline mode

Draw Zone Outlines

Show only zone boundaries

Draw Zone Fills

Show filled areas of zones

Toggle Zone Display

Cycle between showing zone fills and just their outlines

Create Arc from Selection

Creates an arc from the selected line segment

Create Rule Area from Selection…​

Creates a rule area from the selection

Create Lines from Selection

Creates graphic lines from the selection

Create Polygon from Selection…​

Creates a graphic polygon from the selection

Create Tracks from Selection

Creates tracks from the selected graphic lines

Create Zone from Selection…​

Creates a copper zone from the selection

Design Rules Checker

Show the design rules checker window

Open in Footprint Editor


Opens the selected footprint in the Footprint Editor

Edit Library Footprint…


Opens the selected footprint in the Footprint Editor

Append Board…​

Open another board and append its contents to this board

Assign Netclass…​

Assign a netclass to nets matching a pattern

Board Setup…​

Edit board setup including layers, design rules and various defaults

Clear Net Highlighting


Clear any existing net highlighting

Drill/Place File Origin

Place origin point for drill files and component placement files

Export Specctra DSN…​

Export Specctra DSN routing info


Create bill of materials from board

IPC-D-356 Netlist File…

Generate IPC-D-356 netlist file

Drill Files (.drl)…​

Generate Excellon drill file(s)

Gerbers (.gbr)…​

Generate Gerbers for fabrication

Component Placement (.pos)…​

Generate component placement file(s) for pick and place

Footprint Report (.rpt)…​

Create report of all footprints from current board


Group the selected items so that they are treated as a single item

Enter Group

Enter the group to edit items

Leave Group

Leave the current group

Hide Net in Ratsnest

Hide the selected net in the ratsnest of unconnected net lines/arcs

Highlight Net


Highlight net under cursor

Highlight Net

Highlight all copper items on the selected net(s)

Import Netlist…​

Read netlist and update board connectivity

Import Specctra Session…​

Import routed Specctra session (*.ses) file


Prevent items from being moved and/or resized on the canvas

Add Footprint


Add a footprint

Remove Items

Remove items from group

Switch to Schematic Editor

Open in schematic editor

Show Net in Ratsnest

Show the selected net in the ratsnest of unconnected net lines/arcs

Constrain to H, V, 45


Limit actions to horizontal, vertical, or 45 degrees from the starting point

Toggle Last Net Highlight

Toggle between last two highlighted nets

Toggle Lock


Lock or unlock selected items

Toggle Net Highlight


Toggle net highlighting

Switch Track Width to Previous


Change track width to previous pre-defined size

Switch Track Width to Next


Change track width to next pre-defined size


Ungroup any selected groups


Allow items to be moved and/or resized on the canvas

Decrease Via Size


Change via size to previous pre-defined size

Increase Via Size


Change via size to next pre-defined size

Duplicate Zone onto Layer…

Duplicate zone outline onto a different layer

Merge Zones

Merge zones

Change Footprint…

Assign a different footprint from the library

Change Footprints…​

Assign different footprints from the library

Cleanup Graphics…​

Cleanup redundant items, etc.

Cleanup Tracks & Vias…​

Cleanup redundant items, shorting items, etc.

Edit Text & Graphics Properties…​

Edit Text and graphics properties globally across board

Edit Track & Via Properties…​

Edit track and via properties globally across board

Global Deletions…​

Delete tracks, footprints and graphic items from board

Remove Unused Pads…​

Remove or restore the unconnected inner layers on through hole pads and vias

Swap Layers…​

Move tracks or drawings from one layer to another

Update Footprint…

Update footprint to include any changes from the library

Update Footprints from Library…​

Update footprints to include any changes from the library

Clearance Resolution…​

Show clearance resolution for the active layer between two selected objects

Constraints Resolution…​

Show constraints resolution for the selected object

Show Board Statistics

Shows board statistics

Add Aligned Dimension


Add an aligned linear dimension

Draw Arc


Draw an arc

Switch Arc Posture


Switch the arc posture

Add Center Dimension

Add a center dimension

Draw Circle


Draw a circle

Close Outline

Close the in progress outline

Decrease Line Width


Decrease the line width

Delete Last Point


Delete the last point added to the current item

Draw Graphic Polygon


Draw a graphic polygon

Increase Line Width


Increase the line width

Add Leader

Add a leader dimension

Draw Line


Draw a line

Add Orthogonal Dimension

Add an orthogonal dimension

Add Board Characteristics

Add a board characteristics table on a graphic layer

Add Image

Add bitmap image

Import Graphics…​


Import 2D drawing file

Add Stackup Table

Add a board stackup table on a graphic layer

Add Radial Dimension

Add a radial dimension

Draw Rectangle

Draw a rectangle

Add Rule Area


Add a rule area (keepout)

Place the Footprint Anchor


Set the coordinate origin point (anchor) of the footprint

Add a Similar Zone


Add a zone with the same settings as an existing zone

Add Text


Add a text item

Add Text Box

Add a wrapped text item

Add Vias


Add free-standing vias

Add Filled Zone


Add a filled zone

Add a Zone Cutout


Add a cutout area of an existing zone

Get and Move Footprint


Selects a footprint by reference designator and places it under the cursor for moving

Change Track Width

Updates selected track & via sizes

Create Array…


Create array

Delete Full Track


Deletes selected item(s) and copper connections

Duplicate and Increment


Duplicates the selected item(s), incrementing pad numbers

Fillet Lines

Adds arcs tangent to the selected lines

Fillet Tracks

Adds arcs tangent to the selected straight track segments

Change Side / Flip


Flips selected item(s) to opposite side of board

Mirror Horizontally

Mirrors selected item across the Y axis

Mirror Vertically

Mirrors selected item across the X axis

Move Exactly…


Moves the selected item(s) by an exact amount

Pack and Move Footprints


Sorts selected footprints by reference, packs based on size and initiates movement



Displays item properties dialog

Rotate Counterclockwise


Rotates selected item(s) counterclockwise

Rotate Clockwise


Rotates selected item(s) clockwise



Skip item



Swaps selected items' positions

Copy with Reference

Copy selected item(s) to clipboard with a specified starting point



Moves the selected item(s)

Move Individually


Moves the selected items one-by-one

Move with Reference

Moves the selected item(s) with a specified starting point

Attempt Finish


Attempts to complete current route to nearest ratsnest end.

Attempt Finish Selected (Autoroute)


Sequentially attempt to automatically route all selected pads.

Break Track

Splits the track segment into two segments connected at the cursor position.

Route From Other End


Commits current segments and starts next segment from nearest ratsnest end.

Custom Track/Via Size…


Shows a dialog for changing the track width and via size.

Cycle Router Mode

Cycle router to the next mode

Route Differential Pair


Route differential pairs

Differential Pair Dimensions…​

Open Differential Pair Dimension settings

Drag (45 degree mode)


Drags the track segment while keeping connected tracks at 45 degrees.

Drag (free angle)


Drags the nearest joint in the track without restricting the track angle.

Finish Track


Stops laying the current track.

Router Highlight Mode

Switch router to highlight mode

Place Blind/Buried Via


Adds a blind or buried via at the end of currently routed track.

Place Microvia


Adds a microvia at the end of currently routed track.

Place Through Via


Adds a through-hole via at the end of currently routed track.

Route Selected


Sequentially route selected items from ratsnest anchor.

Route Selected From Other End


Sequentially route selected items from other end of ratsnest anchor.

Select Layer and Place Blind/Buried Via…


Select a layer, then add a blind or buried via at the end of currently routed track.

Select Layer and Place Micro Via…​

Select a layer, then add a micro via at the end of currently routed track.

Select Layer and Place Through Via…


Select a layer, then add a through-hole via at the end of currently routed track.

Set Layer Pair…​

Change active layer pair for routing

Interactive Router Settings…


Open Interactive Router settings

Router Shove Mode

Switch router to shove mode

Route Single Track


Route tracks

Switch Track Posture


Switches posture of the currently routed track.

Track Corner Mode


Switches between sharp/rounded and 45°/90° corners when routing tracks.

Undo Last Segment


Walks the current track back one segment.

Router Walkaround Mode

Switch router to walkaround mode

Deselect All Tracks in Net

Deselects all tracks & vias belonging to the same net.

Filter Selected Items…​

Remove items from the selection by type

Grab Nearest Unconnected Footprints


Selects and initiates moving the nearest unconnected footprint on each selected net.

Select/Expand Connection


Selects a connection or expands an existing selection to junctions, pads, or entire connections

Select All Tracks in Net

Selects all tracks & vias belonging to the same net.

Select on Schematic

Selects corresponding items in Schematic editor


Selects all footprints and tracks in the schematic sheet

Items in Same Hierarchical Sheet

Selects all footprints and tracks in the same schematic sheet

Select All Unconnected Footprints


Selects all unconnected footprints belonging to each selected net.

Unroute Selected

Unroutes selected items to the nearest pad.

Decrease Amplitude


Decrease meander amplitude by one step.

Increase Amplitude


Increase meander amplitude by one step.

End Track


Stops laying the current meander.

Length Tuning Settings…


Sets the length tuning parameters for currently routed item.

Decrease Spacing


Decrease meander spacing by one step.

Increase Spacing


Increase meander spacing by one step.

New Track


Starts laying a new track.

Tune length of a differential pair


Tune length of a differential pair

Tune skew of a differential pair


Tune skew of a differential pair

Tune length of a single track


Tune length of a single track

Add Microwave Polygonal Shape

Create a microwave polygonal shape from a list of vertices

Add Microwave Gap

Create gap of specified length for microwave applications

Add Microwave Line

Create line of specified length for microwave applications

Add Microwave Stub

Create stub of specified length for microwave applications

Add Microwave Arc Stub

Create stub (arc) of specified size for microwave applications

Footprint Checker

Show the footprint checker window

Copy Footprint

Copy Footprint

Create Footprint…​

Create a new footprint using the Footprint Wizard

Cut Footprint

Cut Footprint

Delete Footprint from Library

Delete Footprint from Library

Duplicate Footprint

Make a copy of the selected footprint

Edit Footprint

Show selected footprint on editor canvas

Export Footprint…​

Export footprint to file

Footprint Properties…​

Edit footprint properties

Hide Footprint Tree

Hide Footprint Tree

Import Footprint…​

Import footprint from file

New Footprint…​


Create a new, empty footprint

Paste Footprint

Paste Footprint

Rename Footprint…​

Rename the selected footprint

Repair Footprint

Run various diagnostics and attempt to repair footprint

Show Footprint Tree

Show Footprint Tree

Paste Default Pad Properties to Selected

Replace the current pad’s properties with those copied earlier

Copy Pad Properties to Default

Copy current pad’s properties

Push Pad Properties to Other Pads…​

Copy the current pad’s properties to other pads

Default Pad Properties…

Edit the pad properties used when creating new pads

Renumber Pads…

Renumber pads by clicking on them in the desired order

Edit Pad as Graphic Shapes


Ungroups a custom-shaped pad for editing as individual graphic shapes

Add Pad

Add a pad

Finish Pad Edit


Regroups all touching graphic shapes into the edited pad

Create Corner


Create a corner

Keep arc center, adjust radius

Switch arc editing mode to keep center, adjust radius and endpoints

Keep arc endpoints or direction of starting point

Switch arc editing mode to keep endpoints, or to keep direction of the other point

Remove Corner

Remove corner

Position Relative To…


Positions the selected item(s) by an exact amount relative to another

Geographical Reannotate…​

Reannotate PCB in geographical order

Refresh Plugins

Reload all python plugins and refresh plugin menus

Open Plugin Directory

Opens the directory in the default system file manager

Draft Fill Selected Zone(s)

Update copper fill of selected zone(s) without regard to other interacting zones

Fill All Zones


Update copper fill of all zones

Unfill Selected Zone(s)

Remove copper fill from selected zone(s)

Unfill All Zones


Remove copper fill from all zones


The actions below are available in the 3D Viewer. Hotkeys can be assigned to any of these actions in the Hotkeys section of the preferences.

Action Default Hotkey Description

Toggle 3D models not in pos file


Toggle 3D models not in pos file

Toggle unspecified 3D models


Toggle 3D models for 'unspecified' type components

Toggle SMD 3D models


Toggle 3D models for 'Surface mount' type components

Toggle Through Hole 3D models


Toggle 3D models for 'Through hole' type components

Flip Board


Flip the board view

Home view


Home view

Render CAD Colors

Use a CAD color style based on the diffuse color of the material

Render Solid Colors

Use only the diffuse color property from model 3D model file

Render Realistic Materials

Use all material properties from each 3D model file

Move board Down


Move board Down

Move board Left


Move board Left

Move board Right


Move board Right

Move board Up


Move board Up

No 3D Grid

No 3D Grid

Center pivot rotation


Center pivot rotation (middle mouse click)

Reset view


Reset view

Rotate X Clockwise

Rotate X Clockwise

Rotate X Counterclockwise

Rotate X Counterclockwise

Rotate Y Clockwise

Rotate Y Clockwise

Rotate Y Counterclockwise

Rotate Y Counterclockwise

Rotate Z Clockwise

Rotate Z Clockwise

Rotate Z Counterclockwise

Rotate Z Counterclockwise

3D Grid 10mm

3D Grid 10mm

3D Grid 1mm

3D Grid 1mm

3D Grid 2.5mm

3D Grid 2.5mm

3D Grid 5mm

3D Grid 5mm

Show 3D Axis

Show 3D Axis

Show Model Bounding Boxes

Show Model Bounding Boxes

Toggle adhesive display

Toggle display of adhesive layers

Toggle board body display

Toggle board body display

Toggle comments display

Toggle display of comments and drawings layers

Toggle ECO display

Toggle display of ECO layers

Toggle orthographic projection

Enable/disable orthographic projection

Toggle realistic mode

Toggle realistic mode

Toggle silkscreen display

Toggle display of silkscreen layers

Toggle solder mask display

Toggle display of solder mask layers

Toggle solder paste display

Toggle display of solder paste layers

Toggle zone display

Toggle zone display

View Back


View Back

View Bottom


View Bottom

View Front


View Front

View Left


View Left

View Right


View Right

View Top


View Top


The actions below are available across KiCad, including in the PCB Editor. Hotkeys can be assigned to any of these actions in the Hotkeys section of the preferences.

Action Default Hotkey Description

Exclude Marker

Mark current violation in Checker window as an exclusion

Next Marker

Go to next marker in Checker window

Previous Marker

Go to previous marker in Checker window

Add Library…

Add an existing library folder



Performs left mouse button click



Performs left mouse button double-click

Cursor Down


Cursor Down Fast


Cursor Left


Cursor Left Fast


Cursor Right


Cursor Right Fast


Cursor Up


Cursor Up Fast


Switch to Fast Grid 1


Switch to Fast Grid 2


Switch to Next Grid


Switch to Previous Grid


Grid Properties…​

Set grid dimensions

Reset Grid Origin


Grid Origin


Set the grid origin point

Inactive Layer View Mode

Toggle inactive layers between normal and dimmed

Inactive Layer View Mode (3-state)


Cycle inactive layers between normal, dimmed, and hidden


Use inches


Use millimeters


Use mils



Create a new document in the editor

New Library…

Create a new library folder



Open existing document

Page Settings…​

Settings for paper size and title block info

Pan Down


Pan Left


Pan Right


Pan Up


Pin Library

Keep the library at the top of the list







Close the current editor

Reset Local Coordinates



Throw away changes



Save changes

Save All

Save all changes

Save As…


Save current document to another location

Save a Copy…​

Save a copy of the current document to another location

Select Columns

3D Viewer


Show 3D viewer window

Show Context Menu

Perform the right-mouse-button action

Footprint Library Browser

Browse footprint libraries

Footprint Editor

Create, delete and edit footprints

Symbol Library Browser

Browse symbol libraries

Symbol Editor

Create, delete and edit symbols

Draw Bounding Boxes

Draw Bounding Boxes

Always Show Cursor


Display crosshairs even in selection tool

Full-Window Crosshairs

Switch display of full-window crosshairs

Show Grid

Display background grid in the edit window

Polar Coordinates

Switch between polar and cartesian coordinate systems

Switch units


Switch between imperial and metric units

Unpin Library

No longer keep the library at the top of the list

Update PCB from Schematic…


Update PCB with changes made to schematic

Update Schematic from PCB…​

Update schematic with changes made to PCB

Center on Cursor


Center on Cursor

Zoom to Objects


Zoom to Objects

Zoom to Fit


Zoom to Fit

Zoom In at Cursor


Zoom In at Cursor

Zoom In

Zoom In

Zoom Out at Cursor


Zoom Out at Cursor

Zoom Out

Zoom Out




Zoom to Selection


Zoom to Selection


Cancel current tool



Copy selected item(s) to clipboard



Cut selected item(s) to clipboard

Cycle arc editing mode


Switch to a different method of editing arcs



Deletes selected item(s)

Interactive Delete Tool

Delete clicked items



Duplicates the selected item(s)



Find text

Find and Replace


Find and replace text

Find Next


Find next match

Find Next Marker




Paste item(s) from clipboard

Paste Special…​

Paste item(s) from clipboard with annotation options



Redo last edit

Replace All

Replace all matches

Replace and Find Next

Replace current match and find next

Show Search Panel


Show/hide the search panel

Select All


Select all items on screen



Undo last edit

Measure Tool


Interactively measure distance between points

Select item(s)

Select item(s)

Configure Paths…

Edit path configuration environment variables


Open "Donate to KiCad" in a web browser

Get Involved

Open "Contribute to KiCad" in a web browser

Getting Started with KiCad

Open “Getting Started in KiCad” guide for beginners


Open product documentation in a web browser

List Hotkeys…​


Displays current hotkeys table and corresponding commands



Show preferences for all open tools

Report Bug

Report a problem with KiCad

Manage Footprint Libraries…​

Edit the global and project footprint library lists

Manage Symbol Libraries…

Edit the global and project symbol library lists

Table of Contents