Upgrading Z axis, need some help

I’m upgrading the stock Z axis to a direct-drive ball screw setup. Same Nema23 motor but obviously the ball screw has a different thread pitch than the Acme screw.

Can anyone tell me which settings I’ll need to change and how to calculate the new values?


This is a helicopter.

Try as I might, I can find no link between my post and a helicopter.

My cynical nature (and the Internet) lead me to think this is some form of highly-advanced sarcasm that only a small group of people will recognize and appreciate.

I’m a big fan of properly-utilized sarcasm, so I’m sorry I missed this one. Thanks for posting though! :smiley:

1 Like

Thanks once again, Phil!

1 Like

I just used Phils file last week for the same thing and this thing is spot on!

rofl, didnt catch that but you have me cracking up now!

1 Like

Four things need to be adjusted in GRBL:

  1. Z axis steps/mm ($102)
  2. Z axis max rate ($112)
  3. Z axis acceleration ($122)
  4. Z axis max travel ($132)

All four will require testing on the machine.

The link Phil provided covers #1.

For #2, GRBL suggests the following:

The simplest way to determine these values is to test each axis one at a time by slowly increasing max rate settings and moving it. For example, to test the X-axis, send Grbl something like G0 X50 with enough travel distance so that the axis accelerates to its max speed. You’ll know you’ve hit the max rate threshold when your steppers stall. It’ll make a bit of noise, but shouldn’t hurt your motors. Enter a setting a 10-20% below this value, so you can account for wear, friction, and the mass of your workpiece/tool. Then, repeat for your other axes.

I went with a conservative 60 ipm. I think I calculated my stepper’s max to be like 73 ipm before torque drop off but I’ve never measured it.

The same basic thing applies for #3 as well, as per GRBL wiki.

Again, like the max rate setting, the simplest way to determine the values for this setting is to individually test each axis with slowly increasing values until the motor stalls. Then finalize your acceleration setting with a value 10-20% below this absolute max value. This should account for wear, friction, and mass inertia. We highly recommend that you dry test some G-code programs with your new settings before committing to them. Sometimes the loading on your machine is different when moving in all axes together.

I just did some testing on this value and found the max accel was around 1000 for my setup so I backed off to 750 for my setup.

For #4, you’ll need to just jog the machine until you reach the furthest point you want it to be and translate that into max travel. For instance, what I did for this was after homing and clearing my G54 values (or I switched to G55 which does the same thing for me) and with no bit inside the router, I jogged down in increments until I either bottomed out my Z axis or my router touched the waste board (I think I actually hit my Z bottom before the router actually touched the waste board but I have 1" lift on my Y plates). Once it reached that point, I entered the reported Z value into my $132. I could have reduced the value by some margin to account for a bit in the router but I didn’t feel like doing that. Note this value should be positive so if it reports negative, just put in the positive value.


You do great helicopters though!

1 Like