Development Highlight: PCBNew Layers, DRC and Toolbar Palettes
Some great workflow improving changes were made to PCBNew in this Development Highlight for the future KiCad V6 😄
Layer Management
Jon Evans introduced a brand new Appearance control in commit bd14f8a82.
The entire Appearance control which is on the right hand side of Pcbnew has received a visual and functional overhaul
In addition to the existing functionality, there is now the ability to Show all Layers, Dim non-selected layers and Hide non-selected Layers
Object types also get opacity and visibility control independent of layers
Individual nets and net classes can also have color overrides sets independent of their layer
Finally, there are Layer Presets, which allow you to either use predefined presets or your own to quickly switch layer settings.
User Layers
Wayne Stambaugh in commit 188232de6 added the ability to give all layers a custom name and nine new user definable non-copper layers.
Simply set the layer set to custom
And you’ll gain the ability to add the new User Layers
Toolbar Palettes
Added by Ian McInerney in commit fc565edb3
Several toolbar actions and new ones combined into toolbar palettes under one toolbar button in "drawing toolbar" which is located on the right hand side of Pcbnew.
These need palettes when clicked on and then dragged left, will open up to show you related tools you can activate and replace the existing tool button with.
New Design Rule Check (DRC) Engine
Thanks to the work of multiple contributors including Tomasz Wlostowski, Jeff Young, and others. The DRC engine and dialog in PCBNew have received an overhaul.
The DRC dialog has received a visual uplift.
As a major part of the DRC engine overhaul, it has been made possible to script your own rules which allows for more complex rules than can be described by a dialog and makes it easier to reuse them across projects.
The Board Setup window under File > Board Setup contains the new page to store the rules
Rules look like this
(rule HV_HV
# wider clearance between HV tracks
(constraint clearance (min "1.5mm + 2.0mm"))
(condition "A.NetClass == 'HV' && B.NetClass == 'HV'"))
(rule HV_unshielded
(constraint clearance (min 2mm))
(condition "A.NetClass == 'HV' && !A.insideArea('Shield*')))
More info on the syntax can be found by clicking the Syntax Help link in the Rules page of Board Setup and documentation will be updated for version 6.
These features and nightly builds are in development, please only use them for testing and experimentation |
See Also
Development Highlight: 3D Viewer Improvements
2020-09-26
The 3D Viewer has seen a few incremental improvements during the course of V6 development. Not all changes to KiCad have to large by themselves to improve KiCad.
Development Highlight: CADSTAR PCB Importer
2020-09-22
Roberto Fernandez Bautista had a growing desire at his workplace to migrate away from CADSTAR. After trying and finding migration paths to other EDA tools inadequate and poorly supported, he has leveraged the open source nature of KiCad to create just what he needs and contribute to the greater community :D Thanks to his hard work in MR#279,KiCad is now able to import CADSTAR PCB files! With the schematic importer coming soon.