The PCB Solder Mask option for ChiliPeppr is really awesome.

The PCB Solder Mask option for ChiliPeppr is really awesome. The only thing I wish I could do with it is to pick the Eagle brd. layer it uses. If there was an option to toggle the brd. layer to “tCream” (Layer 31) from "tStop (Layer 29) the Gcode could be used to mill/laser solder stencils. I’ve been trying to find a simple approach to lasering stencils for quite some time. This would be the cleanest and most elegant way. I suspect that changing the reference layer wouldn’t be too hard on the backend as all the other parts should stay the same. Am I correct? Is it possible to request this? Pretty please?

I think this is highly doable. If you know how to code, you could fork the widget and add that feature. In fact i’d suggest you make a new tab called stencil and then mimic the solder mask code but tweak to do the tcream. Watch the 3 videos on the home page of chilipeppr to see how to fork.

@jlauer Thanks for the reply. I looked into modifying the current widget as I’ve muddled my way through code on occasion. I did come up with an issue. The github Chilipeppr widget-eagle code is version 5.4 as indicated in the change log but the actual widget running in Chilipeppr is 5.6? Am I missing something? The change log doesn’t mention anything about the addition of the Solder Mask feature.

The Github project is definitely the latest code base. The changelog.txt was something Ameen added, but others (like me) don’t use. The v5.4 in the Github Readme is just that I didn’t update the title of the widget correctly when I deployed v5.6.

One of the reasons the Github has to be the latest is that ChiliPeppr actually pulls directly from Github when you load it. It does cache the file contents so Github doesn’t become a file hosting server, but it is directly tied.

@Jon_Raymond one idea is that I believe at the end of the code in the widget is where layers get parsed and put into memory. You may have to add that this layer get parsed so it’s available to you. Then, in the section for solder mask, you could give the choice of which layer to go through and then I presume the layers are similar enough you wouldn’t have to edit much more code than that.

@jlauer Unfortunately it doesn’t seem as easy as I had hoped. From reading through the code my understanding is that the tmask layer isn’t parsed. The data the Solder Mask widget uses is a combination of the parsed pad and smd locations/sizes. The tcream layer uses only the smd location/sizes with an Eagle specified offset. Also within Eagle you can turn off individual components on this layer by selecting if they are populated. The Solder Mask widget would need to be rewritten to add the ability to select the layer it uses instead of using solely the pad/smd data. Sadly this is well above my ability. I come from the hardware side of things and software has never been my strong suit.

Ahh, yes. That is how I implemented it to go quick. I thought about parsing the other layers and went the faster lazier route. Parsing a new layer is probably similar to how we’re parsing current layers, but if there’s rectangles/circles/hexagons/etc you have to run them through the three.js creation steps that we do on the signal layers. Decent amount of work.