Don’t worry @eelik, you won’t be able to please both of us. Tom’s development style and my development style are at opposing ends of the feedback axis.
Most of the heavy lifting at present is being done by Tom, so favouring his approach right now probably makes most sense…
DRC and zone filling have now been moved over the the new rule-based engine. So the rule syntax can now be considered semi-frozen.
I’ve also added something that will help debugging your rules. See Inspect > Clearance Resolution… (You’ll need to select the two elements between which you want to inspect the clearance first.)
Hi everyone,
I’m trying to control the clearance between zone fills/tracks to the board edge and mounting holes (I need bigger clearance for mounting holes). Any idea how should I do that on the latest nightly?
We just changed the file naming system for the design rules files.
Previously the file was just called drc-rules but that was problematic because we don’t prevent more than one project in a directory. So, now the file is called <boardname>.kicad_dru
If you have an existing project that you’ve been testing with, you must manually rename the file (or else open your old file in a text editor and paste the contents into the design rules setup dialog in PcbNew)
I’m trying to create a rule that allows me to highlight if the center distance between testpoints is less than 2.54mm.
Or since I use testpoints with a diameter of 1mm, the distance between the pads should be 1.54mm.
I have made several attempts but the DRC does not show me errors even if I approach your testpoints with each other with spacing between the pads less than 1.54mm.
I don’t know how to specify in the expression that a pad is part of a component in this case the testpoint.
An example:
(version 1)
(rule “Distance between test points”
(constraint clearance (min 2.54mm))
(condition “A.memberOf (‘TP29’) && B.memberOf (‘TP30’)”)
)
I had seen an example with padOf but this no longer exists in the last nightly.
Perhaps this type of rule is not yet possible to implement?
Thanks
NB:
I had opened a discussion where I also posted photos.
Clearance constraints are not checked when the net is the same, so that’s your first problem. Try using hole_clearance instead.
Second, memberOf() is only for groups, not footprints. So you’ll need to edit your test point footprint to add the pad to a group with a name. (But they can all be the same name, which will making writing the rule easier.)
Thanks,
I created the rule using the group name and it worked for all test points that are not on the same net.
For the test points on the same net what can I do? the pad is SMD and has no through holes.
I added “hole_clearance” but test points that break the rule are not detected.
I could use a graphics layer that has the same diameter as the pad.
I’ll do a test tomorrow.