Config Z lead screw 8mm diameter, 1 start, 2mm pitch

I upgraded my printer to lead screw 8mm 1 start 2mm pitch to allow me to have a .1 mm movement per step
The original lead screw was an 8mm diameter 4 starts 2mm pitch which was only allowing a .4 movement per step

My current z axe config is as follow
[stepper_z]
step_pin: PB5
dir_pin: !PB6
enable_pin: !PC3
microsteps: 16
rotation_distance: 8
endstop_pin: ^PA7
position_endstop: 0.0
position_max: 250

What should I change to match my new lead screw ?
Thank you

Just to be on the same page:

  • Pitch - is the distance between screw threads
  • Start - the number of threads that are wrapped around the axis of the lead screw
  • Lead - Is the linear distance traveled for each complete turn of the screw
<lead> = <pitch> * <starts>

This means more Starts equals higher speed but lower resolution

<steps_per_mm> = <full_steps_per_rotation>  * <microsteps> / <lead>

For a regular 1,8° stepper and 16 microsteps:

<steps_per_mm> = 200  * 16 / 2 = 1600
<rotation_distance> = <full_steps_per_rotation> * <microsteps> / <steps_per_mm>
<rotation_distance> = 200 * 16 / 1600 = 2

Or more simple:

<rotation_distance> = <lead>

When you set rotation_distance, then Klipper will no longer depend on your microsteps, this means you can modify microsteps without changing rotation_distance.
For higher accuracy, it is advisable to also:

  • Set microsteps to 128 or even 256 (TMC driver / fast 32 bit board)
  • Change to a 0.9° stepper with 400 full_steps_per_rotation
1 Like

I’m using the creality board 4.2.7 that is using TMS2225
motor for the z axe is 1.8 and I think step per rotation is 200
I do not know if that board /tmc support smaller microsteps

IIRC the board should run at 72 MHz so with the most recent Klipper versions you should easily achieve 128 or even 256 microsteps on the Z-axis without using interpolate