4
\$\begingroup\$

I designed a PCB with an IC that has a pitch of 0.5. The footprint solder mask looks like this:

enter image description here

However, the gerber came out with one blob that looks like this:

enter image description here

Why did it do that? Can I stop it? Should I stop it?


I don't usually answer my own questions (and really probably shouldn't on EE), but I think I have some additional details that are relevant to answering the question fully. Please provide feedback via comments or votes for the sake of the community.

PCBWay has the following requirements for the solder stop mask:

enter image description here

The TPS612332 Data Sheet recommends a pad width of 0.28mm and solder mask clearance of 0.07mm all around that pad:

enter image description here

If I have a 0.5mm pitch and .28mm of that is occupied by pads with 0.07mm of mask clearance, then I only have 0.08mm for the bridge (which is less than the 0.1mm minimum for PCBWay).

Which is why KiCad didn't put solder mask between the pads for this particular IC.

Can I stop it? Yes. Just like @Seth said in his answer, in PCBNew, I can click Setup->Pads to Mask Clearance and change the "Solder mask clearance" and "Solder mask min width" to allow the solder mask to appear.

enter image description here

Should I? Well, having the solder mask would likely help prevent shorts between pins due to solder issues. On the other hand, it seems like exceeding the minimum requirements set forth by the manufacturer may also expose risk in the manufacturing process.

\$\endgroup\$
7
  • 4
    \$\begingroup\$ KiCad is not a human being with its own mind, it does what you tell it to do. You left out what you actually did, the method you used, how you designed the footprint, which layers you generated, etc. \$\endgroup\$
    – pipe
    Commented Feb 25, 2019 at 16:26
  • 2
    \$\begingroup\$ I have no experience with KiCad, but maybe if you have a rule set that the minimum solder mask sliver is X, and the footprint had less than X solder mask between pads, it will remove the solder mask. (Also consider the size of the opening, so copper + margin + sliver + margin + copper) \$\endgroup\$
    – Wesley Lee
    Commented Feb 25, 2019 at 16:28
  • \$\begingroup\$ @pipe heh. Of course it’s not exerting it’s own will. I’m not sure how I implied that but I definitely didn’t mean that. Eagle puts the mask between even finer pitched pins. Is there a setting that caused this? Is there a reason the default doesn’t put a mask between pins this far apart? \$\endgroup\$
    – D. Patrick
    Commented Feb 25, 2019 at 16:29
  • 1
    \$\begingroup\$ @D.Patrick probably because it's configured to have more clearance between solder mask and pad than you assume. \$\endgroup\$ Commented Feb 25, 2019 at 16:55
  • 1
    \$\begingroup\$ The MFG will ask to remove those slivers for you if they are smaller than their advertised minimum. This is a common situation, for NSMD there is little downside to simply leaving the design as it is with the large soldermask opening. \$\endgroup\$
    – crasic
    Commented Feb 25, 2019 at 23:51

1 Answer 1

5
\$\begingroup\$

You will need to look at your soldermask minimum width setting. The soldermask is not yet WYSIWYG in pcbnew (see https://bugs.launchpad.net/kicad/+bug/1812096 and https://bugs.launchpad.net/kicad/+bug/1784027)

In the meantime, go into pcbnew->Setup->Pads and mask clearance to set the correct values. If you want the pads to be separated, you'll need to specify a value that is less than the pitch.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ Yes, this is the issue, there is an overriding option of "minimum width setting" that overrides pullback and other settings and not shown in any live preview. Note that while the minimum setting is the root cause, in most cases it is OK to have NSMD pads with no soldermask slivers and the board should still assemble and work fine (maybe harder to hand solder) , they are, after all, Non-Soldermask defined pads and the pad integrity is not compromised by removing all solder mask from the footprint \$\endgroup\$
    – crasic
    Commented Feb 25, 2019 at 23:46

Not the answer you're looking for? Browse other questions tagged or ask your own question.