Hey Everybody, hopping all doing well. I am having an issue with Kicad 5.1.10, that I cannot wrap my mind around. I used to have this issue with more complex designs which did not cause any issue after production. But, now i have this issue in a more simple design and I decided to share.
As you can see in the image below, the message is saying that the pad is too close to a copper item. And that coper item is a SMD jumper. But, they are far a part but still getting the error. When I remove the component entirely the issue goes away.
I really do not understand what could be causing it. I am not using any custom component here. All coming from kicad. In other designs I was using some custom components which led me to believe that could have been the issue. But, now, I think there is something else here.
JP1 has a āGraphic Polygonā on a copper layer and this is very suspicious.
J2 is at quite a distance from JP1, so load the footprint of JP1 in the footprint editor (Or move the copy on your PCB to some empty area) and then have a close look at that footprint in the area that J2 is now.
And that you made JP1 (Did you make it yourself?) is made out of custom shapes confirms that I MAY be right.
I suspect that there is some extra polygon on a copper layer in JP1, that overlaps with the other footprint (J2) if you put it on a PCB.
If you canāt figure this out further, then I agree with eelik. Upload the PCB here. (You can delete all the other stuff, it just distracts from this issue, but make sure the error is still there)
I didnt make JP1. It is from a library SolderJumper. But, I just noticed it might be a thirdparty. But, the same issue also happens when I use a PCB antenna. Which is also a thirdparty (Texas_SWRA117D_2.4GHz_Right.kicad_mod)
I believe that adding the J2 to the error is a bug in v5.1.
For some things KiCad uses hacky workarounds and a net tie is one of them. Open the footprint in the footprint editor, add words ānet tieā in the beginning of the footprint keywords and the problem goes away.
No there shouldnāt be, itās the official way to handle a graphic shape touching pads inside a footprint when itās intended. A footprint which shortcuts two nets is a net tie, itās not a solder jumper (the former is closed by default but may be cut, the latter is open by default but may be closed).
Unfortunately thereās no collection for those things (unless in the handbook which nobody reads anyway ). This one I have read in various discussions here and there, maybe told by a developer. It may have been @JeffYoung who has been involved.
Implementing support for net ties as āfirst class citizensā was planned for v6 but it was postponed to v7. The current keyword hack is temporary.
The habit actually started in the official libraries ā even though at that point it didnāt affect how KiCad processed them.
Later when we started doing more checks inside KiCad and the standard library components started failing those checks, we added code to look at the keywords.
So there might be some doc somewhere in the library teamās web presence. (Or maybe one person contributed all the net ties and they just happened to do it that way.)
A week ago I was designing PCB with RFID antenna. I didnāt used the conception of footprint for that but I just had a short at schematic and three circles made by track at PCB. I noticed that it is easy to lost all that work by accidentally going too close to it with another track - interactive router finds ābetterā way to do that antenna.
Because of that I thought of preparing such footprint āfor future useā. If I didnāt noticed this discussion I would never had write ānet tieā in Keywords. I supposed (was really sure) that it is only used if someone searches library for something. All my footprints has āKaywordsā just empty
The ānet tieā is the only āmagic wordsā or there are others?
I donāt know Python but I had to modify a little bom_csv_grouped_by_value_with_fp (it was 4.0.7 times) because listed references were not sorted. I ended with script that calls the Sort function twice and I donāt know why only one of them works as expected (each call is done a little different way but according to my understanding should work the same way). During reading that code I found that there are procedures to delete from BOM symbols that have field āInstalledā with value āNUā. So I have added that field to some of my symbols.
I think it is also undocumented feature.