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

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

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 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.

add textbox 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.

grid select axis 24

set origin 24

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

measurement 24

Interactively measure the distance between two points.

Grids and snapping

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

On Apple keyboards, use the Cmd key instead of Ctrl.
Modifier Key Effect

Ctrl

Disable grid snapping.

Shift

Disable object snapping.

Tools only snap to objects on visible layers. You can reduce unwanted snapping points by hiding unneeded layers or using the single-layer view mode. Additionally, you can toggle between snapping to objects on all layers or only snapping to objects on the current layer by pressing Shift+S.

Snapping to different types of objects (pads, tracks, and graphics) can be configured in the Editing Options section of the PCB Editor preferences.

You can adjust the grid size using the grid dropdown in the top toolbar or by right-clicking and selecting a new grid from the list in the Grid submenu. Pressing the n or N hotkeys will cycle to the next and previous grid in the list, respectively.

You can also select a new grid or edit the available grids in the Grids pane of the preferences dialog. As a shortcut to reach this dialog, right click the show grid button button on the left toolbar and select Edit Grids…​.

grid settings dialog

In this dialog you can select an active grid from the list of grids, reorder the list of grids, and add or remove grids. Grids defined in this dialog can have unequal X and Y spacing as well as an optional name.

This dialog also lets you designate two grids from the list as "Fast Grids", which can be quickly selected using Alt+1 and Alt+2.

Finally, you can configure grid overrides for different types of objects. Grid overrides let you set particular grid sizes for different types of objects which will be used instead of the default grid when working with those objects. For example, you can set a 100 mil grid for footprints and pads while using smaller grids to finely position tracks, vias, and text. Grid overrides can be individually enabled and disabled in this dialog, or globally enabled and disabled using the grid override enable button button on the left toolbar (Ctrl+Shift+G).

To change the origin (zero point) of the grid, use PlaceGrid Origin and click to place the origin in the canvas. This function is also available with the grid origin button button in the right toolbar. Alternatively, you can enter explicit coordinates for the grid origin with EditGrid Origin…​.

The visual appearance of the grid can also be customized in several ways. You can change the thickness of the grid markings, switch their shape (dots, lines, or crosses), and set the minimum displayed spacing in the Display Options page of the preferences dialog, and you can change the grid color in the Colors page of the preferences dialog.

The grid can be shown or hidden using the show grid button button on the left-hand toolbar. By default the grid is still active even if it is hidden, but this is configurable in the Display Options preferences page. There you can set the grid to be disabled when it is hidden or even disable the grid entirely.

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

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.

You can also view and edit item properties using the properties manager. The properties manager is a docked panel that displays the properties of the selected item or items for editing. If multiple types of items are selected at once, the properties panel displays only the properties shared by all of the selected item types.

Properties manager showing properties for a footprint

Editing a property in the properties manager immediately applies the change. When multiple items are selected, property modifications are applied to each selected item individually, not to the whole selection as a group. For example, when changing the orientation of multiple items, each item is individually rotated around its own origin, not the group’s origin.

Show the properties manager with ViewShow Properties Manager or the properties manager icon button on the left toolbar.

Several tools are available for editing properties of specific types of objects in bulk. For text and graphical items, you can use the Edit Text and Graphics Properties tool. Tracks and vias can be bulk-edited using the Edit Track and Via Properties tool. Teardrop properties can be edited with the Edit Teardrops tool.

In properties dialogs and many other 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.

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

Adding footprints to the board

Footprints are automatically added to the board when the PCB is updated from the schematic. The footprint associated with each schematic symbol is added to the board if it is not already present, and each footprint pad is associated with the corresponding symbol pin’s net. Symbol pins are matched to footprint pads by pin/pad number.

When footprints are added to the board after an update from the schematic, they are grouped by schematic sheet and by geographical location in the schematic. They are initially attached to the cursor; you can place them by clicking in the desired location.

You can also add footprints to the board manually using the Add Footprint tool (A or the module 24 button). Note that footprints added in this way will not be automatically associated with a symbol or have nets assigned to their pads, and subsequent updates from the schematic will remove these unassociated footprints unless the footprint is locked or the Delete footprints with no symbols option is unchecked in the Update PCB From Schematic dialog. For these reasons, it is usually recommended to avoid manually adding footprints to the board. Manually adding footprints is necessary for PCB-only workflows, and can also be useful for adding logos or other footprints that do not need a corresponding schematic symbol.

Placing and moving footprints

Once footprints have been added to the board, you can reposition them in many ways.

The Move command (M) moves a footprint or a selection of footprints, ignoring any connected track segments that are not selected. No DRC checking is done when moving footprints with the Move command.

There is a reference point for the move operation, which is the point in the footprint which attaches to the cursor and therefore the point in the footprint that snaps to the grid and to other objects. The reference point during a move is determined by the location of the cursor when the Move command is initiated. If the cursor is over a pad, the pad’s center will be used as the reference point. If the cursor is not over a pad, the footprint’s anchor (coordinate origin point) will be used. To select an arbitrary snapping point, you can use the Move With Reference command instead of the regular Move command (right click → Positioning ToolsMove with Reference). After initiating the command, click on the desired reference point; KiCad will then begin the move with that point as the reference.

You can also use the Drag command (D) to move the selected footprint using the interactive router, maintaining all track connections to the footprint. Dragging footprints behaves like the Highlight Collisions router mode: obstacles will not be avoided or shoved, only highlighted. Only one footprint at a time can be dragged.

Flip a footprint to the opposite side of the board with the F hotkey. Any parts of the footprint on a front layer will be swapped to the corresponding back layer, and vice versa.

Rotate a footprint counter-clockwise using the R hotkey, or clockwise using Shift+R. By default, footprints are rotated by 90 degrees every time the rotate command is used, but you can configure the rotation angle step in PreferencesPCB EditorEditing Options.

You can directly set a footprint’s exact absolute position, rotation angle, and PCB side using either the Footprint Properties dialog or the Properties panel.

To reposition a footprint relative to its current position, use the Move Exactly tool (Shift+M). The dialog lets you specify an X and Y translation, as well as a rotation, that will be applied to the footprint. The rotation can be performed relative to either the footprint’s anchor, the local coordinate origin, or the drill/place origin. You can also use polar coordinates instead of Cartesian coordinates.

Move Exactly dialog

To position a footprint relative to another object, you can use the Position Relative tool (Shift+P). With this tool, you select a reference point for the move, which can be the local origin, the grid origin, or another arbitrary point, such as a pad in another footprint. The selected footprint is moved to the specified offset from the reference point.

Position Relative To Reference Item dialog

You can swap the position of two selected footprints using the Swap command (S). The first footprint is assigned the location, rotation, and board side of the second footprint, and vice versa. If there are more than two footprints selected, the locations are cycled: the last footprint gets the position of the first footprint, the first footprint gets the location of the second, and so on.

There are several convenience features that make it easier to find, select, and move specific footprints or footprints related to another footprint.

The Get and Move Footprint command (T) prompts you to choose a footprint from a list or by typing a reference designator. KiCad then attaches the chosen footprint to your cursor for a move operation.

There are two commands to select other footprints that need to be connected to the selected footprint but don’t yet have routed connections. The Select All Unconnected Footprints command (O) selects all footprints that have ratsnest lines to the currently selected footprints. The command can be executed repeatedly to further expand the selection based on the newly selected items. The Grab Nearest Unconnected Footprint command (Shift+O) selects the closest footprint with ratsnest lines to the currently selected footprint, and additionally begins to move it. If there are multiple footprints initially selected, the command will act like the Move Individually command described below, individually moving the closest unconnected footprint for each of the initially selected footprints.

You can select footprints based on their schematic sheet using the right click → SelectItems in Same Hierarchical Sheet command, which selects all other footprints that are in the same schematic sheet as the originally selected footprint.

If you want to move multiple selected footprints in sequence, use the Move Individually command (Ctrl+M). After triggering the command, KiCad will begin moving the first selected footprint. After you click to place the footprint, KiCad will immediately start moving the next footprint, in the same order that you selected the footprints. You can skip moving a footprint by pressing Tab, commit the current move and skip any remaining moves by double-clicking, or cancel all moves (including those already completed) by pressing Esc.

If you want to move a collection of footprints at once into one area, the Pack and Move Footprints command (P) closely packs the selected footprints together and moves them as a block.

Move Individually and Pack and Move Footprints are useful in combination with other selection convenience features, such as cross-selection from the schematic or the advanced footprint selection features described above. For example, you could select a group of bypass capacitors in the Schematic Editor, switch to the PCB Editor where the corresponding footprints are now selected, and then use Move Individually to quickly place all of the bypass capacitor footprints close to their respective ICs. Alternatively, you could use one of the other selection tools, such as Select All Unconnected Footprints, to select many footprints from all over the board, then use Pack and Move Footprints to quickly put them all into a small area.

Finally, KiCad can automatically place footprints onto the board. The auto-place function attempts to optimally place footprints to simplify ratsnest connections to other footprints. You can auto-place the selected footprints with PlaceAuto-Place FootprintsPlace Selected Footprints, or auto-place all footprints outside of the board outline with PlaceAuto-Place FootprintsPlace Off-Board Footprints.

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

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.

Editing Footprints

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 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.

By default, 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. You can optionally enable automatic zone-filling in the Preferences dialog (PCB EditorEditing OptionsMiscellaneousAutomatically refill zones).

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, unless they are assigned different nets. When two zone outlines with the same priority and different nets touch, one zone will maintain clearance to the other so that they don’t short.

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. The chamfer or fillet size is configurable when those modes are selected.

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.

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

Graphical objects (lines, arcs, rectangles, circles, polygons, and text) can exist on any layer. Unlike zones, the shape of a graphical object is exactly defined by its own properties, and is not affected by other objects. Shape properties include dimensions, line width, and fill.

Graphical objects on copper layers can be assigned nets and make connections to other copper objects, just like tracks and zones.

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).

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.

The properties of a graphic shape can be adjusted in the shape’s properties dialog or with the properties manager. Rectangles, circles, and polygons can be filled shapes or outlines. The line width option controls the width of the outline, even for filled objects. 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. Several line styles are available: solid, dashed, dotted, dash-dot, and dash-dot-dot.

graphic shape properties

Graphical shapes on copper layers can have a net assigned in their properties dialog. Copper shapes with a net make connections like tracks or zones. Unlike zones, copper graphical objects always maintain their shape and do not keep clearance to other copper objects.

Контур платы

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.

Creating text objects

Graphical text may be placed by using the text 24 button in the right toolbar or by keyboard shortcut Ctrl+Shift+T. Activating the tool brings up a text properties dialog. After configuring the text and its properties and accepting the dialog, you can click in the canvas to place the text.

You can also add text boxes, which are similar to regular text except that they have an optional border and they automatically reflow text within that border. Text boxes are placed with the add textbox 24 button, and require clicking twice to specify the top left and bottom right corners of the box.

text properties dialog

Locked controls whether or not the text 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.

Layer controls the text’s layer. 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.

There are several formatting options: text can be bolded, italicized, left/right/center aligned, and reversed. Regular text objects (not text boxes) can also have their vertical alignment adjusted. The knockout option, which is also limited to regular text objects, adds a solid rectangle surrounding the text and makes the text itself a negative cutout.

The text itself can use any TTF font available on your system, or the built-in KiCad stroke font.

User fonts are not embedded in the project. If the project is opened on another computer that does not have the selected font installed, a different font will be substituted. For maximum compatibility, use the KiCad font. Also consider converting text objects to polygons before sharing a project (right click a text object → Create from SelectionCreate Polygon from Selection…​). Text converted to polygons is not editable as text, but will render identically on any computer.

You can adjust the text size with the text width and text height controls. When you are using the KiCad font, you can also adjust the stroke width with the thickness control.

Position X and position Y control the text object’s location. These properties are not available for text boxes.

Orientation is the rotation angle of the text object. You can select an angle in 90 degree increments from the dropdown, or type in an arbitrary angle.

Text boxes additionally have options controlling their border. The border checkbox makes the border visible or invisible. For visible borders, you can adjust the border’s thickness with the border width control and the line style with the border style control (solid, dashed, dotted, dash-dot, or dash-dot-dot).

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

Feature Markup Syntax Result

Superscript

text^{superscript}

textsuperscript

Subscript

text_{subscript}

textsubscript

Overbar

~{text}

text

Variables

${variable}

variable_value

Symbol Fields

${refdes:field}

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.

Bulk editing text and graphics

Properties of text and graphics can be edited in bulk using the Edit Text and Graphics Properties dialog (EditEdit Text & 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 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.

Selected items only filters to the current selection.

Action

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), orientation (keep upright), and alignment (center on footprint). 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.

dimensions

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.

Arrow length: Sets the length of the arrow segments of the dimension’s shape. A negative arrow length reverses the arrow direction.

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

Extension line overshoot: Sets the distance from the dimension’s line to the end of the extension lines.

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 four main routing functions: Route Single Track, Route Differential Pair, Tune length of a single track, 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 two 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 and later, this behavior is 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+/). При выполнении трассировки с закруглёнными углами за каждый шаг трассировки будет размещаться прямой сегмент, дуга или прямой сегмент и дуга вместе. Наклон дорожки определяет размещение дуги или прямого сегмента, в качестве первого элемента.

Track corners can also be rounded after routing by using the Fillet Tracks command after selecting the tracks on either side of the corner to be filleted. If a contiguous track selection contains multiple corners, they will all be filleted.

Dragging of tracks with arcs is not supported. Arcs are treated as immovable by the shove router.

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

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), которая выполняет переключение на следующий слой активной пары слоёв.

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

After using any of the above methods to add a via and change layer, but before clicking to fix the via and commit the current trace segment, you can cancel placing the via by pressing V. The via will be removed and routing will continue on the original layer.

You can place a via and end the current trace, without changing layers, by pressing V and then double-clicking or Shift-clicking to place the via.

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

You can also place microvias and blind/buried vias 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.

Routing Convenience Functions

KiCad offers several functions to make certain routing operations more convenient.

If you need to route a number of traces from a set of pads, you can use the Route Selected tool to quickly route from each pad in sequence. Select the pads you want to use as starting points, then press Shift+X to route from each pad in sequence. The router will begin a trace from the first selected pad, which you can route as you would any other trace. When you complete the trace, the router will automatically begin a new trace from the next pad in the selection, in the same order that you selected the pads. Pads that already have traces attached are skipped. You can also skip routing the current trace and move on to the next pad by pressing Esc. You can also select footprints instead of pads; all unrouted pads in the selected footprints will be used as starting points.

If you want to route a number of traces to a set of pads, instead of from the pads, you can use the Route Selected From Other End tool (Shift+E). This tool works the same way as the Route Selected tool, except it uses each selected pad as an end point rather than a starting point. The starting point for each trace is the other end of the ratsnest line for each selected pad.

Routing from the other end is also possible while routing individual traces: press Ctrl+E while routing a trace to commit the current segment and begin routing from the other end of the in-progress trace’s ratsnest line.

Finally, you can quickly unroute traces connected to an object (footprint, pad, or trace) by selecting the object, right-clicking, and selecting Unroute Selected. Any traces connected to the selected object will be removed, starting at the selected object and continuing until another pad is encountered.

Automatically completing traces

KiCad’s router can automatically route individual traces, based on the connections defined in the schematic. This can be thought of as a limited form of auto-routing that considers a single trace at a time. The router will only use the current layer; it will not use vias or change layers.

While routing, press the F key to have the router attempt to automatically finish the current trace. The trace will be automatically routed from the end of the last fixed trace segment to the closest ratsnest anchor. If the router can’t automatically finish the trace, it will allow you to complete the trace manually. This action can also be performed by clicking Attempt Finish in the context menu while routing.

When the router is not the active tool, you can automatically route multiple traces by selecting footprints, pads, and traces to route from and pressing Shift+F. You do not need to select both ends of a desired connection; the router will route from the selected item to its nearest ratsnest anchor. If multiple items were selected, each item will be routed in sequence, in the order that they were selected. If a connection cannot be automatically completed, the tool will pause with the router active so that you can complete the trace manually. With the automatic completion paused for a manual connection, you can press Esc to skip routing the current trace. After manually completing the trace or skipping the connection, the tool will continue attempting to route the remaining connections.

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

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.

You can modify the width of tracks and the size of vias, without re-routing them, in the properties of the track or via. You can choose a predefined size or set the size to an arbitrary value. You can also change the position of tracks and vias or change a via’s start and end layers.

pcbnew track via properties

To modify tracks and vias in bulk you can use the Edit Track and Via Properties dialog (EditEdit Track & Via Properties…​)..

pcbnew edit track and via properties

Scope settings restrict the tool to editing only tracks, vias, or both. If no scopes are selected, nothing will be edited.

Filter Items restricts 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, via size filters do not apply to tracks). 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 net filters to items assigned the specified net. Filter items by netclass filters to items assigned to the specified netclass.

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

Filter tracks by width filters to tracks with the specified track width. Filter vias by size filters to vias with the specified track width.

Selected items only 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 set to the default value from the net class (or custom rule) by selecting set to net class / custom rule values.

Drop-down lists can be set to -- leave unchanged -- to preserve existing values, or set to a pre-defined track or via size to change the filtered objects' size. You can also change the filtered objects' layer.

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

The length tuning tools can be used to add serpentine tuning shapes to tracks after routing. Length tuning shapes are persistent objects that can be modified after they are created. To tune the length of a track, first pick the appropriate tool.

  • The single-track length 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 length 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.

When a tuning tool is active, you can hover over traces in the board to show a status window that displays their current length or skew as well as the target values. Click on the desired trace to start tuning it. As you move the mouse cursor along the track, meander shapes will be added interactively. If a target length has been set, meanders will stop being added when the target length is reached. You can set a target length with custom DRC rules or in the tuning shape properties; both methods are explained below. The popup window next to the cursor shows a live measure of the length or skew compared to the design targets. You can adjust the spacing (1 to increase and 2 to decrease) and amplitude (3 to increase and 4 to decrease) while you tune. When you are done, click again to commit the tuned shape. The tuned trace doesn’t need to be perfect because you can adjust the shape after committing it. You can also place multiple tuning shapes on the same track.

The length tuning tools only support tuning the length of point-to-point nets between two pads. Tuning the length of nets with different topologies is not supported.
Differential pair length tuning can only be applied to the coupled portions of differential pairs. To apply length tuning to the uncoupled portions of differential pairs, you must use single-track length tuner.
Editing tuning patterns

After a tuning pattern has been added, it can be selected, modified, and moved. While it is selected, the target length and routed length are shown in the message panel at the bottom left of the window.

A tuning pattern

When a pattern is selected, editing handles appear, which let you adjust the pattern geometry.

  • Dragging the handles at the ends of the pattern will expand or contract the pattern along the trace.

  • Dragging the corner handle towards or away from the trace will respectively decrease or increase the maximum meander amplitude.

  • The final handle controls the meander spacing; dragging it towards the corner handle will increase the spacing, while dragging it away from the corner handle will increase the spacing.

The selection box and editing handles represent the maximum allowable extents of the tuning pattern. Making the box smaller will reduce the size of the tuning pattern, even if this results in the tuned trace being shorter than the target length. When the box is enlarged, the tuning pattern will expand to fill the box until the target length is reached.

You can move a tuning pattern along its track by selecting it and dragging with the mouse, or using the Move tool (M). Deleting a tuning pattern (Del) removes the tuning pattern and restores the original untuned tracks. You can also ungroup the tuning pattern, which will decompose it into its component tracks. The basic tracks have the same shape as the tuning pattern but can be edited individually. Once ungrouped into tracks, a tuning pattern cannot be regrouped.

Another way to edit a tuning pattern is through its properties dialog. The properties dialog exposes several additional parameters that can’t be modified using the on-canvas interactive editor. These properties can also be edited in the properties manager.

Pcbnew drill origin setting

As with the interactive editor, you can set a maximum amplitude for the tuning pattern and a spacing between meanders, but here you can set a minimum amplitude and configure the corner style. Corners can be filleted (rounded) or chamfered. In each case you can set the radius as a percentage of the maximum possible radius for the spacing and amplitude. You can also configure the tuning pattern to be single-sided, which restricts it to one side of the baseline, as opposed to the default style which positions meanders on both sides of the baseline.

You can set default values for these properties in the Design RulesLength-tuning Patterns page of the Board Setup dialog. Each type of tuning pattern (single track length, differential pair length, and differential pair skew) can have its own defaults.

Finally, the tuning pattern properties dialog is one of two ways to set the target length or skew for a tuning pattern. Setting length targets is explained below.

Setting target length and skew

There are two ways to set a target length or skew for a net:

  • In the properties dialog for a tuning pattern that has already been added.

  • Using a custom DRC rule with the length and/or skew constraints.

The first method is to in the target length or target skew field of the tuning pattern’s properties dialog. This target will only apply to the selected tuning pattern. Therefore, length targets set in this way must be set separately for each tuning pattern in the design. The properties dialog for a tuning pattern is only accessible after the pattern is initially created, so changing a target length or skew in this way may require the pattern to be adjusted to meet the new target value, if the pattern’s geometric constraints do not allow sufficient space to meet the new target.

You can also set a target length and/or skew using custom design rules. If custom rules are used, they will override any targets set in tuning pattern properties, unless the override custom rules checkbox is enabled in the tuning pattern properties.

Using a custom rule allows you to set a net’s target length and/or skew up front, before a pattern is created. With custom rules you can set different length and skew targets based on specific criteria, such as netclass or net name. You will also result in a DRC violation if the net’s length or skew is out of bounds.

When target length or skew is adjusted in a custom DRC rule after a pattern is created, the pattern geometry will not be automatically updated to achieve the new target. You can use EditUpdate All Tuning Patterns to recalculate all tuning patterns to meet the new targets.

The following example custom rule sets a target length and skew for nets in the high_speed netclass. The target length is 100mm, and a DRC error will be raised if it is below 95mm or above 105mm. The target skew is at most 0.1mm.

(rule "target length and skew"
      (condition "A.NetClass == 'high_speed'")
      (constraint length (min 95mm) (opt 100mm) (max 105mm))
      (constraint skew (max 0.1mm)))

See the custom rule documentation for more details of how to create rules that only apply to certain nets.

Length tuning pitfalls and tips

The length tuner only tunes nets with a point-to-point topology; branching nets are not supported. When the length tuner encounters a branch, it stops at the branch and only considers the length of the net up to that branch.

Sometimes you may end up with leftover stub tracks somewhere in your design. These can turn what appears to be a point-to-point net into a branched topology, which will prevent length tuning from working as expected. It may be easier to find such stub tracks when you switch footprints, vias, and tracks to outline mode (pad sketch 24, via sketch 24, and showtrack 24 buttons, respectively). You can also use the track cleanup tool (ToolsCleanup Tracks and Vias…​) to remove many of these stubs automatically.

By default, the length tuner includes vias in its length calculations. Only the layer-to-layer length of the via is used, which may be shorter than the full top-to-bottom via height if the tuned path is not exclusively on the board top and bottom. The accuracy of this calculation depends on the board stackup being accurately configured. Via length can be ignored in length tuner calculations by deselecting include stackup height in track length calculations in the Constraints page of the Board Setup dialog.

The length tuner is optimized for adjusting the effective electrical distance between two points, and therefore it calculates net length in a slightly different way than other tools, such as the Net Inspector. In addition to discounting net branches and unused portions of vias, the length tuner also optimizes paths through pads to use the shortest possible path in its calculations. In comparison, the Net Inspector reports a simple summation of copper segment lengths. Both calculations are accurate, but they are optimized for different purposes. These differences are discussed in more detail in the Net Inspector documentation.

Teardrops

Teardrops are areas of extra copper that smooth the transition between track and pads, vias, or other tracks. Teardrops are added to increase the mechanical robustness of a trace connection. They also reduce the risk of a misaligned drill hole disconnecting a trace from a drilled pad or via.

teardrop on a through hole pad

You can add teardrops to your design in bulk using the EditEdit Teardrops…​ dialog. This dialog has controls for filtering which objects are affected and settings for configuring the shape of the new teardrops. It also lets you edit or remove existing teardrops.

The Scope section controls which types of objects will be affected: PTH pads, SMD pads, vias, and/or track-to-track connections. The Filter Items section lets you filter objects by other criteria; you can filter items by net, net class, and layer, or choose to act only on round pads, pre-existing teardrops, or the objects in your selection.

The Action section controls whether to add or remove teardrops, as well as the size and shape of the new teardrops. Adding a teardrop to an object that already has a teardrop will update the existing teardrop with the new settings. When adding teardrops, you can choose to use the default teardrop settings from the Board Setup dialog, or choose specific values for the new teardrops.

Prefer zone connection: if selected, a teardrop will not be created if the object is also connected to a zone. Allow teardrops to span 2 track segments: if selected, the teardrop will be able to spread over a second track segment if the first segment is too short to support a full teardrop. Maximum track width: a teardrop will not be created for a track connection that is wider than this percentage of the pad width (minimum pad dimension). Best length: the ideal length of the teardrop, as a percentage of the width (smallest dimension) of the attached object. Maximum length: the maximum length of the teardrop, as an absolute length. Best width: the ideal width of the teardrop, as a percentage of the width (smallest dimension) of the attached object. Maximum width: the maximum width of the teardrop, as an absolute width. Curved edges: if selected, the teardrop edges will be curved instead of a straight line. If curved, points controls the number of points in the curve; more points will result in a smoother curve.

Edit Teardrops dialog

Default properties for teardrops can be configured in the Board Setup dialog. These defaults will be used in the Edit Teardrops dialog when add teardrops with default values for shape is selected in that dialog. The defaults are configured separately for teardrops connecting to round shapes, rectangular shapes, or between tracks. The available options for each type of teardrop are the same as in the Edit Teardrops dialog.

Board Setup Teardrops panel

Rather than in bulk, you can add or edit teardrops for individual vias in the properties dialog for that via, or for individual pads in the Connections tab of the pad’s properties dialog. The settings in the properties dialogs are the same as in the Edit Teardrops dialog. You can also edit teardrops for individual pads and vias with the Properties Manager.

Pad Properties Connections settings

Teardrops in KiCad are small zones, meaning that when they refill they avoid shorting to copper objects on other nets. They are initally filled when they are added, but they are unfilled and refilled with other zones on the board: when using the Unfill All Zones and Refill All Zones commands, running DRC, generating fabrication outputs, etc. Teardrops can be shown in filled or outline mode using the zone display controls in the left toolbar.

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

The interactive router settings can be accessed through the Route menu, or by right-clicking on the Route Tracks icon button in the toolbar. These settings control the router behavior when routing tracks as well as when dragging existing tracks.

pcbnew interactive router settings
Setting Description

Mode

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.

Allow DRC violations

Allow placing tracks and vias that violate DRC rules. This option is only available if the router mode is set to Highlight collisions.

Shove vias

Allow the router to shove vias along with tracks. When this is disabled, vias cannot be shoved. This option is only available if the router mode is set to Shove.

Jump over obstacles

Allow the router to attempt to move colliding tracks behind solid obstacles (such as pads). This option is only available if the router mode is set to Shove.

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.

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.

Options

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.

Options

The tool has several options to control its behavior.

Option

Description

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.

Values

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.

Locked items are displayed with a colored shadow around them. This can be customized in your color scheme.

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

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.