Post-V8 New Features and Development News

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

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

38 Likes

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

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

27 Likes

Jan Wichmann added tolerance calculations to the calculator regulator panel.

18 Likes

Miklós Márton added an option to change sheet names in the schematic hierarchy navigator.

21 Likes

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:

32 Likes

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.

14 Likes

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

42 Likes

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

16 Likes

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

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

24 Likes

Tables in Schematic Editor, Footprint Editor, and PCB Editor.

37 Likes

Mark items excluded from simulation:

14 Likes

DNP (and friends) at the sheet level:

29 Likes

@JeffYoung added a feature that lets you create ERC/DRC errors and warnings from textboxes and fields:

New text variables:

${ERC_WARNING <custom title>}
${ERC_ERROR <custom title>}
${DRC_WARNING <custom title>}
${DRC_ERROR <custom title>}

Variables must be at the start of a field, text item or textbox to be recognised by ERC/DRC.

They resolve to the empty string on the canvas.

21 Likes

Allow editing unit in Edit Reference Field dialog:

22 Likes

Plotting of pad outlines and numbers on fabrication layers:

17 Likes

Right-click action to remove Ignored Tests from the ERC/DRC dialogs:

24 Likes

You can now embed various elements in your schematics, pcb layouts, footprints and symbols:

  1. Worksheets

  2. Datasheets:

  3. 3d Models:

  4. Fonts:

43 Likes

Export silkscreen and soldermask as flat faces to STEP / GLB (Binary glTF) / BREP / XAO
(since May)

33 Likes

New ERC check for local and global labels with the same name (from Wishlist: ERC local/global net name collisions (#9461) · Issues · KiCad / KiCad Source Code / kicad · GitLab)

24 Likes

New ERC check for wires with unconnected endpoints.

30 Likes