Hello,
I’m not sure if this is supported in KiCad, or if it’s a kind of new feature request.
Basically, the situation is, that I would like to remove solder mask from the underside of a board, so that I can better attach it to a heatsink (using a soft SIL-PAD).
However, at the same time, I’d also not like to expose copper on vias that are not Ground, because there’s a risk of a short if someone doesn’t use an insulated pad, or knocks the board against something metal when testing. So, I’ve been using the Zone cutout feature, to “put back” the solder mask in the areas where there are vias that are not ground vias.
I was wondering, it would be awesome if there was a special feature to do that, where one could select a net (like Ground) that the zone would apply to, and then KiCad would auto-zone-cutout around all other copper apart from Ground. Or is there already a way to do that? Many thanks!
Hi,
I cannot see how that changes things unfortunately. Please can you elaborate? Here is another diagram, showing both a zone, and a Filled Shape as you mention. In both cases, how can I retain the mask on non-ground vias automatically?
I don’t know of a way to do this directly. The trouble here is that the solder mask is a “negative” layer in the gerber files, which is completely filled by default and then cutouts are made. If you make a cutout and then start adding “patches” over the via’s, yo have multiple overlapping features, and rendering order may become a problem, and this may only become visible after the PCB’s are ordered.
I don’t know much about your PCB, but I think I’d go for a simplified version, and only make cutouts in the mask layer around area’s where a lot of heat is put into the PCB, and then don’t put via’s in those areas. It’s simple and robust, and probably only very slightly less effective.
A simple answer to that is that you’re not responsible for the stupidity of others
However, I also like some protection on the bottom of PCB’s. My desk is wood, but when I’m working there may be all sorts of conductive things such as tools, screws, solder blobs and wire cuttings laying about. My solution to this is to use corrugated cardboard. I push the PCB into the cardboard, then take it off and I “deepen” any damaged spots which are made by THT pins that stick out. Then put the PCB on the cardboard again and use some small dots of glue, or tape or some screws to keep them together, and after that cut out the cardboard along the edge of PCB with a knife.
Another more standard method is to use PCB standoffs and screw them to the mounting holes.
I don’t see how that could be a problem. The gerber file shows where the mask substance will not be applied to the physical board. The 3d viewer also shows it correctly.
I, too, think there’s no way to do this directly. The only way I can come up with to automate this is to use version 6.99 (development version), add an inner copper layer, draw the zone as copper zone there, attach it to the GND net, fill it, and then plot the mask layer alone so that the copper layer is plotted to “all layers” along with the mask layer. (Tested quickly with F.Cu copper layer.)
Nothing ‘Automatic’ about doing PCB work. You can improve efficiency of workflow.
However ‘Automatically’ reminds me of a Plugin I wrote for another user wanting ‘Automatically’… Gif Video, below.
You can write a plugin to do much of it ‘Automatically’ but, ‘you’ still need to select the Via’s to have the plugin take action on…
Follow-up… Okay, humor aside, there are different types of Vias, you can use Buried, Stacked… that touch only designated layers…etc
And, you can set the ‘touching’ layers in default/std vias… But, again, ‘you’ need to do the work of selecting/etc…
Also, you can select multiple vias, click ‘E’ to edit them (setting them to desired viea Type and touching layers)… That’s about as ‘Automatic’ as you get without a plugin.
I also doesn’t know an automatic way to get the “filled zone” shape onto the mask-layer.
But I would recommend not to remove the mask at all. While the idea (better heat transport) seems good, I think you will only get a minor positive effect. I have done some measurements (years ago) especially for this task and only got improvements of 1…5 degree. The effect of a thinner/thicker gap pad, thicker copper layer, better (or worse) gap pad materials was far more relevant. Since that time I have closed that topic (for me) and always use a complete mask layer. Only exception is copper traces, if I want to reinforce them with additional copper wires.
Hi! Thanks for investigating! That’s an interesting method. I’m on the release version of KiCAD 6, so I will just stick to the manual cut-outs, it’s not a lot of vias anyway on this otherwise relatively straightforward board.
Hi,
It was a good point, that plugins can be occasionally considered too. I’ll learn how to do that at some point. I have briefly dabbled in the scripting console and managed to make a rectangular box in silkscreen, but that’s as far as I’ve experimented so far : ) I like Python so I am interested in studying plugins further, perhaps early in the next year.
Thanks for this practical temperature feedback! That’s very good to know.
It’s my first 2-oz copper project, it’s just a hobby project, to build a 100W USB-C power delivery output, and although the datasheet doesn’t mention how to heatsink the particular chip, I was planning on using a SIL-PAD or GAP-PAD which might not be all that efficient anyway. I’ll have to think a bit more. I took a peek at a 100W converter from aliexpress (probably not the best thing to examine!) and they use a GAP-PAD to get the heat to the extruded enclosure.