Shapeoko Pro movement resolution

I’m trying to diagnose a 2 sided cut that doesn’t quite line up which leads me down to wondering about the steps/mm… At 40 steps/mm that means 1 step is 0.025mm. Is that the smallest movement that the shapeoko will make?

Aka, if I use the MDI to enter:

G0 X0.0125

will it randomly end up at either X0 or X0.025 but never X0.0125?

More or less.

It’s not random which side you end up on — it should be consistent, but I’m not sure how Grbl handles that, and if that point were along a path of movement, interpolation would pass the machine through it (more-or-less) as expected.

Note that if you calibrate for belt stretch along X and Y then the grid won’t be nice even units which match up thus.

When you say “2 sided cut” do you mean a cut where you flip the workpiece over to cut the bottom side?

These are a little harder than one might first expect as there’s a whole series of things which can compound to produce a large error from side to side.

How are you re-aligning the workpiece after the flip?

Thanks for confirming that. It doesn’t necessarily help me figure out what I’m seeing but fixes an annoyance in my brain… :slight_smile:

I’m not sure what you mean about belt stretch so let me explain what I’m trying to figure out. I machined a part out of 3/8" aluminum by:

  1. face it, adaptive clear the outside about half way down, put a hole in the middle, contour about half way down
  2. flip it, face it
  3. reference the hole for the center location and then adaptive clear the outside and contour the remaining half
    4/5. cut a hole in each end

The basic shape was 35x20mm and the step 1 side ends up at about 35x20. The contour on the second step ends up more like 34.9x19.9 with it slightly uneven offset in either direction (aka, it’s not 0.05 off on each side). All were cut with the same toolpath settings and bits.

All that being said, how should I add belt stretch into my attempt to mentally understand what is happening?

1 Like

This might help on the belt stretch and calibration

Yeah, multi-sided parts are hard and I’m trying to work to a process that works for me…

I made a simple probe that detect continuity between the “bit” and the workpiece (bit → aluminum piece → vice → SMW fixture plate). The bit is a 1/4" gage pin or a tiny endmill if I’m referencing off the hole in the 3rd step.

The part I’m wrestling with is that the part isn’t shifted, it’s literally smaller in both x and y after the first flip. I have 35x20 on side 1 and 34.9x19.9 on side 2…

1 Like

Yeah, that is a little odd isn’t it.

I might rework the CAM so that I was cutting the full profile from one side or the other rather than trying to line up on the sidewalls.

Are you using roughing and then finishing passes? i.e. is this possibly the spring in the machine causing the difference in the final dimensions? What’s different about your toolpaths between the two sides?

1 Like

This is 100% a test of alignment so I’m cutting half way down to be able to see alignment issues. You’re right that I could hide this with a full depth contour. Mostly trying to get a good workflow worked out for future cuts

The contour is s super conservative to make it accurate.
Adaptive to 0.5mm remaining, then first contour to 0.1mm remaining, then to final size and the last, but not least a spring pass. That’s all with a 1/8" endmill at 1mm DOC.

The only difference between the toolpaths on the two sides are that I bore a hole on the first side. Otherwise, they are cut and pastes…

Aha, right.

I’d expect to get better than 0.1mm repeatability on the same toolpath. Might be worth trying a couple more pieces and see if it’s consistent or if you’re seeing jitter between jobs.

I generally expect to get about 0.1mm accuracy on a first cut, down to 0.05 after a measure and CAM tweak. As Will said, the minimum step size is 0.025mm (and those are low-torque microsteps so not entirely consistent) which sets the lower limits.

If you’re going for this sort of precision, keeping the belt tensions consistent (not high, just consistent) and your linear rail blocks well oiled is key, if the rolling resistance of the rail blocks starts to increase you get effective backlash due to belt extension.


The piece I just cut is the first one with my finished probe but I did cut two earlier with a hacked up probe and they all had similar problems.

As I think through this I can think of 2 possible problems in what I’m doing. The first is that I set my zero without thinking about the fact that it will need to be rounded to 0.025 increments and therefore my zero point was probably not actually on a 0.025 increment. The second problem is that I was tricking fusion 360 into doing an extra cleanup pass by having a finishing offset of 0.001mm. I wonder if there’s any chance that slight +/- could change the rounding of one of wall passes.

After all of that I also wonder if using 1/8" end mill is just guaranteed to give slight dimensional errors. At 1/8", all contours need to be offset from the final dimension by 1.5875mm which would need to be either 1.575mm or 1.6mm depending on how it ends up rounding wrt the zero point and cutting point.

I’m going to play with another cut and see if I can change anything with a slightly different contour toolpath and keeping 0.025mm rounding in mind when zeroing the center of the hole but all in all I think 0.1mm accuracy on the flip might be the best I’m going to get.

Thanks for the advice to oil. I had considered them as a source of backlash.

1 Like

The final 0.001 might have pushed the machine one extra step yep.

Regarding the end mill sizes, it’s quite unlikely that the end mill is actually 1.5875mm, even if it was when it was new, going for this kind of precision you need to adjust for the cutter size and wear. Also worth considering, if you’re really looking to get cuts at this precision is checking the overall calibration on the machine. The Gates 2MGT belts are a nominal 2mm tooth pitch, before extending as tension preload is applied. It’s quite important to have both your Y belts at the same tension (or note) but if you’re chasing those decimal places you might want to check overall calibration first

Once you start to put 40.0xx or 39.9xx into these fields instead of 40 steps / mm it’s rather less relevant whether your cutter is a nominal mm or 1/8th of a banana as it’s all floating point math anyway.

I did run the calibration test for belt stretch but didn’t need to adjust the steps at all so that was nice.

The 1/8" endmill is supposed to be +/- 0.001" (when they were born). Although, despite this thread, I’m not actually trying to get to that level of tolerance. My goal was to be able to cut on all 4 sides of a part and have those cuts line up to a normal tolerance level. I think with the new contour toolpaths and when centering on a hole making the middle of the hole a multiple of 0.025mm in x/y took care of the bulk of my problems.

The last run of this was close enough on 3 sides that a quick sand hides the splitting line. The 4th side is off by more than that. I’m guessing it’s probably 0.025mm off but that’s close enough!

1 Like

This topic was automatically closed after 30 days. New replies are no longer allowed.