1

This topic will be used to announce new features and other significant development updates during the KiCad 9 development cycle.

This topic is only for announcements. Please start new topics to discuss new features.

Ethan Chien has contributed a new Zone Manager feature, which allows easy preview and adjustment of zone priorities and other settings:

image

Added text-justify actions (so that you can assign hotkeys to them, if desired).

image

Ability to override locked footprints when updating PCB from schematic.

image

Expand All / Collapse All for Footprint Editor and Symbol Editor.

image

@jp-charras added the ability to hide hidden fields from the symbol editor (View > Show Hidden Fields, and the spreadsheet icon on the left toolbar – this icon is a placeholder until we design a new one)

image

Ability to add comments to ERC and DRC exclusions.

image
image

Selection filter for schematic/symbol editors

image

Ethan Chen has contributed a new sheet pin/hierarchical label synchronization tool. This tool provides management of sheet pins and their associated hierarchical labels instead of having to switch back and forth between the sheet and schematic.

sync_sheet_pins

11

Added support for importing Altium Schematic in ASCII format.

Backported to 8.0.2.

Previously only binary Schematic/PCB/Library Altium formats were supported.

12

Added PCB 3D image raytracing rendering from CLI, with transparent background support.

Usage string
Usage: render [--help] [--output OUTPUT_FILE] [--define-var KEY=VALUE] [--width WIDTH] [--height HEIGHT] [--side SIDE] [--background BG] [--quality QUALITY] [--preset PRESET] [--floor] [--perspective] [--zoom ZOOM] [--pan VECTOR] [--pivot PIVOT] [--rotate ANGLES] INPUT_FILE

Renders the PCB in 3D view to PNG or JPEG image

Positional arguments:
  INPUT_FILE        Input file

Optional arguments:
  -h, --help        Shows help message and exits
  -o, --output      Output file [nargs=0..1] [default: ""]
  -D, --define-var  Overrides or adds project variables, can be used multiple times to declare multiple variables.
                    Use in the format of '--define-var key=value' or '-D key=value' [nargs=0..1] [default: {}]
  -w, --width       Image width [nargs=0..1] [default: 1600]
  -h, --height      Image height [nargs=0..1] [default: 900]
  --side            Render from side. Options: top, bottom, left, right, front, back [nargs=0..1] [default: "top"]
  --background      Image background. Options: transparent, opaque. Default: transparent for PNG, opaque for JPEG [nargs=0..1] [default: ""]
  --quality         Render quality. Options: basic, high, user [nargs=0..1] [default: "basic"]
  --preset          Color preset. Options: follow_pcb_editor, follow_plot_settings, legacy_preset_flag, ... [nargs=0..1] [default: "follow_plot_settings"]
  --floor           Enables floor, shadows and post-processing, even if disabled in quality preset
  --perspective     Use perspective projection instead of orthogonal
  --zoom            Camera zoom [nargs=0..1] [default: 1]
  --pan             Pan camera, format 'X,Y,Z' e.g.: '3,0,0' [nargs=0..1] [default: ""]
  --pivot           Set pivot point relative to the board center in centimeters, format 'X,Y,Z' e.g.: '-10,2,0' [nargs=0..1] [default: ""]
  --rotate          Rotate board, format 'X,Y,Z' e.g.: '-45,0,45' for isometric view [nargs=0..1] [default: ""]

Isometric video render example:

kicad-cli pcb render --floor --zoom 1.4 --rotate '-45,0,45' -o render.png video.kicad_pcb
image

Previously it was not possible to use kicad-cli for rendering 3D images.

JamesJ has moved the Net Inspector to a docked panel (View > Show Net Inspector to show/hide)

Screenshot 2024-03-18 at 9.05.55 PM

This includes improved filtering and grouping UX, the ability to show/hide and reorder the columns, and save/restore of all the settings.

Jan Wichmann added tolerance calculations to the calculator regulator panel.

pcb_calculator_view

16

Solid 3D model export improvements:

  • Option to fuse copper geometry together
  • Option to export copper on inner layers
  • Options to exclude board body or components
  • Net filter (can be used to export a single net)
  • Zone geometry approximation with arcs for faster processing and smaller file sizes
  • Export in BREP or XAO formats

XAO defines pad surfaces as face groups and can be imported into SALOME or newer versions of Gmsh for FEM simulations:

image

Extended the physical_clearance rule to apply between copper fills & footprint courtyards.

(rule "No copper pours under Capacitors"
    (constraint physical_clearance (min 0.1mm))
    (condition "A.Type == 'Zone' && B.Reference == 'C*'")
)

will knock out the courtyard of any footprint whose reference starts with “C” from all copper fills.

@JamesJ added support for schematic rule areas that allow users to draw a shape to which net class directives can be attached.

netclass_rule_area

small tool added (by S.Hillbrand) to the context menu: Shape modification–> simplify polygon

simplify_02

Control over via tenting on top and bottom sides, at a board level and per-via overrides.

image
image

Note: this replaces the “tent vias” checkbox in the Plot dialog, which is now gone.