Ultra Librarian footprints cause unrouted nets

The problem of completed nets showing up as unrouted and the rat’s nest connection remaining has been noticed before, but, according to the bug report it had been fixed. It appeared that in the 4.0.7 release this had reared its ugly head again, but I found a new cause for it - a badly converted footprint.
I discovered this when I was getting unrouted trace errors in the DRC and it was barking about missing connections between the paste and silkscreen layers (???). I tried ripping up the net and re-entering it, but the problem persisted. Eventually I swapped footprints and the problem went away. Upon closer investigation of the footprint file, it appeared that it had listed the pads individually for each layer in separate statements, rather than in one. The next three lines are the original:
(pad 1 smd rect (at 13.999999 8.2804) (size 1.0922 2.0066) (layers F.Cu))
(pad 1 smd rect (at 13.999999 8.2804) (size 1.0922 2.0066) (layers F.Paste))
(pad 1 smd rect (at 13.999999 8.2804) (size 1.0922 2.0066) (layers F.Mask))
when it should have been:
(pad 1 smd rect (at 13.999999 8.2804) (size 1.0922 2.0066) (layers F.Cu F.Paste F.Mask))
A manual text edit of the file will fix it, I confirmed that with another footprint that had undergone the same process. When updating it, the unconnected nets went away and so did the DRC errors.

This KiCad forum where end users answer questions of end users is hardly a place for bugreports about 3rd party libraries.

BTW, it should be possible to have separate pads on Paste layer, but they shouldn’t be numbered. Last time I tried they can be created with a daily build. However, it wasn’t possible to create a pad on Mask layer. I don’t know if it’s possible to make one with a text editor. Making unnumbered Paste pads is the recommended way to make thermal pad paste openings in KLC https://kicad.org/libraries/klc/.

This setting creates a pad on the mask layer. (Tested in kicad stable v4.0.6)
The important thing is to select either SMD or Connector as pad type and None for copper. (The pin number should indeed be left empty if a pad has no copper layer.)

This is even done in at least one footprint of the official lib: Housings_DFN_QFN:QFN-24_4x4mm_Pitch0.5mm_NoMask

Yes, it seems to work. Last time I tried it I ran into some problem, the mask layer didn’t work even though the paste layer did work.

To the original poster: if you still need to edit those footprint text files manually you can try to change the pad number of the paste layer pad and mask layer pad to “” (empty quotes). That’s how they appear in my footprint file. It’s certainly easier than moving the mask and paste layers to one pad. However, you will loose the possibility to use global mask and paste size settings which may not be what you want.

If you can and want to use the footprint editor it’s easy to delete the extra pads and add the two layers to the copper pads.

In this case talking about a KiCad work around is sensible. Just don’t ask the developers to change KiCad to accept broken input from a 3rd party


I don’t use those libraries so I wasn’t 100% sure when he said ‘converted’ if there was a step that Kicad was supposed to do. But yeah, my first impression was that the company charging for footprints ought to be the one fixing them. I don’t look that deep under the hood at the libraries and with the changes being made wasn’t sure if it was a version thing since he stated " It appeared that in the 4.0.7 release this had reared its ugly head again".

My intent was to share my experience with other users, which I thought may be useful. I don’t need smug responses.

Sorry if it sounded like that. It looked like a misplaced bug report to me, sometimes people do that and their problems won’t be fixed. Maybe I should have added that your intention wasn’t clear to me. And I offered advice anyways… After reading this thread other users know several ways to fix that problem.