Adjusting S3 Steps and Micro Steps

So I’ve been reading allot about calibrating the machine. I wanted to know how many Micro steps can a motor do?

I understand the basics of GBRL and adjusting the settings

and watches a very useful video - I’m going to use my dial indicator as per this video to check my measurements.

The standard setup a S3 is 40 steps per mm or 200 steps per revolution - but are there micro steps to a step? i.e. 40.5 or is it always a round number?

1 Like

One can use fractions / decimals of a unit for a step/microstep:

75mm ÷ 74.97mm = 1.00040016 × 40 = 40.0160064

Basically a step is the full movement of the motor for one pulse from the stepper driver — this is determined by the mechanical structure of the motor and a part of its rating. Usually they are 200-step 1.8 degree) or 400-step (0.9 degree).

To get finer, one adds electronics which have the stepper driver send rapidly varying signals which will position and hold the motor at points in-between its position, microsteps.

So in your example there if the piece you are due to cut is meant to be 75mm but turns out slightly smaller by 0.03 the machine can make that compensation by changing the 40 value to 40.0160064 - is that correct?

Correct, but one is measuring a hole edge-to-edge or center-to-center, so as to not have this influenced by endmill diameter / runout / tool deflection.

So thats if you are drilling 2 holes.

Does the same work if I create a 7.5x7.5cm block?

Yes, if you can work out how to ensure that runout and endmill diameter don’t influence things.

My preference is to use holes to calibrate for steps/mm, then do a diamond-circle-square to get effective endmill diameter in a given material and verify that and steps/mm w/ a couple of them at different sizes (I suppose one could use regression analysis or something similar to just cut multiple shapes and calculate both values at once, but my math topped out w/ a hokey “Advanced Math” course after Algebra II since the school couldn’t find/afford anyone qualified to teach calculus or trigonometry).

Do you have a calibration template for a 1/4 end mill?


for tutorials on making a diamond-circle-square to any size you might wish.

I guess I should update

for Carbide Create.

I think I’d find it easier to do the diamond square test etc - when you say calculate end mill diameter and runoff, does that mean I need to add them to the measurements in the calculation?

The way I do it is:

  • machine the holes as noted and calculate belt stretch
  • apply that
  • machine a circle-diamond-square using the nominal endmill diameter
  • measure all the parts and compare their actual dimensions to what they should be — that should yield the effective cutting diameter once you lay them all out and compare them — @twforeman’s notes on this are linked at the wiki link and explain it in good detail.

I got my measure thing today but am hitting a wall.

I move X 150mm

Measure thing reads 150.13 calculation comes in at $0 = 39.96 rounded so I enter this in midi. Re-test and it moves the same 150.13.

I enter the $0 = 39.96 command again. Test again but have the same issue.

I try loading setting $$ - nothing comes up and it doesn’t seem to register in midi. I try $0 = 30 and again move the X carriage 150mm and it’s still moving to 150.13mm so the command isn’t being sent through and I don’t seem to be able to test it.

Am I being silly?

No, it may be necessary to over-ride your version of CM w/ a slash to get it to accept the commands.

See Calibrated Belt super slow cutting to get the log.

did you at some point enter $H in the command line? if so you will not be able to do anything with the log after that, until your machine has sat for hours.
I brought this problem up before with CM4, even sent an email to support but nothing ever got done about it.

1 Like

The bug did get logged and passed on to a developer (sometimes I mention that, other times I don’t) and I’ve mentioned it again in the team communications — hopefully it can be addressed in a future CM upgrade.

1 Like

So how do I enter a command? /$0 = 39.96?

Im running CM 4.11

I haven’t entered $H any time recently.

The settings for step adjustment are $100, $101, $102 for x, y, and z.
$0 is the step pulse delay. Try one of those?


So thats what I was doing wrong!

I thought it would be something silly! I can’t get the log to show the current settings but it was getting sent through.

@Jorge can you confirm the correct step pulse delay as I have changed that…

My X should now be accurate to 0.01mm. All I need to do is check the Y/Z next.

Thank you!

Defaults are listed at:

and each setting is described basically as well.

1 Like

Wonderful thanks, I saw a post that suggest 0.8 and 0.9 were different. Wasn’t sure if 1.1 would be different

0.9 and 1.1 should have the same defaults — verify at

1 Like