Arbitrary Zero Point

I thought this was already requested, but I can’t find it now.

It would be great if we could specify where our zero point is in Easel. I have been using the x-carve to cut features into existing parts, and starting at the center is easier for a lot of things.


I agree this would be nice. I’m very used to drawing all of my CAD designs using a center 0,0 point and then zeroing my spindle to this point on what I’m milling. Using the bottom left origin on the XCarve will be something I’ll have to get used to until either Easel supports moving the origin or I go to alternate control software like Mach3 that I currently use on my other CNC.

I can see where this could be useful on an existing piece as Tony describes, but I find locating the zero on the font left corner for example to be easier than physically locating the center point of a work piece.

Trust me you will get accustomed to it, but both methods have their place.

These parts are not rectangular, so no corner. :wink:

I had not visualized that for some reason, must have posted before the first cup of coffee kicked in.

That would be kinda like needing to pee in a round barn, no corner…


TonyNo took the words out of my mouth! :smile:

I regularly work with non-rectangular shapes and it’s much easier to just zero origin the center of the piece. Milling from the center out is fairly common in the machining world.


yes i agree for free zero location

Once you can zero in the center that opens up all sorts of convenience for locating cuts anywhere on a scrap of wood/material. It also lets you align cuts on previously assembled or odd shaped parts easier. You can put clamps anywhere around the perimeter that no tool paths go. Zero at bottom left means the bit starts and ends there. No clamp on that corner. It also means you are limited to only cuts that are up and to the right from that corner. Using VCarve/Aspire to lay out tool paths I’ll offset zero/zero to the easiest place to align to/find on a part. Love to have the same capability in Easel.


1 Like

I just gave this a shot. Seems to be fine for “small” geometry.

I’m not sure if there is a negative max, though.

Is this feature planned for Easel? Like others, I have objects with radial symmetry where the only place I can mount to the board is the center of the object.

I don’t use Easel so I’ll use my experience with other CAD and CAM programs. Most CAD programs do not know or care where machine 0,0,0 is. You can draw your part anywhere on you screen. You are not required to start at X0, Y0 at the lower left corner of your part.

CAM programs also generally do not know where machine 0,0,0 is or care. You place your part in relation to the WORK coordinate (G54 to G59) X0, Y0 and Z0 . You then build your machining ops for that part. When you have drilled all the holes and cut all the pockets and machined the outside profile then you run the Post Processor and your CAM program generates the Gcode for this part.

Work 0,0,0 can be anywhere on the part. Bottom left, top left, top right, bottom right, center of the part or anywhere else on the part that you can determine where Work 0,0,0 needs to be.

On just about every CNC machine be it Laser, Mill, Plasma cutter. 5 axis VMC or multi spindle live tooling CNC lathe there is a Home or Reference position for that machine. The same applies to a X-Carve.

Home or Reference position is never used for machining because you can only move in 2 of the 8 directions.
Wait you say my machine only moves in 2 directions X and Y. It in fact can move in 8.
From home at the lower left corner of the machine. The machine can only move X+ Y+ It runs into hard stops in any other direction.

The 8 directions are X+ Y+, X+ Y-, X- Y- and X- Y+ You have to move the spindle away from home out into the middle of the machine travel in order to move all 8

If Easel will not let you set Work zero anywhere you want it then the folks at Inventables need to correct that ASAP.

Ariel, WA


Being able to tell the machine where to place X, Y, Z zero is much better than having it set arbitrarily. Especially when there is very little dimensioning in Easel.
It is hope and poke, waste a piece and try again guessing where the machine is going to go for starting the carve.
Sometimes I use the part center or the left corner of the part but Easel wants it at the home position.
Meaning that if you place the part off position it turns into firewood.

DanielAlderman, thanks for bringing this up. I always end up doing a couple of tries to get this right. I hope inventables will feel our pain and correct this.

1 Like

What would be even better is a real time digital readout like what UGCS has. Then you know that Easel has the zero where you want it.
Next is to move the Z axis last instead of first, that will save many clamps etc.
It isn’t like it has an arbitrary zero so much as sometimes it decides where the starting point is and that may not be the right place.

I have also noticed that Easel only uses two G codes, G1 and Go, it does not seem to understand G2, G3 or a host of others. Works but seems like it is missing a lot.
The machine has no trouble with G3s and G2s, the way Easel does it makes for a very long G code printout.

I have figured a few things out with it but I would like to see something less complicated than Chillipeppr and more sophisticated than Easel. Mostly now I use UGCS for running the machine after I design in Easel, that seems to work best so far.
I did have to calibrate the X and Y axis for travel, they were both over .100 off which for some things did not matter but when things have to fit it made a real difference.

I was a CNC/Tool and die/programmer for almost 40 years. Then I had some medical issues that hurt my memory so I am learning a lot for the second or third time.
I like the X-Carve a lot and so far I have not done it any harm.


For people with the 500mm xcarve being able to set the zero to top left corner of the xcarve would very useful. Right now I have to move the gantry to the top left to remove the piece it just finished and put in a new piece of wood/metal/etc. and then rehome on the bottom left corner. If I could reference that the home is top left in easel, life would be a lot easier… I guess I could make the top right home by switching the xy wiring around but and then I would be cutting upside down.

Easel is evolving and the more of us that request the more likely it will happen, at least that seems to be the case.

I too would like the ability to set the spindle start point to an arbitrary location.

Not all the work I do with my Shapeoko 2 is cutting entirely new parts. Sometimes, I want to make modifications to an existing item. For example, I’m working on an underwater ROV project with my son. We want to modify our motor mounts (trimmed down PVC “T” fittings) with slots for fins. Basically, we’re talking about three linear cuts 1/4” deep along the line shown here:

In this case, the difficulty lies in accurately determining where the (0,0) “Home” position is relative to the existing part. In the picture shown above, “Home” is roughly the lower right corner of the oak board, but not precisely. Attempting to place the bit accurately over that (0,0) home point is almost impossible, and any initial alignment error results in the slots being offset on the existing part, sometimes rendering the part unusable.

What I’d really like to do is place the bit at a well known spot and tell Easel: “You Are Here.” Like this:

In essence, I would like to specify a location in the Easel drawing area that corresponds to the starting location of the bit. Then when going through the “Carve” dialogs, Easel would tell the user to ensure that the bit was at the specified starting location rather than at the regular (0,0) “Home” position, and then do its cutting relative to that location.

It would be nice if the “You Are Here” location would be displayed in the Easel drawing area as a cross-hair with a circle around it representing the diameter of the currently installed bit as specified in the “Machine” menu. Dragging the symbol interactively, specifying the position with text fields, and being able to nudge the position with arrow keys would all be useful interface features for accurately placing the “You Are Here” location.

FYI, as a temporary work-around, I tried to fake “You Are Here” by offsetting the cut lines in Easel so that the point shown above was at (0,0) in the Easel drawing area. However, when I did that, the job stalled at 10% completion, but never finished. Pressing Play / Pause repeatedly caused the cutting to advance in fits and starts, skipping large parts of the job. (I think what is going on is that negative coordinates are causing an error condition, and cutting is stopped when the negative coordinates are encountered. Pressing Play / Pause causes the G-Code interpreter to jump to the next segment, which may or may not cause another error depending on whether it has negative coordinates or not. But that’s just a guess.)

1 Like

I’m going to be making a waste board similar to yours, complete with Rockler items :slight_smile: What I plan to do, is make an “L” shaped clamp that would go in the T-track. If you use the CNC to cut it out, including the holes for the t-track bolts, it should all be square etc. Then, any irregular pieces, such as you pipe would get clamped on the inside corner of the L. In your case then, the XY zero would become the inside corner of the L. The L clamp, would in effect replace both the piece of oak and the black end stop clamp.

Having a square sounds interesting. But I can’t see that it solves my problem.

Most likely, the square’s material height would not match the height of the existing part to be milled. So if I lower the bit to accurately center it over the corner of the square, I can’t lower the bit onto the existing part to “zero” the depth. And if I zero the depth on the existing part, then it would be difficult to accurately center the bit over the corner of the square when the bit is floating more than an inch above it.

Correct, you would have to zero your Z over the piece to be machined, but the XY zero will be a consistent point, which is the inside corner of the “L”. So zero your Z first, then bump up by one click, move it away form the work workpiece, and drop down one click. Zero the XY, which would be 0,0 in Easel.