Soldermask clearance

There is only 1 place where soldermask clearance should be defined and it is in the footprint.

This idea of global value for this and KLC forbids to put a value in footprint is just plain wrong.

It may seem like a nice idea, and hierarchical and logical and nice and what not.

But it’s just wrong.

The pcb is made up of footprints and traces.
Footprints make up the pcb, not the other way around.

The pcb itself should not have a saying about footprints.

Pcb manufacturers always process your layers anyway, so you don’t need to worry about advancing or different manufacturers capabilities.

It’s just wrong, and KLC enforce this bad thinking.

1 Like

Worlds collide, huh? :smiley:

Are you talking professionals here or hobbyists?

Personally I use the global pcb controlled soldermask as that is what the fab house tells me they’re capable of. Having clearances of less than that in any of the many footprints I use will be a problem for me that I like to avoid.

I naturally understand people that do layout 100% all day as their job - people who breath this - so for them to control the clearance for each pad might be what they need and can do.

So, to cater to all and give the user the freedom (we have that rarely with KiCAD) to do what he want’s to do, and not being nannied I support the current implementation and would oppose any changes.

Live and let live. :kissing_heart:


Fab house will adjust mask anyway if they find it to tight.

It’s not world’s collide.

It was just wrong thinking that became law.

Soldermasks does not always follow the pads.

So this globally adjusting soldermask is bad.

But to forbid defined masks in KLC is a criminal act.

I must agree with @Joan_Sparky. Soldermask swell really should be defined globally, driven (at the present time) by the capabilities of the board fab. (That means you just might have more mask clearance when you get a dozen prototype boards made by a quick-turn shop, and a tighter mask when a thousand get made for the low-rate initial production.)

There ARE places where mask clearances get adjusted for special reasons - the bearing surfaces around mounting holes, or the thermal pads under some IC’s, for example - so I want the option to override the global setting on a pad-by-pad basis but at least 99 times out of 100 I want to stay with the global, board-wide, setting.


1 Like

As I said the first time, just open up your own github footprint repo and advertise it to people and try to do a better job.
I’m not affiliated with the KiCAD lib people in any way and all footprints I use I make myself, so I don’t even have a chip in this game.
They set the rules for their libs… I don’t need to use them, I don’t need to like their libs.
And sometimes it’s just easier to ignore what is irritating you than to try to get a camel through the eye of a needle - :relaxed:

But I like the option to be bale to define clearances per pad, footprint or board and the rules which setting overrides the other are logical and useful.
I really don’t see a problem from a technical point of view.

1 Like


I can submit.

But not to the KLC rules.

But as mentioned before I can make my own repo.

1 Like

a start


I totally agreee with @Joan_Sparky as well. Clearance is a property of the factory, not the component. It can change even if you use a different solder paste.

I have many boards that I have to readjust for prototype factory and for massive production

1 Like

Nowadays in professional environment (e.g. IPC-7351C) soldermask openings in library footprints are defined to be exactly the same as pads themselves. And PCB manufacturer adjusts it according to their capabilities when they process customer’s Gerbers or ODB++.

1 Like

hear hear


unless of course some different shape of soldermask is needed that is unrelated to pad shape.
but that capacity is not available yet unfortunately, nor is free-form solder-paste.

but otherwise i 100% agree manufacturers know their limits and pre-process anyway.

in summary, soldermask is defined in footprint and nowhere else.
preferably set to 0 but that makes default, ouuuuwwwwww

what happens if the global is 0 ?

I always set the global solder mask clearance to 0 and let the board house open it up to match their capabilities. If I need something fancy, I set it per footprint or even per pad / draw a zone on the mask layer…

1 Like

You can draw a zone on the mask layer?

In layout I assume and not in footprint editor?

I ask because sometimes pads and soldermask are different shapes.

I also have a hard time to make some more complex pad shapes.

I have a USB connector that’s gives me 6 drc in layout, but I don’t know what else to do.

I can upload here for scrutinizing if someone would care for suggestions.


attached the problematic USB Molex
47589-0001.kicad_mod (3.9 KB)

Whats the un-numbered little elongated rectangular pad for in that footprint (where the housing is ‘mounted’ to the pcb on the sides)?

Personally, I’d remove those rectangles and the smd circles (numbered 6) and just use the oval hole and make it a little bit larger to accommodate the wanted shape.

47589-0001_Joan.kicad_mod (3.4 KB)

1 Like


all 4 holes are just to tie down the housing/shield to pcb
shield goes to gnd in schematic

i live with the drc until footprint editor gets better.

thanks for nice 3d view

i realize now you ask about another piece of pad.
its probably a left over, from previous version
i will take a look

did not find something.
not sure what you mean

And with the un-numbered gone, the DRC errors should vanish…



i did not see them at fisrt, they where a hidden legacy pad that blended in nicely.

once removed drc was gone
(nice to have no drc)

its not pads 6 , 6
its 6,9

thanks for the help