Custom soldermask - Page 1
Forum section: electronics / general

author: yabba235
author_rank: Contributor
timestamp: May 26, 2023, 03:06:58 pm
content: Hi !How to get a soldermask like on the main pcb from the photo? Can it be obtained directly from Altium or do you have to edit the gerber file?

author: voltsandjolts
author_rank: Unknown
timestamp: May 26, 2023, 04:50:24 pm
content: Kinda looks like the solder mask layer was just a copy of the copper layer. Funky. Audiophool kit?

author: T3sl4co1l
author_rank: Super Contributor
timestamp: May 26, 2023, 07:20:03 pm
content: Layers are OR only, not AND (or other functions), so you can't do that by fill or rule. Next best would be, generate mask gerber, import as negative, and set expansion as appropriate. Which will be contraction actually, which may require some processing beforehand.Tim

author: yabba235
author_rank: Contributor
timestamp: May 27, 2023, 04:43:42 pm
content: Quote from: voltsandjolts on May 26, 2023, 04:50:24 pmNo, its part of main board Mark Levinson preamplifier 326S

author: yabba235
author_rank: Contributor
timestamp: May 27, 2023, 04:48:28 pm
content: Quote from: T3sl4co1l on May 26, 2023, 07:20:03 pmThat's how I think about this solution. I am curious, however, what is the name of this type of this soldermask in production - maybe that's why I can't find any description because I'm looking for the wrong keywords? Boards produced in this way have been known for over 30 years, so there must be a proper name for such a technology.

author: ajb
author_rank: Super Contributor
timestamp: May 29, 2023, 01:28:01 am
content: Create a polygon pour on the copper layer, with a clearance rule set for the amount of mask you want overhanging the copper. Make sure that the island/neck removal settings are how you want them. Cut that polygon, switch to the mask layer, Paste Special and check the "Paste on current layer" box, then paste it back in the same spot. Unlike changing the polygon's layer in the properties window, this does not cause the polygon to unpour, so it arrives on the layer exactly as it was poured when it was cut.Make sure that polygon never gets repoured!Editing to incorporate discussion downthread:If the above doesn't work because you have auto-repour enabled, explode the polygon *before* moving it to the mask layer, and then move the resulting regions. You can use a filter to select these by net, either assign a dedicated net to the polygon before exploding, or don't assign it to a net and use `OnLayer('Component Side') AND NOT InAnyNet`. Or just manually select all the bits, just be sure you don't miss any.

author: yabba235
author_rank: Contributor
timestamp: May 29, 2023, 05:18:23 am
content: Quote from: ajb on May 29, 2023, 01:28:01 amThank's !!I was afraid that I would have to play with editing gerbers, luckily I don't have to!

author: T3sl4co1l
author_rank: Super Contributor
timestamp: May 29, 2023, 12:36:45 pm
content: Avoiding poly repour is very fragile (and, not that this won't be a fragile process to begin with), I don't like that -- but that's a good approach. Try Tools/Convert/Explode Polygon to Free Primitives, which will make a Region(s?) of it. Then change layer.Tim

author: ajb
author_rank: Super Contributor
timestamp: May 29, 2023, 08:19:37 pm
content: Quote from: T3sl4co1l on May 29, 2023, 12:36:45 pmFor some reason I had it in my head that exploding a polygon only got you outline objects, but yeah, exploding to regions works. I would do that *after* cutting and pasting to the mask layer, though, otherwise you have to make sure you grab all of the resulting fragment regions from the copper layer to move them. On the other hand, if you leave it as a polygon it's pretty easy to switch it back to the copper layer, repour, and then cut and paste back to the mask layer if you need to update it to match changes in the copper, or you accidentally repoured it on the mask layer. In any case, best to save this as a close-to-final prefab step.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: May 29, 2023, 10:34:47 pm
content: Ah -- while they're still selected by the Explode, assign to a Union. Then you can select everything, delete, and redo the process if you have a change.Leaving free regions without a handle on them would definitely be a problem! Soldermask at least probably has very few regions normally, so a simple query might do, but if not, you'll need to pick through and deselect the ones you meant to leave there. Say if you needed to mask off too-narrow web widths under a fine-pitch SMT, or some unlucky inside corners between pads (QFNs sometimes) or nearby parts (square pads vs. minimum-clearance diagonal traces can have mask overlap(!)), those sorts of things.I'd prefer to avoid any poly edits before exploding, so as to avoid the case where someone has auto-repour enabled. Then you have to go disable that, just to perform the procedure, then remember to turn it back on... big PITA.Or if you're not getting regions selected after Explode, maybe querying the polygon (mask off all other objects) will allow you to edit it in peace. I *think*? the exploded pieces will still show....Ah, no, and in fact if you don't have the poly selected when you explode, you don't have any of the pieces selected afterwards. Oh wait, they don't select anyway, nevermind, I had thought they did. Also Explode cancels filter mode, so that's out too -- dang.Hmm yeah, disable auto-pour seems a necessary step. That kinda stinks.Ah well, stinky steps for a stinky process -- it's a nonstandard trick, so, that's kind of par for the course. One of the prices you pay when getting fancy with things I'm afraid.Tim

author: ajb
author_rank: Super Contributor
timestamp: May 30, 2023, 02:19:01 am
content: Exploded regions retain the net assignment of their parent polygon, at least while they're on a copper layer, so you could use that to select them to move to the mask layer. Either define a specific net for the purpose, or don't assign a net at all and use `OnLayer('Component Side') AND NOT InAnyNet` (as long as you don't have any No Net copper objects on the layer that are supposed to stay there).I've just had auto-repour off since whatever version it was that got reeeeeaaaaally sluggish at polygons a few years ago

author: T3sl4co1l
author_rank: Super Contributor
timestamp: May 30, 2023, 02:32:10 am
content: Yeah, net is good idea.Same, I've had auto-repour off forever. Performance is better in newer versions I think. And some people might just not've had the performance issues on a large enough design yet, so, you never know.Tim

author: yabba235
author_rank: Contributor
timestamp: June 04, 2023, 01:59:27 pm
content: Thank you all for your help - as you can see in the attached picture, I got what I wanted

author: tuan179
author_rank: Newbie
timestamp: March 13, 2024, 01:06:18 am
content: Can you please tell me the procedure to do it?

author: ajb
author_rank: Super Contributor
timestamp: March 13, 2024, 03:31:32 pm
content: Quote from: tuan179 on March 13, 2024, 01:06:18 amStart a few messages up from here:https://www.eevblog.com/forum/altium/custom-soldermask/msg4884470/#msg4884470