I understand the insideCourtyard() for PCB 8.0 condition is now deprecated, but is there a replacement for it?
Looking at the KiCad 8.0 documentation for Custom design rules, the BGA neckdown rule is still mentioning the insideCourtiard condition, and I have tried it, but it does not seem to work right, it expands to the entire board instead of being contained to the courtyard of choice (i.e. U3 or whatever component I’m choosing). Any suggestions?
The documentation tells you what function to use instead of insideCourtyard(), in the description for insideCourtyard() It is deprecated solely because the name was misleading. The replacement function intersectsCourtyard() behaves identically but has a more accurate name.
I made a quick bogus schematic and a new project and here’s how to reproduce the issue I see:
No custom rules, fill the zone. Observe the correct spacing between GND fill and the pads or vias (10mil in my case). The spacing is correct outside and inside the courtyard of U1.
Observe the spacing between the GND fill and the pads, inside and outside the courtyard of U1. Inside the courtyard, I would expect the spacing to follow the rule, but outside the courtyard, I did not expect the BGA neckdown rule to be overriding my default zone spacing of 10mil to the rule’s 4.5mil
I’m speculating and I’m not sure if this will address all of your issues, but your rule as written will apply to any object that intersects the courtyard. At a glance, that is both the trace (which is what you want) and the zone (sounds like that’s not what you want). So I would add a condition to your rule to make it apply only to traces and see if that makes you happier.
This, I think, will fix the clearance between the zone and the pads. I expect you might still have the 4.5mil clearance around the track segment outside of the courtyard. You may need to break it into two track segments, one that intersects the courtyard and one that is completely outside of the courtyard.
If you need more help, please archive your project (in the project manager) and attach the zip here.