Keeping zero position

So I was experimenting again tonight. I’m not sure why but the machine was switching from metric to imperial during the carve. I did find that if it had switched to imperial without me noticing I couldn’t use the g0 code to move to my zero point. If I rehomed, it re-set to metric then I was able to make it move.
Unfortunately, another issue cropped up. I was finally able to get the machine to move with the g0 code but it wouldn’t go back to my 0,0 point. Below are pics of the x0,y0 that I set, then rehomed, the used MDI to go to the x,y that I had from the start. The problem is that it wouldn’t go to the correct home. The coordinates were correct on the screen but the true home (as in the home on my work piece) was 4mm away in both directions. I thought it might be a fluke so I tried again and same result.[
Full disclosure, I had to go back to 1.09 this weekend because my laser stopped working correctly with 1.2 update. I’m not sure if this would have happened with the updated firmware.
I am working on a job right now that will take about a week. Once it is done, I am going to update the firmware again. I’ll try the rehoming thing just to see if it works better this time. I may have to also work with 1F to figure out why the laser fouled up.

Hey Dave,

just by the photos, I can not follow what you did and therefore can not tell what the problem or the solution is. Also your description is not easily understandable. Could you please provide a step-by-step description of what you did (with numbers and actions you did) and what happened as a result, step by step. I need to be able to reproduce it here.

Can you also first say what the exact intention is of what you wanted to achieve.

But I got to go now, I will be back somewhen around 20:00 CET.

After turning on the machine and homing it, I find x0,y0 on my work piece(bottom left corner). I save those coordinates and rehome it(as if there was a power outage and I had to restart the machine). I enter the coordinates I saved in the midi tab using the g0 command. Assuming it didn’t switch over to imperial without me noticing, the machine will move the bit to the coordinates I just put in but they are not at the corner of my workpiece where I set them. I then move the bit back to the actual x0,yo (the corner of the workpiece in this case) and find that the machine made an error of 3-4mm. In other words, after all that it puts the bit in a spot that is 3-4mm off from the actual xo,yo that I set in the beginning.
Does that make more sense?

Good afternoon Dave,

How exactly are you doing this?

Answering yes when it asks if I want to home. On startup

Hey Dave,

Sorry, what I meant was: How exactly are you doing this?

It appears you are homing and then using the MDI to type in the offsets you took a picture of when you first setup your work. ( Correct me if that is not what you are doing )

Homing the machine does not put it back to the same exact place all the time. 3-4mm seems more than i would have expected - i have seen 1-2mm on my machine. In other words every time I home it could be 1-2mm off of where it was when i homed when I setup my work. For you it may be 3-4mm it depends on several factors on your machine. That is why I use a secondary block to reference my work to - not home - as I described several posts above.
I would only do that more involved type of setup when there is no more corner to use on the part.

I assume the same as everyone else. I secure the piece, put in an end mill bit and bring it to the edge. Hit home for x and y then use the paper method for z. I have a spindle and didn’t understand how to alter my equipment to use the touchprobe so I sold it. This method has worked quite well for me with the 1F and for the last 2 years with the Laguna CNC at my community woodshop.

Chris, that doesn’t make any sense. Homing, by definition, should bring the machine to the same place every time. The machine home doesn’t/shouldn’t change, only the workpiece home changes based on where you secure it on the spoilboard.
do you have a picture of the secondary block set-up? Right now I am getting around the issue as described above. I have a u-shape block (from Morgan’s spoil board files) set at a certain spot and I make sure that doesn’t move at all. I then place my workpieces for this epoxy project against that so I now I am in the same spot. I also try to bring the spindle head back to the material home before I shut it off so that it is in the correct position when I turn it back on. Since I can’t use the commands to reliably bring it to any place on the board I want, I make sure not to home the machine when I turn it back on. Once I finish this project and am ready to start a new one, I will let the machine rehome on start-up.
I wonder if the Masso system has these same issues?

1 Like

Dave, That is the limitations of stall homing. I am sure you have seen that when the axis hit the stops when homing they jump back after they hit. The home is set to 0 after that jump back occurs. That jump back is one thing that is not consistent. Another thing is junk buildup between the axis blocks and the stop blocks. This is what I have observed, I am sure other will clarify if I am wrong on some points.

Here is one thread that discusses using limit switches to overcome these limitations.
Can you add limit switches
I have not done this because 1. it adds complexity to the machine thus more things to fail 2. there are cheaper ways to get accuracy, however they take more time.

I won’t have time till the weekend to take pictures of my setup. But if you’re using fixtures already then you are well on the way. If you are taking your piece off for pours or whatever maybe you can rebump the fixture to get origin before you put the piece back on.

1 Like

Hey Dave,

I assume you mean you press the zero button for these axes, not home. Okay, then you have the numbers. Do you have some example numbers after zeroing workpiece?

That would not have been necessary. With a (now earthed) spindle (in contrast to double-insulated hand router) you don’t need the magnet probe anymore. You only need one wire on the touch probe, because the spindle is already earthed. If the touch probe still did not work after switching to a spindle, all you would have had to do was swap the wires because some touch probes are wired the other way around (see here for details). The touch probe works perfectly with a spindle this way.

As Chris @ChrisM already mentioned above, using the 3-Axis Touch probe gives you more positioning repeatability than stall homing, either on a fixed block or jig, or at the workpiece itself.


Yes, I mean to zero. Either way all of the techniques people have mentioned so far just haven’t been consistent enough to get me close enough to my zero coordinates to be reliable in a multi-day carve. Especially when it is a customer’s logo or design, being off even 2mm is way to much. Maybe it’s just a limitation of the hardware. Maybe Masso will be better.

1 Like

Hey Dave,

the biggest mistake you made is to sell your Three-axis Touch Probe.

On a Standard Series Onefinity CNC machine, there are two ways to get acceptable positioning repeatability: Either

  1. Retrofitting inductive proximity sensors as limit switches or

  2. using the Three-axis Touch Probe instead of inaccurate stall homing, either on a fixed block or jig, or on the workpiece itself, and subsequently only relying on the workpiece coordinates.

If I were in your place, I would order a Three-axis Touch Probe to be able to achieve much better positioning repeatability this way.

We will have to agree to disagree on the probe for the moment. Even when I had the Makita, the probe wasn’t accurate or repeatable. X and Y were OK most, but not all of the time. Also, with the Spoilboard and clamp system I got from Morgan’s etsy shop, you can’t easily use the probe with the u-clamps in place. They get in the way. so you have to try to probe x/y before securely clamping it then hope you don’t move it.
At least 25% of the time it would try to jam the bit through the probe when doing Z. Broke 2 bits that way. I sent a question to 1F about it but didn’t get a response. To be fair, it was buried in an email with a few other issues trying to get it set up. Anyway, I’ve moved on at this point.

Hey Dave,

what @ChrisM suggested above, is to clamp a block somewhere on your workarea, that can be left permanently there, away from your work, and to use the touch probe on this block in order to substitute homing with a more reliable method. Unlike when using stall homing, this block never moves and repeatability should be excellent.

Regarding problems when using the touch probe, you should be able to eliminate them by taking care to clean the bit and the inside of the collet before probing so the electrical connection is of good quality, or if errors come from the flutes, even better use the shank of a bit that you inserted the other way around into the collet as the probe to probe X and Y (and use the real bit only to probe Z).

If you had such problems there could also have been a problem with the probe wire. I would not give up that fast, since when everything is in order, the Touch probe brings excellent results.

1 Like

Just so there is no confusion with the difference between home and setting zero for the different axis. Homing the machine defines the work areas total size by finding the limits to the axis on one side and then the machines total cut area is set by the soft max limit in the axis settings 32in for the x for example. Where these limits are found is by the voltage resistance that it gets to when it hits the ends after pressing home. This is set to 2v and 1amp by default. This is what homing is for to define the total cutting area for the machine.
The next function is the zero for the different axis which is set by probing or manually with the set zero position buttons. Different than the home buttons because rehoming will redefine the total cutting area. This second function of setting the zero for the axis tells the machine where your material is in relation to the total cutting area. As long as you do not turn off the machine this zero position will be the same no matter what file you run. Its important to have a grid as a reference for your material and the stops you are using are parallel with the machine as from this corner everything gets measured from. If the carving is out could be because the material is not parallel with the machine from the starting corner. I cut my fences with the machine to ensure they are parallel. Also when you do turn off the machine its a good idea to roll it back to the farthest stop position before selecting home to ensure the two sides of the gantry home parallel to each other.


Hey Dave,

PS: @JDog in fact suggested this too here:

Hey JDog,

lol, this thread seems to evolve to a collection of explanations of difference between homing and zeroing :slight_smile:. My last one is here, and by the way, onefinitycnc also has one here. There are probably many more in the depths of the forum, because who has not ever tried to explain it to someone (proud when you first understood yourself :slight_smile:). But yours also refers to adjusting the stall homing parameters (see also manufacturer’s video on stall homing fine tuning)


This is my temporary workaround, just installed it a few days ago. I have two fences, one set at the limits the X and Y axis, cut with the machine itself, and another temporary fence system with the touch probe clamped to a block which also gives me the workpiece x/y 0.

I work with x/y offsets in Vcarve or create an artificial spoilboard in my CAD software, with the workpiece offset. Of course it could be more elegant, but seems to work perfectly fine.

1 Like

Very interesting.
Let me see if I understand:
Your touch probe block is clamped exactly a certain distance away from the corner in the fence - looks like X1.0 Y1.0?
Then in your cam software you always put your offset the same distance away from the stock corner?
That would make things a lot simpler when working with square cornered stock pieces.

1 Like