Challenges with solder masks

I just started learning kicad today and I managed to design a small board without issues, but when I import to OSHPark I could see issues with solder masks.

I worked out how to set the global solder mask clearance to zero and that fixed most of my problems. I wonder why zero is not the default?

However, I have one component that I imported from SnapEDA that still has mask clearance.

I tried a few options to override the mask but nothing seemed to work. Any suggestions on the right approach?

Also I cannot see the mask layers in the pcb view, even though there are check boxes for mask on right. I have to use 3D view or a Gerber viewer which makes for a frustrating workflow.

Using gerbv alongside kicad while laying out a pcb is really not that much work than using the built-in gerver viewer (which I haven’t gotten to work either).

For your project I suggest you import your gerbers in gerbv and save a gerber project file in the same (or near) folder as the gerbers. Adjust layer order and colors to your preference. When you press File->-Plot->Plot in pcbnew, just hit F5 in gerbv to see your changes.

I sometimes make two projects in gerbv, one for top view and one for bottom because I prefer to set colors as “natural” (silkscreen white, copper gold, mask green, holes black, and so on). For some use cases this is not practical of course.

For soldermask clearence, have you checked you footprints local clearance settings?

1 Like

openGL canvas… the legacy canvas doesn’t show them afaik.

There is (in order of priority) pad clearance, footprint clearance and global (pbc) clearance.
If you want to get rid of pre-set clearances in footprints (the global setting doesn’t seem to affect that footprint) right click the footprint and chose properties (or use mouse hoover and [E] key).
This let’s you adjust the footprint clearances.
For the pads you need to open the footprint in the fp editor and do the edit on each and every pad…
Set them to zero and the lower priority setting will take over (as you already found out).

Thanks for the quick responses, they helped me resolve my issues.
Switching to OpenGL canvas allowed me to see the F.Mask layer in pcbnew and the footprint editor and quickly view the impact of any changes I was making.
I was able to make changes using either of the following approaches:

  • In pcbnew: unlock the footprint and change the local clearance on each pad
  • In footprint editor: unlock the footprint and change the local clearance on each pad.

In the latter case I needed to save to a new library (and replace the part on the board) as the way I had imported the part it was not in any library.