2.5D support

When, if ever, will 2.5D support be added to Easel? The CAM part of Easel is what makes it so wonderful, but without being able to do 2.5D I find it’s use limiting at best. I frequently have parts with curves on the Z axis… not being able to do this in Easle is limiting my ability to use it, and many others I’m sure!


We are actively looking into the different ways to extend Easel’s CAM capabilities. There are many ways to do the full 3D curves, what types of things are you looking to make? Here are some different ones that come to mind

  • Taking raster images and “projecting” them into 3D space as a height map.
  • Importing 3D objects from 3D design programs (STL files)
  • Simple 3D operations on 2D shapes, like bevelled edges, chamfers, etc.

Can you tell us a bit more about what kind of things you are trying to make?

As an alternative CAM tool which is reasonably priced, easy to use and runs on OS X and Windows, you could look at MeshCAM – there’s a free trial.

It takes STL files and produces gcode, so you would need a way of sending code to your machine – I don’t know whether easel does that?

I have no connection to MeshCAM other than as a satisfied user.


I’m trying to carve a 1911 Colt 45 grip. I have the file in IGES, DXF, DWG, and STL… however it sems that I can only import SVG. It there is a method of importing an STL into Easel I’m not finding it.

https://grabcad.com/library/1911-grips is the file I’m specifically wanting to carve. I opened the IGES file in Inventor, and exported out the DXF, DWG, and STL files. I 3D printed the STL and have verified the model… now it’s time to carve it on my Shapeoko. This is my first forray into attempting 2.5D and it is proving… frustrating.

Here here to the addition of STL imports for Easel. I ended up purchasing MeshCAM for this ($250) but I like the way Easel works and would greatly appreciate this feature. I think Easel is very well done (lots of room for improvement but has “great bones”).

I was able to download and install Autodesk Fusion 360 (free for hobbiests and students) to generate my CAM paths. It took about a day of running the tutorials, and then playing around with my specific model to get my toolpaths generated in a way I’m happy with. The second model then took me about an hour to do once I’d finally got the general gist of using it.

I’m NOT happy with the CAD aspects of Fusion 390, but the CAM part was pretty decent… albeit not exactly intuitive compared to what I’m hoping for with a general waterline type slicer model for 2.5D milling operations in Easel.

Can you please explain what you mean by a waterline type slicer model for Easel?

Certainly. :smile: I get there are competing interests here between:

  1. Easel is easy to learn and quick to get up to speed
  2. Users wanting more options and control to do more complicated jobs, fast and easy, with the power of fully fledged CAM software without the steep learning curve (or costs) of a complete CAM package.

A difficult line to walk to be sure, but I think doing a basic waterline / slicer type solution would work for 2.5D operations, and allow for vCarving as well.

As we know, slicers for 3D printers work on a layer by layer approach, so if a STL intended for 2.5D milling (or vCarving) were imported into Easel, the toolpath options are pretty huge. It’s a daunting task to say the least to develop a generic model for how one might go about generating GCode for that… but, if you take an approach where you basically imagine, like a 3D printers slicer, where you generate tool paths based on what would be exposed “at the water line” for each layer/slice, you have a quick and dirty approach that could work.

This relies on the STL actually being 2.5D and not having any under hangs for subsequent layers, but if they did either a) the prior material above that point would be removed or b) it’s just ignored and a vertical wall would be generated (for a simplicity standpoint, I’d find option A quite acceptable. A user would quickly learn what 2.5D means when their parts stated to be machined away due to a problem with their model… :wink: In any event, the approach might be too far removed from the existing toolpath generation model to work… but it’s an idea. It would require the specification of layer heights, just like with 3D printing, which Easel doesn’t currently cover. It also doesn’t lend itself to particularly FAST machining because every layer would effectively be a finish pass… so with that basic implementation there wouldn’t me any means of having a roughing pass vs finishing as how is traditionally done.

That’s not to say that Easel couldn’t optimize this for a roughing pass and finishing pass, where parameters would be set for maximum step down, material to leave on rough pass, or step over, but those optimizations could either be hardcoded amounts, or maybe specified through the existing material type specification part of the UI where the user wouldn’t have to KNOW what good numbers were for roughing vs finishing, they just provide their existing input Wood, Plastic, Aluminum, etc… and maybe some advance tab allows override of default values for roughing operations vs finishing operations.

So, lets take two different examples for 2.5D milling operations:

  1. My 1911 grips.
  2. VCarving something like this 2.5D flower model from Thingiverse: http://www.thingiverse.com/thing:424707

With the grips, the STL would be imported, on import, you orient, scale, and set the Z level… just like with a 3D printer. For something like this, I’d be likely to either use a ball endmill, or a straight endmill with a much smaller stepover so it didn’t obliterate the curves. Then you generate the toolpaths, and hit carve.

With the flower, same thing. import, orient, scale, and set Z. With this model I’d be using a 60 (or 30) degree V-Bit, so stating the tool would change the toolpathing.

In both instances, the particular tool being used dictates the paths generated, but it’s not terribly difficult for the enduser to provide that information. If orienting, scaling, and setting Z wasn’t an option, then so be it… let that be an issue the user must solve prior to importing the STL.

The UI already allows for stepover, and the material library specifies depth of cut. So the bit type in addition to the existing bit size would need to be added as well.

1 Like

@DasWookie some really good ideas here. I’ve spent a lot of time thinking about this and love that I have people to talk about it with now!

I think that the “slicer” approach would not give the results you’d expect because of the “non-local” intersection problems that 3D milling presents. The bit can’t be treated like a “point source” the way it can with 3D printing, it can intersect the model not just at its XY center but anywhere within its radius, all depending on the function defining the XZ (or YZ, they’re symmetric) profile of the bit (a v-bit is something like z = abs(x), a ball end mill like z = sqrt(r^2 - x^2) like a circle).

Your method could definitely work as a roughing method though: you can use an “inside offset” version of that slice and fill it, stepping the slices by max depth-per-pass.

Yes I agree. I fully admit that it’s a simplistic solution… With my milling machine (aka the big Bridgeport) I do 2.5D profile milling manually where I just use the edge of the endmill and just work at 0.010" passes, and traverse across the piece back and forth, changing my Z and X, then run it across the Y… I can get almost organic curves even manually on the mill just from plotting the steps ahead of time (and taking copious notes) doing the machining manually… but not if there’s too many changes in profile or if the profile isn’t uniform across the width of the part. I then clean up the profile with a file… but the same principals apply where you could get smooth transitions, even with a flat endmill (as opposed to a ball mill) just have having REALLY small step overs. The smaller the step over, the more you can fake having a ball mill even with a square face.

Anyway, the “point” vs tool radius issue doesn’t seem too terribly daunting as it could be specified as assumptions can be made for where the tool is in relation to the model in the X/Y axis, so in generating the toolpathing, there’s just going to be safe zones where the tool can move, and areas where it’s too large to move into so not safe. Obviously, if you tried to stuff a 1/4" endmill into an area of only 1/32nd you’d either obliterate the work, so need to be using a vBit instead. The toolpath generation would have to determine it’s “Don’t go there” zones so the carving would have less “resolution” than the STL.

I expect Easel is already dealing with that for 2D operations where if someone is trying to cut something too intricate with too large of a tool, it’s going to either have to skip that detail, or it’s gonna mill out too much. With something like Fusion 360 in the simulation, it shows it’s doing the former, where it’s just not trying to cram a tool larger than the detail in.

The real desire was basically to get folks into 2.5D milling from STL files in a much simpler method than them having to learn all the CAM software out there and figure out what works best for their experience, technical, and fundage levels. :smile: I’m pretty experienced with CAD, but other than 3D printers and my Laser Cutter, am totally new to CAM. Most if not all of what I bought the SO2 for is to do 3D milling which I can’t do manually (easily) on my Bridgeport Vertical Mill, or just cut out with the laser. I’m using Fusion 360 for doing my CAM for the 3D milling, but I’ve gotta think if an experienced machinist like myself with lots of experience with 3D Printing and Laser cutters had to struggle for over a week to find a CAM solution that worked JUST to generate the toolpaths for those grips… what’s gonna happen to somebody who’s not as technical or experienced when they try to do any 2.5D work? Likely give up feeling disappointed and frustrated. There’s gotta be a simple method of going from an STL to 2.5D with Easel without having to be as versed in the CAM knowledge… it certainly won’t be as fast or efficient as crafting your toolpaths in a full blown CAM package, but it would still work and get them the results they are likely after. Let 'em learn the rest as they gain more experience or want to invest the time and money necessary to get faster runtimes… hopefully I’m not just rambling here and this makes sense to y’all rather than just my fuzzy head. :slight_smile:

I definitely share your desire to make a CAM solution that Just Works™ for newcomers. You absolutely shouldn’t have to invest hundreds of dollars just to make your machine work.

I have bigger concerns than just the technical ones about STL “import” in Easel. If one isn’t experienced, where would one be getting those STL files in the first place? The majority of 3D file generators are a blackhole of complexity anyway. I don’t want Easel to just kick the can up the road in terms of design. It isn’t a useful solution if it just puts the onus on a third-party piece of software. I think it might be better to focus on built-in 3D operations, like v-bit carving or simple 3D operations like chamfers and bevels or using raster images as a height map for a 3D relief.

For the immediate future, I think ^ that is the biggest question Easel has to address. STL import isn’t The Easel Way™, because it still forces the user to have a lot of knowledge (just about a different area).

Hmmmmm. You have a good point of the “Easel way” I wasn’t considering RE the CAD / design aspects of the app… To counter a LITTLE bit I can say that the VAST BULK of what I’ve printed on my 3D printer has come from Thingiverse. Models others have developed and I’ve benefited from. I’ve contributed back to the community as much as I can with of my own designs, but I would say a good 80% of what I’ve printed has been designs others created, and I benefited from. Even with simple tools, not everyone has the eye for design, and just want to be able to quickly and easily replicate something someone else created. The tide raises all boats.

With the SO2 I purchased it for a single SPECIFIC project, a tool to meet an end result, which was 3D carving a design I am unable to do by hand… I then hit the wall on what I could do with Easel with being able to do them in 2D, but that wasn’t what I needed… and had to go on my CAM learning crash course. When I asked about 2.5D support, I wasn’t considering the specifics of design down the road. I already HAD my model, I just needed it carved and Easel couldn’t do it. but you are right in that the power of Easel as a design tool is something I’ve not played around with too much, and also recognize not everyone has the knowledge (or software) for doing their own CAD work.

I like your idea for how to add vCarving support from an image, similar to how it works with vCarve Pro or Aspire, where the thickness of the line == the depth to cut. Fast, simple, and easy to learn. You could draft your design in Photoshop, Corel, Paint, whatever… and then drop it into Easel and be vCarving in a matter of minutes. Heck, I could have even used that for the grips project probably if I managed to get a gradient working correctly. Assign 0 for maximum material depth, 255 for surface, and away you go for all points in between.

I think vCarving is something that a LOT of Easel users would really benefit from, I admit likely even more than 2.5D support… be it from an STL or in-app design, but for me, most of what -=I=- will be using my SO2 for, will be 2.5D from models like STLs I make in a separate CAD program. So for now, I’ll continue to design in CAD, and then generate toolpaths in a separate CAM package, and mill with yet the third piece of software for the sender/controller… rather than benefit from the power and ease of use with Easel.

I am curious tho… do y’all have metrics on how many jobs are actually COMPLETED (aka ACTUALLY carved) which were started from an imported SVG vs completely designed inside Easel using the built in CAD? I would think most which actually make all the way to the mill, are from an SVG. Basically, how many folks are using the CAD functionality, vs using Easel as a CAM and sender, and ARE actually doing their designs outside of Easel, and only jumping into Easel once they have their DXF and/or SVG files which was generated in a seperate CAD package or Inkscape, Illustrator, Corel, etc… or downloaded from thingiverse or shapeoko.com/projects.

1 Like

I too would love to see a STL import for easel. For me easel is a simple way to send my designs to my machine. I m currently designing things in Illustrator and importing them into easel with the SVG import option. Why not allow me to import STLs from my 3rd party cad software just the same. I understand the idea of making easel able to do as much as it can for beginners and people who dont have other software. but I dont want to learn another software so that I can do something that I could do a lot faster in a program I know already. I also do not want to be limited with how i design as many CAD programs have their advantages and disadvantages I would assume a built in CAD for 2.5d designs in easel would have its own disadvantages/limitations to other CAD programs that have been out there for years.


I posted this in another thread, but here it goes…
add a slice that uses the system already in place in easel… grayscale… slice the .STL into slices that = the material setting ie; the material you set is 1in the >STL would be sliced into 1in pieces and the layers in that 1in section would be flattened into a shape that contains the grayscale hightmap.

don’t know if that makes sense… not sure that I a explaining it correctly or clearly.

I really think the Designers need to pull a few fingers out cause Sketchup is miles ahead of you, open source and build Easel into a app with mods/Addons and get the community to work for you basic people can work with basic stuff and Advanced users can stream ahead with out waiting on you and it’s just going to push people away from easel into Third party controllers to use with other software.
I love you guys and only just Ordered my X -Carve but if you don’t do something about importing .Stl i will pull the controller out and put in a 3rd party controller for MACH 3.
I can’t help be ask what if you don’t have internet and you want to use Easel you are kinda of expecting people in poor country’s to have good internet.

I personally think Inventables have it right here. It would be very easy to bolt all sorts of functionality into Easel but I think the ease of use would suffer. Easel is the tool to introduce you to the CNC world. Heck, the wife can use it for simple tasks and gives her confidence before hitting the Carve button and she is usually scared to use power tools. :smile:

The danger is that you add lots of functionality and it makes the software too complex for novices. I would personally vote to maintain the low complexity and ease of use. Sure add new features in the Machine / Advanced menu (machine inspector for example, excellent) but don’t confuse a new user with a flood of features and CNC specific language.

If you need more complex toolpathing you are going to reach for more complex software and possibly hardware anyway so why “break” Easel?

Sure, I’d like to see V carving support and love the idea of raster height maps but I think it needs be carefully thought through and maintain the core strength of Easel: Ease of use and novice friendly. Inventables have that bang on. :smile:

As an aside, some of the excellent apps coming online have easily doubled the capabilities of Easel since I started using it and I doubt that’ll slow down much over the next few months especially when Inventables get their Apps API sorted.



1 Like

I’m with @IanWatkins on this. Keeping Easel easy to use no matter how many features are added is key to removing the barriers that many have when entering the world of CNC.

The thing is, Easel isn’t the only software that will drive the X-Carve in its default configuration. There are offline solutions as well as other online solutions and because of this, one can get as advanced as needed. If Easel can’t be used for some reason, there is no need to tear out the electronics package and replace it with something else.

There are plenty of discussions on this forum and the Shapeoko forums that talk about mods that take these machines to more advanced levels, so I won’t go too deep into the topic, but the X-Carve has shown to be a very capable machine with or without Easel.

For Easel though, STL import or not, v-carving or not, if it can be done and kept easy then awesome. If complexity can’t be added without increasing complication then my vote is to keep it simple.


Some day if you decide to go with more capable applications and stronger spindle options, I will remind you this post. :innocent:

I already do. But I still stand by keeping Easel easy to use.

I use Fusion 360, SketchUp, Illustrator, MeshCAM, Aspire, Blender, Modo, Auto CAD, UGS, ChiliPeppr… I am all for more professional tools. That doesn’t mean Easel needs to be more complicated.

Trust me, I’ve been in 3D and vector based design for more than 20 years now. There is still a place for Easel in my work flow.


not saying we need to make easel to complicated… but being able to at least import STL files would do a world of help in making it more useful. STL’s are what make 3d printers so popular. Many people don’t have the tools or really the interest in that part of the tool chain. I personally think that is their loss… but being able to go though the catalog of STL’s at thingaverse or other sources would make xcarve more useful like a 3d printer. Think, like a vending machine… just search for a thing you need… download the stl and pop into easel and carve… much how some use a 3d printer to make plastic parts. Xcarve is for all those other materials.

1 Like