Circle shape in F.Cu shorts several nets, but DRC does not complain

I made an error, I drew a circle in the F.Cu layer instead of F.Silkscreen. It cuts through several traces. Thereby shorting some nets.
I found out after board manufacturing.
I’m very surprised the DRC did not complain. Is this a feature that I have to enable? Or am I missing something?


What KiCad version?..

Did you enable parity check with schematic?

Kicad 6.0.5

@retiredfeline: Oh, it says I don’t.
Googling this suggest there should be a checkbox “Test for parity between PCB and schematic”

Googled image suggests the window should look like:

Some of thoes screenshots are for different versions.

  • You should run the board-editor from the main project manager. Otherwise it could be that project-settings are ignored
  • also the schematic parity test doesn’t works (== is not available) in stand-alone mode
  • You should also upgrade to v6.0.9. This contains some bugfixes compared to 6.0.5, the file-format is the same so upgrade is normally trouble-free.

Detected by DRC on latest 6.0.9+Testing
Some bug fixes since 6.0.5 were DRC faults

Also detected in 16th Dec 6.99


I’m not sure why “Test for parity between PCB and schematic” would be relevant in this case. Older versions of KiCad just ignored graphics (I assume your circle is a graphic entity) but checks for clearances between tracks and graphics on a copper layer was introduced in V5.99 as far as I can remember, which means all V6 versions should have it.

There is a possibility to ignore any and all DRC violations in PCB Editor / File / Board Setup / Design Rules / Violation Severity. I don’t see a separate item for clearance between tracks and graphics, it’s all under the umbrella of “Clearance Violation”.

I also agree with mv_ibfeew and davidrsb. Version bumps in the third digit should always be safe to upgrade. There was a *&^%$#@! some time ago with V6.0.3 and therefore it is not even listed on KiCad’s website:

That version had a Huge bug in it and was removed a few days after release, but it is a reminder to wait a week or so with updating if your income depends on KiCad.

If you can’t reproduce this in V6.0.9, then it would be nice if you can make a copy of the project, remove most of the schematic and PCB (just the footprint and some tracks connecting it to something else is best), and then zip it up and post it here, for further examination.

I thought perhaps the copper circle would be regarded as a stray connection not in the schematic, but apparently is reported as a different kind of error presumably beause it’s not a track.

Upgrading from 6.0.5 to 6.0.9 does not affect file structure, so you can go back if necessary.
Anything that matters, make a backup of your project anyway.

I had a similar mistake many years ago with another CAD tool. That’s when I learned that one of the key steps in the mfg process is “always-always-always look at your gerbers”. Later I found a proggy that takes your gerbers as input and compares them to your IPC netlist. It was called FAB3000 by Numerical Innovations. It’s not clear to me that they still exist or if their product is still affordable. There may be others.

They are still there. Affordable is very relative, mainly to your budget :wink: .
A quick search shows $74,99 (sale, 99,99 normal) per month. Fab3000 and ace3000.

  • Retested with 6.0.9. No changes.
  • Violation settings looked normal (default)
  • These days, fail fast and reshoot seems the cheapest option.

In made a reduced project which still has the problem on my end. Please see if you can reproduce.

  • download
  • open project
  • open pcbnew
  • run DRC
    → the circle going through the traces does not get detected.

The reduced project:
example_circle shorting traces at U27 error DRC undetected in (49.8 KB)
The link to the zip file on google drive.

Please let me know if more info is required. I happily help out to find out if this is a Kicad or a me issue.

FYI the DRC control results of the reduced file

Yow, that’s steep. When I bought, it was under 300 for a lifetime seat, including updates. That was around 2010.

That’s what most companies do nowadays: make everything a subscription.

You’ve worked your way up to ‘basic user’ so you should be able to attach them now.

Thanks, done (I edited the post). I had to reopen the forum to be able to effectively have the rights to upload them.

1 Like

This is certainly a bug, and a strange one. There’s something in this specific circle instance. If I delete it and create a new one, the DRC finds the error. But not with this circle. I also moved it and there’s no error:

My KiCad version:

Application: KiCad PCB Editor (64-bit)

Version: (6.0.9-68-g46b3188737), release build

	wxWidgets 3.2.1
	libcurl/7.86.0-DEV Schannel zlib/1.2.13

Platform: Windows 10 (build 19044), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
	Date: Dec  1 2022 07:17:40
	wxWidgets: 3.2.1 (wchar_t,wx containers)
	Boost: 1.80.0
	OCC: 7.6.2
	Curl: 7.86.0-DEV
	ngspice: 37
	Compiler: Visual C++ 1929 without C++ ABI

Build settings: