Added
- New outputs:
- ODB: Exports the PCB in ODB++ format (KiCad 9) (782)
- IPC2581: Exports the PCB in IPC-2581 (IPC-DPMX) format (KiCad 9)
- export_3d: Exports the 3D model of the PCB in BREP, GLB, STL, STEP and
XAO (KiCad 9) (783)
- jobset: Runs a KiCad jobset (KiCad 9)
- CLI:
- `--variant` to specify which variants will be generated (See 737)
- `--defs-from-project` allows using KiCad variables for the preprocessor
(See 643)
- Variants and filters:
- Outputs with variants can now specify an `exclude_filter` in addition to the
variant. Like it was possible for transform and dnf
- Preflights:
- `consolidate_pcbs`: Used to merge PCBs before creating 3D stacked renders
(728)
- `expand_in_command` option to `set_text_variables`, used to expand %X
patterns in the command (746)
- `check_fields` mechanism to check for extra fields (774)
- Global options:
- `work_layer`: to choose the temporal layer for internal operations (713)
- Internal templates:
- `_KIBOT_DRILL_AUX_ORIGIN` option to control drill, position and gerber origin
- Workaround for people using backslashes (i.e. Windows+WSL) (719) (607)
More general than in previous versions.
- Blender Export: option to avoid soldering heatsinks
- Boardview: OBDATA support
- BoM:
- Field aliases ${QUANTITY} and ${ITEM_NUMBER} for compatibility with
KiCad's internal BoM.
- Fields ${DNP}, ${EXCLUDE_FROM_BOARD} and ${EXCLUDE_FROM_SIM}, like
the ones used by KiCad's internal BoM.
- Using `_kicad_bom_fields` in the list of columns now you can import the
fields from the KiCad's internal BoM.
- New option `group_not_fitted` to group not fitted components with fitted
components. For compatibility with KiCad's internal BoM.
- New option `sort_ascending` to sort in reverse order
- New sort style: *kicad_bom*, uses the field an ascending used by KiCad's
BoM
- `ref_range_separator` option to configure the character used for reference
ranges
- `use_ref_ranges` alias for `use_alt`
- New *kicad* format to mimic KiCad's internal BoM.
- `right_digits` option to control the decimals for position fields (739)
- New `sort_style` named `field` and `sort_field` option to sort by one or
more arbitrary fields.
- New `csv` options: (to match KiCad internal BoM functionality)
- `string_delimiter` to configure the quote character
- `keep_line_breaks` to remove line breaks in fields
- `keep_tabs` to remove tabs in fields
- Draw Fancy Stackup:
- `border_thickness`: Thickness of the borders of stackup drawing and stackup
table (747)
- A mechanism to set the font, using a text box (748)
- Drill:
- Option to don't generate the drill files, so you can generate only the maps
(720)
- Option to generate a drill table (760)
- Include table:
- A mechanism to set the font, using a text box (748)
- `force_font_width` to force a font width (752)
- Navigate Results:
- New flavor "navigate_results_rb" with a "reactive" look (768)
- Netlist:
- OrcadPCB2, Allegro, CADSTAR, PADS, KiCad XML, Spice and Spice model formats
- PCB Print:
- A mechanism to filter components for a particular layer (706)
- Workaround for Ghostscript handling %d wrong when followed by an hex digit
(763)
- Now you can include drill maps using `drill_pairs` as `repeat_layers` (764)
- Report:
- `top_total`, `bot_total`, `total_smd`, `total_tht` and `total_all`
component counts (See 730)
- Also versions of the counters for excluded (exc), not fitted (dnp) and
not changed (dnc) (See 730)
- `total_components` template, intended to generate CSV files with component
counts (See 730)
- Now you can use expressions like ${V1+V2}
- `mm_digits`, `mils_digits` and `in_digits` to change the number of digits
for unit conversions (745)
- `display_trailing_zeros` to show trailing zeros (745)
- *_cap* sufix to capitalize strings (745)
- *h2h*, *c2h* and *c2e* Hole to Hole, Hole to Copper and Copper to Edge
info (KiCad 6+) (745)
- *pad_drill_pth*, *pad_drill_npth* (and similars) for PTH/NPTH specific
drill dimensions (745)
- `csv_remove_leading_spaces` to remove leading spaces/tabs after CSV
separator (useful to generate CSV from a .txt template where elements are
aligned for easier reading) (745)
- A mechanism to get the names of the files generated by an output.
The variables are named OUTPUT_outpath_INDEX (761)
- SCH Variant and *SCH Print:
- A mechanism to paste images from outputs (714)
- *SCH Print:
- Default font for KiCad 9 (691)
Fixed
- Definitions: avoid interpreting empty definitions as the "None" string
(See 757)
- Guess for 3rd party dir: not just for v6
- SubParts filter:
- iBoM and Schematic print didn't take it into account (716)
- Any output filtering by reference ignored them (729)
- BoM
- The field name `Reference` was accepted, but didn't work
- Missing footprint information for sub-units (741)
- XLSX logo scale (750)
- Do Not Fit footprint crosses:
- Problems with footprints where the center isn't the geometric center (725)
- DRC:
- Zone refill issues with the new DRC preflight (759)
- Draw Fancy Stackup:
- Problems drawing micro vias (749)
- Confusing drawing when symmetric vias overlap
- Drill:
- Via pairs overwritten by PTH files (758)
- Navigate Results:
- Problems when using `erc: true` or `drc: true` (742)
- PCB Print:
- Problems when using the default worksheet and the internal frame plotter
(767)
- Some layer options (use_for_center, sketch_pads_on_fab_layers and
exclude_filter) not copied on repeated layers
- `sketch_pads_on_fab_layers` not inherited from parent when using
layer names (See 777)
Changed
- Default temporal layer for internal use is now "Margin", instead of "User.9"
- Draw Fancy Stackup:
- Micro vias to look closer to real world, they only span 2 layers and they
must be stacked to span more layers.
- Renderers:
- Components marked by the exclude filter, or marked virtual, were excluded
from the 3D models and solder paste processing, but the docs says this is
just for BoM (See 772)