Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Deftware

443
Posts
10
Topics
68
Followers
14
Following
A member registered May 30, 2015 · View creator page →

Creator of

Recent community posts

No problem! Let me know how she goes :]

 - Charlie

Hi Dave,

In both cases it's important to keep in mind that an endmill is not going to be able to produce sharp inside corners (i.e. the 90 degree corners in a square pocket, or the sharp angled points on a 5-point star shaped pocket). They'll only be able to have a radius as small as half of the diameter of the endmill used to mill the pocket out. That being said, the best ways to go for 2D milling an area are with either the 2D Trochoidal Milling operation or the 2D Offset Milling operation, at least for general roughing. Then come in afterward with a 2D Profile Milling operation to bring the carved area to size and shape as much as is possible with the endmill being used. You'll want to include an Offset on your roughing operations to leave something for profiling to cleanup. Keep in mind that the profile milling operation puts the center of the cutter on the edge of the contour being cut, which means you'll need to include half of the cutter's diameter as an Offset to have the tool follow the inside of the contour (but the 2D Trochoidal/Offset Milling operations automatically keep cutpaths inside of the contour being milled out with Offset being zero).

The 2D Trochoidal/Offset Milling operations both allow you to choose between tracing one of the canvas layer groups at a specified Z plane or using a paths-layer as contour input from which cutpaths are generated. This means that you can either just have it generate a toolpath directly from the canvas for 2D milling, or feed it your own paths-layer, either hand-drawn, traced from something else (like an image or 3D model that was traced to paths) or traced from a canvas composition of multiple raster/model/text layers.

For something like relief carvings you'll generally want to use the 2.5D variants of the offset/trochoidal milling operations, because it will contour the canvas at each successive cutting plane to generate cutpaths for, better conforming to the canvas as a whole for something like rough material removal before coming in with a 3D Contouring operation type like Parallel Carving.


Both of the 2D Milling operations mentioned include an Invert option on their input contour parameters that allows you to switch between cutting inside of a contour and outside of a contour, so if you just have text on the canvas that you want to mill out the inside of then you'll enable this option, assuming your canvas is at the default with zero Z-Fill and a default text-layer on there, like this:



With the Invert option disabled, contouring the canvas with just a text-layer as shown will mill out the outside of the text:

If you're completely new to everything there are going to be a lot of CNC/CAM things to learn that aren't specific to PixelCNC, such as what cut depths and stepovers and what feed rates and spindle speeds to use for different cutters and materials. There are some general rules of thumb, and they vary depending on what machine you're using and what its capabilities actually are. If your machine is rigid enough you can get away with using trochoidal (or sometimes called 'adaptive') toolpaths with a large depth of cut and a smaller cut stepover, at higher feed rates, allowing more of the cutter's flute length to be employed in material removal. Flimsier less rigid machines will only be able to handle small cut depths, but generally allow for a larger cut stepover, but this means that you'll be doing most of the material removal using just the tip of your cutter - wearing it out faster.

You'll want to become familiar with your machine - how to zero out the machine's coordinate system (i.e. set the machine origin) and jog it around, how best to hold down material without your work holding getting in the way when the machine is rapiding between cutpaths, or being in the way of any dust collection, etcetera.


If you have anything specific you'd like to do you can always send an email to support@deftware.org and I can give you more detailed help there.

Hope this helps! Apologies for the New Year's delay in replying, response times are generally within a few hours during non-holiday times. Cheers! :]

 - Charlie

Hi Patrick,

With tapered ballnose cutters their geometry tends to be the root cause of the issue. It's basically just physically impossible for a tapered ballnose to create a perfect edge due to the radius of the ballnose causing the piece to have a skirt that flares out at the bottom. The only resolution is what you've opted for, which is to come in with a different cutter and remove all of the material after the relief portion is carved. Typically I'll use a 1/8" endmill to mill out a relief, using the 2D Profile Milling operation. This can still result in a sort of discontinuity between the relief and the edges due to the cutters having different geometry. Typically the tapered cutter will have a smaller radius than the endmill and so is able to fit into smaller areas that the endmill cannot.

It looks like you managed pretty well on your own with your attempt! Sometimes finessing the actual geometry being carved can help as well, such as smoothing out the geometry on the edges so that the endmill that's tasked with carving the piece out can reach all of the same areas as the tapered cutter. Sometimes you can get away with using the tapered cutter to cut out a piece, but this can also result in discontinuities at times if the geometry being carved out doesn't entail the tapered cutter reaching all the way down around the piece where a profiling cutpath would traverse. It's a little difficult to explain but the result is that a profiling operation puts the cutter places that it didn't or doesn't go when relief carving, because profiling follows a contour extracted from a single Z plane whereas relief carving follows the geometry at all points. Hopefully that makes sense.

It really just takes some finesse on a case-by-case basis depending on what's being cut and what cutters are being used.

Let me know if you have any other questions or need help with anything else. Cheers! :]

 - Charlie

Hi Dave,

If you can show me a specific example of what you'd like to know how to do I'd love to walk you through it :]

Thanks for your interest in PixelCNC and have a good day!

 - Charlie

Hi Ynitial,

That looks good!

What I do to create gaps in paths in the paths-editing mode is hold CTRL for node placement, left-click on the path to create nodes, and then while holding SHIFT you can right-click nodes to remove them and the section of path they're on, whereas right-clicking nodes on a path without holding SHIFT only removes the nodes from the path without breaking the path up.

Removing nodes without breaking the path can be useful for rounding out corners too. Simply hold CTRL and place nodes next to a corner node, one on each side, and then right-click the corner node. The path will automatically interpolate between the two nodes that were created next to the corner node.

The path-layer editing mode can be super handy for doing all kinds of things and I highly recommend becoming familiar with it. The '?' button at the top-right of the PixelCNC window when in the path-editing mode will show you all of the modifier keys for drawing and editing paths.

Hope that helps! Have a good day :]

 - Charlie

Hi hegartype,

Can you post a screenshot so I can understand better what you're referring to? Thanks!

 - Charlie

Hi Ynitial,

Having more control over tab placement is another item that's been on the ever-growing todo list for a while. We're looking at simply adding an offset parameter that allows the user to move where the tabs begin within the distance between two neighboring tabs. This has definitely been something that I'd personally like to see added ASAP as I am always using the profile milling operation and including tabs for cutouts.

The next best thing to manual tab placement would be to use the paths-carving operation. You can use the Trace To Paths function to generate a path with an offset equal to half the diameter of your cutter's flutes. Then manually edit the resulting path to have a gap where you want a tab. Let a profile milling operation do material removal down to where there's enough material left for your desired tab height, and then use the paths carving operation along with the paths-layer from tracing the shape as input to do the final cutout. Just remember that the paths carving operation doesn't allow for any kind of tool offset, being that paths are not considered to have an inside or outside to offset toward or away from the way that 2D milling operations do with their contour input.

Hope that helps! Let me know how it goes, or if you have any other questions or need help with anything else :]

 - Charlie

Hi Joe,

The Confine Cuts option is really just there to specify whether the cutting tool's diameter should be kept within the canvas volume itself, as opposed to if the center of the cutter is allowed to reach the extents of the canvas volume. Personally, I just try to do whatever keeps the canvas XY dimensions as small as possible to eliminate any unnecessary computation when editing and manipulating layers, or generating certain toolpaths. The canvas volume is really just an area you want to generate cutpaths inside of. Some people like to think of it as their workpiece or stock material, but that tends to result in a lot of "unused" space that bogs down computation.

If the Confine Cuts option helps you do something then I say go ahead and use it! :]

 - Charlie

Hi Joe,

Ah, yes, these can be defined. You use a negative radius when specifying a Cylinder tool type :]

Have a good day!

 - Charlie

Hi Joe,

Can you show me a picture or diagram of the cutter geometry you're referring to? I think I understand what you're talking about, but there currently isn't a means of defining such cutter geometry, unfortunately. It's definitely something that can be added in a future update though! I'm adding it to the todo list :]

Cheers!

 - Charlie

Hi Dan,

It looks like all that was left to do was regenerate the operation's toolpath from the Project Operations mode. Whenever changes to the canvas or its contents are made each operation that those changes are relevant to will need to have its toolpath regenerated. Some operations can take a while to generate toolpaths, depending on the complexity of the canvas and cut depth and cut stepover, so the user must manually regenerate toolpaths as needed.

I also took the liberty of increasing the canvas resolution to better capture the fine detail of the text-layer on there.




Cheers! :]

 - Charlie

Hi dkmarquez,

If it was a raster-layer that was created from an SVG then you should only need to change the layer's Z-fill to match the top of the canvas. I am still unsure as to why there is a border contour occurring - if you can't see any kind of seam/edge around the design then it shouldn't be contouring one. If you could send your project file to support@deftware.org or attach it to a reply I will be able to get to the bottom of where that phantom contour is coming from. Generally, loading an image and downsizing it should only create a contour if the image forms an island in the middle of the canvas and there's no Z-fill on the canvas or the layer to fill in the area around it.

Here's a simple example where I've loaded an SVG as a raster-layer and then scaled it down before generating a toolpath. By raising the layer's Z-fill to the top of the canvas we prevent a contour from being generated around the edges of the raster-layer:




It should be fixable with a single change but from the screenshot it's not apparent whether there's a Z-fill around the layer or not.

Cheers! :]

 - Charlie

Hi dkmarquez,

Something is causing a contour to be generated from a rectangular feature around the design. If you created a raster-layer from the SVG then there is likely a border that you can remove by changing the canvas Z-Fill to the top of the canvas volume, and then change the layer's blend mode to Minimum. Or, if you created a paths-layer from the SVG, then you can use the path-editing mode to select and delete any rectangle that's surrounding the design. This will also mean that you'll need to toggle (either from on to off, or off to on, depending on what it's already set at) the operation's contour "Invert" option.

If you can show me a screenshot of PixelCNC in the Project Operations mode with the relevant operation selected so I can see both your canvas and your operation parameters I can better guide you :]

 - Charlie

Hi dkmarquez,

Unfortunately the creator of the videos opted out of supporting PixelCNC and personally removed them from the YouTube channel. If there's anything in particular that you would like to know how to do just let me know and I'll make sure to get you where you want to go! If you see something that's been created on a CNC router or mill and want to know how to do it in PixelCNC I can walk you through it :]

Cheers! :]

 - Charlie

Hi Joe,

The diameter of the selected tool much match the diameter of the hole features being contoured. The Hole Drilling operation just generates a peck-drilling toolpath, with only Z motions, using a proper drill bit. You can use an endmill instead but your results may vary depending on the geometry of the endmill and how well the flutes clear chips, and what parameters you use.

If you want to use a 1/8" endmill to cut 1/4" holes I would probably just use the Profile Milling operation with a non-zero Cut Width specified, so that it works its way outward. Or, a combination of the 2D Trochoidal Milling with an Offset to leave some stock, and then the Profile Milling operation to bring the holes to size.

Hope that helps. Cheers! :]

 - Charlie

Hi Joe,

The Hole Drilling operation will work for peck-drilling holes using a conventional drill bit. The next best thing is the 2D Trochoidal Milling operation, which will generate a spiral cutpath inside of each circular contour at each cutdepth down to the maximum cutting depth.

The 2D Profile Milling operation will require a cut stepover if the Cut Width parameter is non-zero, because a non-zero cut width indicates that there are going to at least be two cutpaths that are Cut Width apart from eachother, and there needs to be a cut stepover to indicate what increment to stepover at to get from the inner-most cutpath to the outer-most cutpath over the specified cut width distance. Hopefully that makes sense.

Cheers! :]

 - Charlie

Hi Joe,

Thanks for taking the time to submit some ideas and feedback, it's much appreciated! We have been looking at what kind of parameters and things we could tie into tool definitions such as speeds/feeds.

Cheers! :]

 - Charlie

Hi Joe,

The tool slot number in a PixelCNC project is the tool index that an automatic tool changer will put in the spindle.

With a custom G-code post-processor you can have exported G-code contain virtually anything you need. If you need any assistance with that go ahead and send an email to us at support@gmail.com and we'll get you squared away :]

 - Charlie

Hi Joe,

The tool slot numbers in a project are what is used as the tool index in exported G-code. The Tool Library is only for storing definitions that can be re-used in a project, by copying one or more definitions from the library to a project. Changing a tool definition in the library does not change that tool definition for all projects that have previously copied that tool definition to themselves - it is just a list of definitions that a project can copy from to its own tool definitions so that users do not have to re-define the same tools for projects.

Two different systems running PixelCNC could have different tool libraries, which is why exported G-code uses the tool slot number in a project rather than the tool definition index from the library. You can organize your tool library to reflect the tools you have setup in your tool changer, for up to ten tools, and then use the Load Library To List button in the Project Tools mode to automatically copy the first ten tool definitions from the library to a project. It is important to remember that this is only copying whatever definitions currently exist to the project, and is not storing references to the tool library's definitions in the project. Otherwise opening the project on a different system with a different tool library would not end up with the same tool definitions for the project.

Hope that helps. Cheers! :]

 - Charlie

Hi SpicyFlanx,

Thanks for posting your question! I believe that the Paths Carving operation might be best, and it should allow you to go as deep as you want, you'll just need to create a new copy of your topographical map and lower it by the depth you want the holes to be at and put that in its own Layer Group. Then you use that layer group for your Paths Carving operation. Your paths for milling the holes should accommodate for the cutter's radius as well (i.e. a circle that's 1mm in diameter cut with a 2mm cutter results in a 3mm hole).

We've been looking at things for a proper Hole MIlling operation to do, and following the canvas would be a great option to have. It would be a great option to have for the Hole Drilling operation as well!

Let me know if you have any further questions or need help figuring anything out :]

 - Charlie

Hi Pluto,

There are no built-in single-line fonts in PixelCNC (aka "Hershey" fonts). However, you can use fonts you have installed in combination with the Medial-Axis Carving operation to get virtually the same effect. For instance here is the font "Aristotelica Small Caps Regular":




Here is the resulting simulated v-carving, using a V-bit cutter and the Medial-Axis Carving operation:


Does that accomplish what you're hoping to do?

Alternatively, I believe Inkscape has Hershey text which you can then export as an SVG/DXF and create a paths-layer from in PixelCNC, which can then be used as input to the Paths Carving operation, which will directly traverse the paths from the Hershey text vector.

Hope that helps. Have a good day! :]


 - Charlie

Hi Pluto,

Yes, but please contact us via support to get the ball rolling on that :]

 - Charlie

Hello! We have moved to deftware.org, which is where Holocraft can be purchased and downloaded.

Hi Joe,

Thanks for your inquiry! A male inlay operation hasn't been finalized yet, there are some issues with parameters we're still trying to figure out, being that the operation effectively combines the profile milling and medial-axis carving operations together into one, resulting in more parameters than any other operation requires. This is looking like it's going to require changes to the project file format (while still allowing older project files to be loaded and converted) along with the operation parameter UI undergoing some changes to accommodate everything - while still being compatible with existing tutorials and videos. We're trying to figure out how to do all of this in a way that doesn't change things too much but other things have our focus and attention at the moment.

The way you're doing it is the way to do it for the moment. We'll be sure to send out an email when new operations are added, so you shouldn't miss a thing.

Cheers! :]

 - Charlie

Hi Russ,

That's awesome! I was wondering when I'd get to see what you managed to do with the things we talked about for the 45 degree corners on there. I like the epoxy, that's an interesting way to do designs and things into there.

We have it on our radar to add support for projects to allow for more operations. We're looking at different options as to how to go about that, as far as the file format's data structures and whether we need to do something about the user interface, particularly for the operations and simulation interface modes.

Thanks for sharing, and have a good week! :]

 - Charlie

Hi hegartype,

That's one way to do it! The other way is to use the Profile Milling operation instead, with a limited Cut Width and a small Stepover, so that you can instead use a 2D Milling operation to clear out most of the larger interior areas. This is demonstrated with the pirate V-carving project on the downloads page deftware.org/pages/downloads  and is the recommended way to go for V-carvings that have a lot of pocket area to clear.

Let me know if you have any other questions or need help with anything else and have a good day! :]

 - Charlie

Hi Jacques,

We currently do not have any provisions for any other input peripherals besides keyboard and mouse in PixelCNC. We will look into what is involved and see what we can do!

Have a good day! :]

 - Charlie

That's what I'm here for! Let me know how she goes :]

Hi Hegartype,

It looks like what you need to employ is the Rest Machining option on your Parallel Carving operation, in combination with the Distance Sort option to ensure that most of the run time isn't taken up by rapiding between unsorted cuts.

If you're already doing this then all you need to do is use different layer groups for your roughing operation and your finishing operation, where the roughing operation clears out a larger area (represented with one layer group) than the finishing operation is toolpathing off of.

Take a look at this project as an example: https://cdn.shopify.com/s/files/1/0308/9658/6890/files/Sea_Ornaments.pnc?v=17497...

Layer Group 1 is used to rough out the shape of the ornaments from the workpiece, with a wider area around them to accommodate the cutter. Layer Group 2 uses a smaller margin around the ornaments for a finishing operation, in combination with the Rest Machining and Distance Sort operations to minimize total cut time by restricting cuts exclusively to the shape of the ornaments themselves. Layer Group 0 is then used by two Profile Milling operations, one to mill out the loop holes for the ornaments and another to cut them out of the workpiece.

The goal is to have a roughing operation clear out an area slightly larger than what the finishing operation will be toolpathing off of, to get the Rest Machining functionality to recognize that cuts do not need to extend into the area that has already been roughed out. This can sometimes require a bit of finesse as far as the Z extent goes. That is to say that it can be beneficial to allow the roughing operation to travel down farther around the desired relief shape than the finishing pass will, so that the cutpaths are properly confined to the Z range of the relief, but every project is different.

Hope that helps. Let me know how it goes! :]

 - Charlie

Hi tumbling_leaves,

This is a situation that can occur for different reasons. If you're using a tapered ballnose for finishing, it won't be able to reach everywhere that a flat endmill or ballnose endmill can reach, due to the taper angle. That could be the situation you're experiencing here, and you should be able to tell by looking at the operations simulated in PixelCNC. The remedy is to include a draft angle, typically that's at least a few degrees larger than the taper of your cutter.

There can also be machine-specific issues that arise, such as the machine flexing while cutting, throwing off where the cutter is from where it's supposed to be, or losing steps while cutting (which is a problem that stepper motor machines have) where the motors can't go where they are trying to because material isn't being removed quickly enough but the controller itself just assumes the steppers are always where it tells them to go - causing your machine's origin to shift. If the simulation looks good then I would wager that you're losing steps by working the machine too hard - or feeding too fast for your spindle RPM and the cutter you're using. The way you can find out if you're losing steps is by moving the machine to a known position after a cut to see if it thinks it is where it should be.

If you're losing steps you can try dialing back your feed rate, or increasing your RPM, or use a 2.5D milling operation for hogging material out first instead of a 3D contouring operation.

Hope that helps. Let me know how she goes and have a good week! :]

 - Charlie

Hi Hegartype,

Ah, I think I understand what's happening. OK so with the Z-Fill raised up, there's not enough room around the model. What you can do is set the canvas' Z-Fill to the top of the canvas (instead of the layer's Z-Fill) and then create a new blank raster-layer, size it to be the "buffer" around the model, and set its blend mode to "Minimum". This raster-layer will need to be below the model-layer in the Canvas Layers list, so that it pushes down the canvas' Z-Fill to make a clearing for the model-layer to sit in.

Let me know if that makes sense, or if you need more explanation and detail :]

 - Charlie

Hi Hegartype,

It sounds like the issue is that the canvas is too small to accommodate the cutter around the STL model. You might be able to get away with just disabling the "Confine Cuts" option on your operation parameters, which will effectively open up the canvas by half of the cutter's diameter so that it can cut outside of the canvas. This will only allow the center of the cutter to reach the extents of the canvas volume in X and Y, so if that still doesn't allow for enough room then you will still need to open up the canvas' dimensions a bit further.

Let me know how it goes!

 - Charlie

Hi  hegartype,

Estimating operation runtime is pretty tricky, as you can tell by both PixelCNC and Gsender estimations being way off from the real world runtime. The best we can suggest is to go into your CNC/CAM Settings under the Config menu and adjust the Rapid Speed and Rapid Accel settings to closer match your CNC setup. The rapids between feed commands tend to be what throws off runtime estimation the most because there are many variables at play that affect how fast the machine is actually able to move during each individual rapid, but if you can tune those two settings to more accurately match your machine the time estimation should be more accurate. Generally, the more rapids there are the farther off runtime estimation can be - particularly if those two settings are not tuned to match the machine that G-code will be running on.

Hope that helps! :]

 - Charlie

Hi vzwjimdroid,

The situation is that operations which expect some kind of contour input require that there are closed shapes, with an inside and an outside. A grid comprising several crossing lines won't result in closed shapes that PixelCNC can use. The most immediate way to arrive at a grid of squares with where you're already at is to use the Stroke Paths function to generate a raster-layer from your existing paths-layer grid. Then use the resulting raster-layer as contour input for your Medial-Axis Carving operation with a Contour Z that yields what you're looking for on there.

Otherwise, you can draw a square paths-layer, and duplicate/merge, moving each duplicate to become neighboring squares. Just make sure you include a small margin between neighboring squares, at least as large as your canvas resolution will allow for. i.e. if your canvas resolution is 512ppi then you'll want neighboring squares to be 2.0/512 inches apart, so the contour that results from them doesn't merge into one big one.

Hope that helps! Let me know if you have any other questions or need help with anything else :]

 - Charlie

Hi Russ,

Looks good! Those fine features would definitely be tricky, especially without a harder wood.

Thanks for sharing and keep it up! :]

 - Charlie

Hi Jacques,

Please see my reply to your email :]

Hi CncCumberland,

If you can send over a few samples of G-code that runs properly on your machine (support@deftware.org) we can probably get a post cooked up for you so that you can directly export your generated PixelCNC toolpaths to G-code.

 - Charlie

Hi CncCumberland,

Yes, the SVG file format does not support Z coordinates for paths, but when we include the generation of DXF files for exporting paths-layers and toolpaths we should be able to include the Z coordinate in there, at least for toolpaths.

You have my curiosity piqued. What are you hoping to do with an exported 3D toolpath? I'm wondering if we can't get it done by exporting G-code too. :]

 - Charlie

Hi Pluto,

Ouch! It tried to move so fast that the machine's own inertia kept it from being able to retract - but you can hear it try with that buzz just before rapiding to the next cut. Glad you were able to solve the puzzle :]

 - Charlie

Hi Pluto,

The project file looks fine, the G-code looks fine. It must be something with your CNC controller. After it reaches the XY coordinate at the end of the cut it should then be rapiding up to Z10, which would be 10mm above the workpiece - assuming that Z0 is the top-surface of the workpiece. If you can manually issue commands to your machine, zero the origin somewhere up in the air and then run a G0Z10, and it should move up 10mm. If it doesn't move 10mm upward from the established machine origin, or moves downward, then the controller probably isn't zeroed out where it's supposed to be for the Z axis.

There does appear to be a toolpath artifact that's resulting in many small individual cuts in two spots in your project:



 This is caused by a lack of canvas resolution. Increase your Canvas Resolution to 200ppi to get the proper cuts that I imagine you're going for:



Those cutpaths might've been what caused your cutters to break? Let me know what you find.

- Charlie