What do you expect?
If one copper fill part have connection to 20 GND pads and the other to 25 GND pads but they have no connection to each other do you expect the one having connection to less pads be removed or the one having smaller area be removed. If you think that one should be removed than where is the border number to not being removed. Do connection to 5 pads is enough to not be removed.
As there is no logical reason to select the enough number it was decided that connection to only one GND pad is enough to not remove filling.
Islands having no connection with any GND pad or via are removed. All others are left. But if that what is left is divided into separate parts these are still the islands having no connection with each other.
I’ve already manually drawn tracks between all the GND pads as was earlier suggested; So if the copper is touching one GND pad it should technically be getting a connection to all of them based off these tracks that were created.
As shown below there are no ratsnest lines between any of the GND pads anymore.
From what I can tell it seems like KiCad is not actually connecting the zone to the GND VIAs, or it’s not recognizing that it’s connected. I have a single isolated copper fill on the top copper layer, I’ve followed this zone at every edge, but I don’t see anywhere that would be considered an isolated Copper Island.
It seems to be suggesting the entire fill layer, is now isolated from the VIAs. Which I believe would explain why placing VIAs is not properly stitching these layers together like I would expect.
First of all - there is no reason to pre-connect pads or vias on the ground plane. Just having them on the correct net will allow the fill to connect to them. It’s just double (or more) work to route them manually.
But, since you are using PCBNEW without a schematic, I’m 99 44/100% sure that your problem lies there. There is some inconsistency in the netlist that is invisible since you don’t have a schematic.
The way this PCB representation is made in KiCad is very problematic. It doesn’t have footprints at all which would have copper pads (it has only NPTH footprints, mounting holes). Everything is done with vias and graphic polygons. KiCad understands zone areas to be connected when they touch pads. Because you don’t have copper pads at all, zones aren’t really connected. See How to create a power plane (using zones) for further information. Actually, I don’t understand how your zones have been filled in the first place. Maybe I have to dig deeper.
BTW, your 7zip archive includes kicad_prl file. That’s the “project local” settings file which saves the state of the GUI and shouldn’t be shared. It only creates confusion because now you had hidden many objects and when someone opens the project there are for example no visible footprints.
OK, now I understand better. Unintuitively, if there’s no pad at all for a certain zone, it is filled even when it forms a non-connected island in itself. If I add one footprint into your design with one SMD pad in the GND net and re-fill zones and re-run DRC, the island warnings are gone. This means that all areas are connected together in one way or another. (This, of course doesn’t yet make the design OK – that much has already been said.)
The minimum I can recommend is to create and add actual footprints for all components. Otherwise you are using KiCad totally in a way it’s not intended to be used and are in the risk of undetected problems. Designs without schematic are supported but designs without schematic and footprints haven’t even occurred to developers’ minds, I guess.
Agreed. Cleaning up after the autorouter for projects like this is often more work then routing the PCB “properly” in the first place. It’s a lesson that many beginners apparently have to learn “the hard way”.
But in this case it is probably more complicated. I am guessing this is made without a schematic, and all the nets have been named manually in the PCB editor. (Indeed, a search though previous text in this thread confirms this).
And there are other things very wrong too. Such as for example this stacked mess of objects below. All “pads” seem to be such a stack of objects. It looks like some sort of import from another program or Gerbers, and then modified.
I don’t want to put much time in this. I also have not read all previous posts in this topic.
Just looking at the layout (ignoring the fact that there is no schematic diagram) I think there is probably no point to having many of those copper islands, even if they were grounded. I would delete them.
My most recent design is a 4 layer. For layers other than the ground layer, I put down large contiguous areas of ground plane where there were large blank areas to fill. But I do not try to put ground copper into every little space…
I do not mean that all designs can be done like this. Some designs may have critical high frequency signals running around and need max shielding. But I bet that this design in question is not one of those…
Sorry for the late response I was rate limited due to the amount of responses I’ve been sending. I did notice that when I put a footprint down for a mounting hole VIA, it ended up connecting this to the ground plane.
I’ll go through and create a schematic as well as update the PCB with the necessary footprints. Cheers for all the advice everyone.