Platform forum

Table in Clearance Rule when custom query is specified

Tom Yunghans , 12-12-2020, 09:40 AM
Hi Robert, I just watched your video "How to create Filters & Rules EASY". Thank you for those tips!

However, there is something that has been confusing me for a long time that I am hoping that you can clarify. When a Clearance Rule is defined, the "PCB Rules and Constraints Editor" has a table which shows many combinations of types of objects to each other. If the "first object" and "second object" are both "All", this table makes sense, it allows you to specify different clearances between different types of objects without having to create a different rule for each one, assuming that you don't want the same clearance for all object to object combinations. However, if you use a "custom query" which limits the objects that this rule applies to, the table may not make a lot of sense. For example, in the video, you specified a clearance which only applies to non-plated" holes objects (see attached snap-shot). Since the query limits the clearance rule to non-plated holes only, than it seems like the table does not apply anymore. For example, "track to track" would not apply since tracks are not non-plated holes. It almost seems like Altium should have just removed the table whenever a custom query which limits the types of objects which are being specified. Do you agree, or am I missing something?

Thank you!

WhoKnewKnows , 12-12-2020, 12:20 PM
Interesting. I'm looking forward to Robert's response.

Meanwhile I'll guess that when Where The First Object Matches is defined by a custom query, then the user can think of the top row of objects in the constraints matrix being replaced by the objects defined in the query.
And, when the Where The Second Object Matches is defined by a custom query, then the user can think of the left column of objects in the constraints matrix being replaced by the objects defined in the query. Something like that, perhaps vise versa?

It also seems like there are some opportunities to retain "The Matrix" when custom queries are used. EG Custom query isn't always used just to define objects. Custom query could be used to limit rule application to a particular area or areas of the PCB by room definition, or to a particular layer or group of layers.
robertferanec , 12-14-2020, 03:53 AM
Hmm, good point .. I do not know how they do it. But it is possible.

PS: I would need to play with it .... and once you find out how it works, Altium may change the behavior in the next version That's why I do not spent too much time wondering about specific features in altium. I know, that it is not right, but I have spent so much time for example with length calculations, xSignals, Probing, etc ... to try to find out how exactly they work and then in the next version they just changed it - so I just stopped digging deeper into specific features.
Tom Yunghans, 12-14-2020, 11:48 AM
I have experimented with that table when both "objects matched" are set to "All" and they do appear to work properly. However, I have never experimented when those fields have anything other than "All". I don't believe I have ever seen you discuss the use of that table in any of your courses or blog posts that I have watched. Do you just set all values in the table the same? For example, if you wanted a different clearance from a track to a via, then from a track to a pad, you could enter those values in the table without creating two separate rules. Would you do that? or would you just create multiple rules?
qdrives , 12-14-2020, 04:09 PM
You always want the table, even if it is just to set the clearance for a fiducial to a polygon (advanced). You can simple the "Minimum clearance" to set all values in the table.
Queries can be very limiting (in objects) like the example of NPTH holes.

I frequently have two main queries:
- netclasses - for instance for different voltages and
- rooms (like @WhoKnewKnows also mentioned) mainly for components that do not allow the larger clearance I want/need.

The table allows you to simply give different clearances for different objects. A trace is often (always) covered by soldermask, but SMD pads and through hole pads are not (unless you use conformal coating). Rules, like IPC 2221 and IEC 60664 require larger clearances for such elements as moisture can cause problems.

The rules are processed in order from top to bottom. The first rules that matches wins and sets the clearance.

If you only work in 5V or below, then there is no big deal, but the higher the voltage, the more you may want to split.
I once had a design with 27 rules as can be seen below!

And yes, the hole line being all 0 is due to a newer release of Altium.
Some of the rules may no longer be needed with the newer features.
Tom Yunghans, 12-14-2020, 06:46 PM
Hello, thanks for your input. So in the example you gave above, the rule only applies between two pads (since you have "ispad" in both). The table has a lot of other combinations other than pad to pad clearances. So as an example, would "text to text" also require a clearance of 2.5, or would that entry be ignored since the conditions specify pad to pad?
qdrives , 12-15-2020, 12:06 PM
@Tom Yunghans So yes, in the example above it is purely a pad to pad clearance for 110V nets.
I did see that a lot of the rules just have one single clearance. However, I did find one that is more interesting.
The only time I have "text" in copper is for the marking "Top", "Bot" or for multilayer layers (1, 2, 3, 4, ...).
On silk there is more text, but that is the silk to soldermask rule.

Clearances I use are: track, SMD and TH pads, via and polygon.

Use our interactive Discord forum to reply or ask new questions.
Discord invite
Discord forum link (after invitation)

Didn't find what you were looking for?