DRC error in layout module Kicad 8.0.1

Very bad behavior of drc in version 8.0.1
Unfortunately, I received boards with an error that was not caught by drc in my kicad 8.0.1.
They had an unconnected ground to the rest of the board. The mistake was to break the connection by increasing the space between the track and the copper zone, which is the ground here. And eco is strange, although after filling in the areas (B key), I always check the continuity, this break was NOT noticed by drc - for it there was ground continuity. Is this a bug in the program or do I need to set something special so that DRC checks whether the entire area poured with copper is continuous?

1 Like

If your description is correct then this is a bug. Are you sure all important drc checks are enabled?

You have to provide the complete project to be able to reproduce (and subsequently fix) this issue. As this is really serious it would be good if you could attach the archived project (better sooner than later).

It’s also possible to create a confidential issue in the bug database where only the developers and certain trusted people can see it in case your design isn’t public. But it would be better if you could attach the (zipped) project, or a stripped down example project, here.

If is necessary I share project with confidental issue but I don’t how.
This is probably an obvious error in the program - it cannot be that the connection checking module misses something like this:

You can either share the project here or if it’s confidential then create a account on GitLab and then in KiCad, go to Help / Report a bug.

One of the options when filing a bug is to make the files confidential.

1 Like

more tests:

  1. DRC only works on F.Cu side, it does not work on B.Cu:

  2. there is a translation error: incorrect connection is not the same as missing connection, that’s why I had it unchecked - I have a cable connection on the board, which I ignored so as not to display an error. If I marked them, it would also show the unconnected ground.

Second thing - DRC ignores the B.Cu side, it only works on F.Cu.
And this is a bug.

DRC ignores the B.Cu side, it only works on F.Cu.

Are you referring to your board, the unconnected GND polygon and the specific “missing connection check”? As your GND polygones have vias and are connected to F.Cu and B.Cu it’s ok that the DRC reports only one missing connection. There is no way Kicad can know at which layer you want to redraw the connection, so it’s randomly the top layer.

Or do you have a different case, where the DRC ignores the bottom copper layer? (that again could be a bug).

Could you send the first image without the red circle u der R55?

But the gap is on bottom layer, vias has nothing to do, so why drc see break on top layer not bottom ?

But the gap is on bottom layer, vias has nothing to do, so why drc see break on top layer not bottom?

You can close the gap on top or on bottom layer.
Sadly the crystal ball module in kicad is currently still under development and delivers only guesswork with 50% hit rate. In your case the guesswork was wrong, kicad didn’t recognized that you wanted to close the gap on bottom layer.

serious: there is no chance that kicad knows your intentions. The drc shows that there are connections missing. The displayed ratsnest line is only one option to close the connection, rearranging your bottom zones could also work. This is your task.

As a experiment: draw a unconnected gnd-polygone only at the bottom layer, without any via/pad connecting to the top. The drc will report the missing connection for this polygone on the bottom layer.

1 Like

What do you have here?

And here:

There are also details in your design which don’t show it in favorable light.

Apart from isolated fill islands (which aren’t needed), you have a long sliver which theoretically could work as an antenna. You also have uncovered copper of some tracks with a mask opening which of course could cause a short. It’s not possible to say for sure, but probably you haven’t used stitching vias as much as you could and should.

Indeed, as @eelik pointed out, the stuff you marked with red arrows is an isolated copper island. KiCad connectivity checker ensures the netlist extracted from the PCB matches the netlist generated from the schematic. That’s it, as this big island is not connected to any pad, netlist-wise everything is OK. Check the properties of the GND zone and enable “Remove Isolated Copper Islands” option.

Tom

PS. Sorry for being picky, but a trace labelled “+175V” that is ~8 mils away from a GND plane on the same layer sounds a bit like a short circuit :slight_smile:

ok, if too high gap interrupts the connection, drc doesn’t see it - what does it have to do with my intentions? Gap break a connection so connection is missing, right ? And drc should report it, in button side in this case.

Thank you for you opinion but i have problem with drc not gnd planes layout :). So do not farewell from target problem.

You’re free to ignore opinions, but you seem to ignore my first two screenshots and questions, too. Tom also gave advice which should cure your problem: enable removing isolated islands from the zone.

With default settings there happens two things:

  1. KiCad doesn’t create isolated islands in zones.
  2. If you choose to create isolated islands in a zone, KiCad still gives a warning about it when running DRC.

If my interpretation of the situation is correct, you have chosen to create isolated islands even when they shouldn’t be needed, and you have ignored the warnings (either by not reading them, or by hiding them from the DRC dialog, or by changing it to “Ignore” in the Violation severity settings).

Number two is easy to fix: enable and read the warning/error messages. Whether you want to keep number one as it is, is for you to decide. I would still suggest removing the islands and then modifying the layout – ignore this opinion if you want to, but you should understand that if you choose to create isolated islands and then silence or ignore the DRC messages, you get what you wanted.

It wouldn’t be logical to handle isolated islands as errors if you allow them in a zone. Because you have many, many small islands you also need to silence or ignore the warning message and I guess that’s what you have done. The side effect is that you may have large isolated areas without DRC errors or warnings.

If you understand all this and still want to keep islands, at least choose the “below area limit” option in the zone settings and set it to remove the smaller ones. Then allow DRC warning message to see where you have larger isolated areas.

This all comes with the assumption that you actually have large isolated area there. I’m not sure, I won’t spend more time trying to find out from screenshots and long explanations.

DRC is not layer-based when it comes to connectivity. Something is either connected or it’s not. If it’s not DRC will report a “Missing connection between items”.

…except for isolated islands when they are allowed. By definition they aren’t connected and don’t need a connection.

BTW, you seem to have hidden the warnings. I bet because there are so many of them and they didn’t seem to be relevant for you, or am I wrong? If I’m right and interpreted the whole situation right you have missed the warning which would have told about the isolated island.

image

1 Like

Indeed.

I also agree with this:

Your GND plane is cut up into little sections by running tracks all though them, and this is generally a bad design. But I know very little of this project, so can’t know for sure what is going on.