Post-V8 New Features and Development News

There is a new tool for creating “real” outsets from a limited set of shapes: segments, rectangles, circles and pads (except trapezoidal or custom shaped). If you choose rounded corners, these use real arcs rather than interpolated polygons:

2024-09-19_17-42 outset rectangle

When possible (i.e. no arcs), you also get polygons back, which means you can do boolean operations on them. This means quite a few common fiddly operations in footprint drawing become more straightforward:

When possible (mostly for rectangle-based outsets), it can be asked to attempt to round outwards to some grid multiple. This can be used, for example, for rounding courtyards to the IPC-recommended 0.01mm grid rather than manually bumping things around by 0.005mm here and there.

It can also be used (with a little manual trimming of end caps) for, say, snake-shaped slots:

outset arcs chain

The ‘bounding hull’ tool still exists and remains the only way to handle arbitrary polygons (in particular ones with holes or concave corners).

41 Likes

A small feature. You can now reverse the scroll wheel’s zoom behavior:

22 Likes

You can set the point that a reference image in the schematic and PCB editors scales around. This allows you to keep a certain point in the image fixed while you scale the image to match another point:

22 Likes

There is a Bezier curve creation tool in the schematic and PCB editors:

Like the arc tool, there are some guide lines in the PCB editor, and by default it chains them as tangent to each other. The backspace key works in the same way as the arc tool. The interactive edit guides are not (yet) in the schematic editor (same for arcs). Beziers were already importable and editable once imported, but now they can be created from scratch.

19 Likes

There is an option in symbol editor to keep pins attached by their “roots” to rectangles when dragging edges by the central handles:

You can bypass it when needed using the corner handles.

If the shape is shared in all units, attached pins in all units are moved. If the shape is only in a single unit, only the pins in the same unit move with it.

26 Likes

It is now possible to set component classes on symbols in eeschema. Directive labels attached to a rule area can now take a ‘Component Class’ field - any symbols within the rule area will be assigned that component class. The ‘Component Class’ field can be set directly on symbols too:

Symbols can have more than one component class, taking on any that are defined directly on the symbol (or any of its sub-units), or from any directive labels attached to any rule areas which contain the symbol.

In the PCB editor, component classes are attached to the symbol’s footprint:

There are two new DRC expressions / functions to support querying component classes:

(condition "A.ComponentClass == 'CLASS_1,CLASS_2'")

to test against the full list of component classes, where the composite component class is a comma-delimited list in alphabetical order), and

(condition "A.hasComponentClass('CLASS_1')")

to query against a specific component class.

21 Likes

In KiCad 9, plated through-hole pads and vias will be displayed differently than in previous versions. Now, the copper annular rings for these items will be shown in the same color as other copper items on the same layer.

Blind/buried vias and microvias now are drawn with the colors of their start and end layer in the drill hole:

These changes were made to make dense and complex boards easier to understand, and as part of preparing to add support for complex padstacks (where vias and pads may have different sizes and shapes on different copper layers) to KiCad

37 Likes

KiCad now supports PTH pads with different copper shapes on different layers. This is one type of custom padstack; other padstack features will be added over time.

40 Likes

Andrzej Wolski added the ability for copper tracks on outer layers to have soldermask removed:

42 Likes

There are now optional indicators (toggled in the view menu and schematic editor settings) to indicate when pins have alternate modes available, as this was otherwise only visible by noticing the appearance of an entry in the context menu:

image

29 Likes

In the PCB editor, you can toggle the session locked item prompt from settings:

image

Now you don’t need to keep the lock prompt on when you don’t really want to to avoid of having to restart if you want them back.

15 Likes

Zone corners can now be chamfered during editing in pcbnew:

31 Likes

@dtreffenstaedt Added a new DRC check for acute angles. You can now write rules like:

(rule test_track_angle (constraint track_angle (min 135)) (severity error) )



24 Likes

Some copy-paste updates:

  • You can now paste images from the clipboard as reference images in Schematic and PCB Editors (and page layout)
  • There is a ‘Copy as Text’ action which allows you to copy the text content of text items, fields, labels, tables/tablecells, and dimensions. This can be useful when you want to copy the text out of KiCad, but not as s-expression.
  • PCB Editor now allows pasting text directly as text items in the same way as in schematics.
26 Likes

When clicking a clearance DRC error, KiCad now displays it in the editor.

40 Likes

There is a scroll-action feature in PCB, Schematic, Footprint and Symbol editors. Shift-Alt-Scroll is a primary function and Ctrl-Alt-Scroll is a secondary function.

The current bindings are to use this to increment text, with the rightmost “part” being primary and the next rightmost part being secondary. For example, Shift-Alt-Scroll on “B2” goes to “B1” or “B3”, Ctrl-Alt-Scroll goes to “A2” or “C2”. This is a bit heuristic, but seems to work well for the obvious cases.

  • Footprint editor: pad numbers and text
  • PCB editor: text
  • Symbol editor: pin numbers or names (depending on mouse position) and text
  • Schematic editor: labels and text

As a side effect of being able to detect the mouse being over name or number, the symbol editor “Edit Pin” dialog now puts the initial focus on the number field if the mouse was over it when double-clicked or on ‘E’.

28 Likes

Hasan Jaafar contributed an implementation of inward-facing dimension arrows.

Amongst other things, it will greatly help making dimensioned footprint drawings.

25 Likes

There is a new tool in the PCB editor called “Position Interactively”. It allows you to position an item by drawing a line and then redefining what that line should be.

The obvious use is a more direct way to manipulate objects than first getting it into a known position and then using Move Exact. However, it can also be used to set alignment in one axis or the other:

And the vector doesn’t have to be on either object, so it allows to directly use a dimension of something else and use it as a movement for the selection:

26 Likes

KiCad now has a creepage DRC rule.

It can be set via a user rule like this one:

(version 1)

(rule HV_HV
   (constraint creepage (min 20mm))
   (condition "A.hasNetclass('A') && B.hasNetclass('B')")
)

28 Likes

It is now possible to export the board 3D model in STL and PLY formats

image

27 Likes