[Solved] Incorrect Courtyard DRC error

Hi,

I updated to kicad 5.1 from kicad 5.0, and I’m getting new DRC errors that I think I wasn’t getting before.

One of them is an incorrect courtyard error. I have some parts that are meant to be on top of others: PCB elements, like predesigned track patterns or PCB antennas, silkscreen elements, like text that I want to keep as a “footprint”, or logos, etc… I don’t want to trigger DRC errors with them, but if I define a courtyard, it will trigger a courtyard collision, and if I don’t, it will trigger a lack of courtyard error. I settled for a small circle of .1mm radius in the courtyard area (because it’s only two clicks, instead of 4 of a rectangle, and I like the circle better :smiley:). So far, that worked as long as I didn’t place that circle inside other component’s courtyards, but starting in Kicad 5.1, that is triggering the incorrect courtyard error. Changing it to a square made out of graphic lines solves the issue. Is that a bug? I don’t see anything on the changelog that references it, but I would like to ask before filling a bug report

I did a little test, Removed the rectangular courtyard from 2 components and replaced them with a circle each, and then did a DRC check. It had 0 errors.

Then I completely removed the courtyard of another component and redid the DRC check. Still no errors. (Has this changed in V5.1?)

Just to be sure DRC was working I moved yet another component, and then I had 3 DRC errors with “Track too close to pad” and one with “Courtyards overlap” and 3 with “Unconnected items”, so DRC works.

When I made a courtyard of a non closed shape of 3 polyline segments it complained with: "Footprint has incorrect courtyard (not a closed shape)

So at least My KiCad V5.1 behaves as I would expect, and I can’t help you further.

My version info currently is:

Application: kicad
Version: 5.1.0+dfsg1-1, release build
Libraries:
wxWidgets 3.0.4
libcurl/7.64.0 OpenSSL/1.1.1b zlib/1.2.11 libidn2/2.0.5 libpsl/0.20.2 (+libidn2/2.0.5) libssh2/1.8.0 nghttp2/1.36.0 librtmp/2.3
Platform: Linux 4.19.0-4-amd64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.67.0
OpenCASCADE Community Edition: 6.9.1
Curl: 7.64.0
Compiler: Clang 7.0.1 with C++ ABI 1002

Build settings:
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=ON
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_PYTHON3=ON
KICAD_SCRIPTING_WXPYTHON=ON
KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
KICAD_SCRIPTING_ACTION_MENU=ON
BUILD_GITHUB_PLUGIN=ON
KICAD_USE_OCE=ON
KICAD_USE_OCC=OFF
KICAD_SPICE=ON

5.1 has checkboxes for courtyard checks in Board Setup->Design Rules, perhaps unintuitively.

1 Like

Found it. Tnx for the tip.

Being able to disable courtyard checking is a plus (for hand assembly, etc) but as the DRC controll itself has some check boxes I did not expect settings to be elsewhere also, so indeed unintuitive.

I did some more research. The error only triggers if the circle is between 0.0375mm and 0.072mm in diameter. I had some parts with both 0.1mm and 0.01mm circles and they wouldn’t trigger the error, but I had others with .05 mm and they would. I tried with other values and I can consistently trigger it.
@paulvdh, can you try to replicate it with a .05mm (50μm)?

Results same here.
DRC errors with radiuses of 0.04 through 0.07 (inclusive).

I made an array of footprints from a resistor, deleted most of the graphics and placed a circle with different radius on F.CrtYd.

In case you want to play some more, I’ve added the PCB:
asdf.kicad_pcb (82.4 KB)

1 Like

Would you be able to post this to the bug tracker as well? I would guess it has to do with line width but I’m not 100% on that.

1 Like

The bug report has been created, you can follow its progress here

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.