Z_TILT_ADJUST goes the wrong way

Basic Information:

Printer Model: Proforge 3.5
MCU / Printerboard: BTT v2
klippy.log
logs-202330-194759.zip (315.3 KB)

Describe your issue:

My printer powers up with the left front (0, 0) corner low. I home it, then do a Z_TILT_ADJUST.
After a few iterations I get the message below. I do not get this message if I manually turn the Z lead screw to raise the corner before homing.
Can someone explain what is going on and/or What I could do to get rid of this issue?

7:16 PM

Retries aborting: Probed points range is increasing.

7:16 PM

Retries: 3/6 Probed points range: 0.451875 tolerance: 0.010000

7:16 PM

Making the following Z adjustments:
stepper_z = 0.007378
stepper_z1 = 0.667655
stepper_z2 = 0.017877

7:16 PM

probe at 235.000,240.000 is z=1.521602

7:16 PM

probe at 235.000,240.000 is z=1.520352

7:16 PM

probe at -10.000,240.000 is z=1.890352

7:16 PM

probe at -10.000,240.000 is z=1.870352

7:15 PM

probe at -10.000,-5.000 is z=1.426602

7:15 PM

probe at -10.000,-5.000 is z=1.430352

7:15 PM

Retries: 2/6 Probed points range: 0.393750 tolerance: 0.010000

7:15 PM

Making the following Z adjustments:
stepper_z = -0.004102
stepper_z1 = 0.571243
stepper_z2 = 0.009570

7:15 PM

probe at 235.000,240.000 is z=1.515737

7:15 PM

probe at 235.000,240.000 is z=1.513237

7:15 PM

probe at -10.000,240.000 is z=1.834487

7:15 PM

probe at -10.000,240.000 is z=1.815737

7:15 PM

probe at -10.000,-5.000 is z=1.426987

7:15 PM

probe at -10.000,-5.000 is z=1.435737

7:15 PM

Retries: 1/6 Probed points range: 0.350000 tolerance: 0.010000

7:15 PM

Making the following Z adjustments:
stepper_z = -0.104446
stepper_z1 = 0.389624
stepper_z2 = -0.243237

7:15 PM

probe at 235.000,240.000 is z=1.300200

7:15 PM

probe at 235.000,240.000 is z=1.296450

7:15 PM

probe at -10.000,240.000 is z=1.656450

7:15 PM

probe at -10.000,240.000 is z=1.640200

7:15 PM

probe at -10.000,-5.000 is z=1.306450

7:15 PM

probe at -10.000,-5.000 is z=1.313950

7:15 PM

Retries: 0/6 Probed points range: 1.626250 tolerance: 0.010000

7:15 PM

Making the following Z adjustments:
stepper_z = 1.936538
stepper_z1 = 2.217818
stepper_z2 = -0.722700

7:15 PM

probe at 235.000,240.000 is z=1.391250

7:15 PM

probe at 235.000,240.000 is z=1.391250

7:14 PM

probe at -10.000,240.000 is z=3.013750

7:14 PM

probe at -10.000,240.000 is z=3.021250

7:14 PM

probe at -10.000,-5.000 is z=2.826250

7:14 PM

probe at -10.000,-5.000 is z=2.823750

7:14 PM

Z_TILT_ADJUST

Why is the code snippet in the reverse order?
Usually you you have the most recent line at the bottom.
Was a bit confused when I read it.

You have a different full_steps_per_rotation for [stepper_z]. Do you have a different stepper for that axes?
You only should use rotation_distance.

You also may check for the correct rotation direction of all z-axes.
Also check for the correct values with the x/y_offset of the probe and the distances on [z_tilt]

1 Like

Hi Eddy, Sorry, I neglected to state that before I posted this issue I spent several hours reading all of the posts on Z_TILT_ADJUST. Then I went through my printer checking that the Z-motors were connected to the correct outputs, rotating the correct direction, the PRINTER.cfg had the correct parameters for the 3 motors, the Z-carriage wae level to the frame, the X - Y offsets of the Z-Probe, and the Z offset of the nozzles were correct.

The “code” is the terminal output from Mainsail. It comes out in reverse order.

Yes, the printer came with two different types of stepper motors on the Z axis, a 1.8 deg and two 0.9 deg motors. That is why the configurations are different. The lead screws are the same pitch so the rotation distance is the same for all three but the steps per rotation are different.

I do not understand why the Z_TILT routine keeps moving the z1 axis bigger when the z axis needs to move smaller.

I think Klipper tries to compensate your setting errors:
The rotation distance can’t be the same with different stepper resolutions.

From here: Rotation distance - Klipper documentation

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

changed to <steps_per_mm>

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

For stepper_z

 <steps_per_mm> = 200 * 16 / 8 = 400

For stepper_z1 and stepper_z2

 <steps_per_mm> = 400 * 16 / 8 = 800 

Assuming all have the same lead screw pitch, this system can not work.

Either you increase the microsteps with z1 and Z2 to 32 or decrease the , or - recommended - decrease the microsteps with z to 8.

Best solution would be to have identical steppers on all 3 z axes.

Yes it can. Rotation distance is the distance an axis moves with one full rotation of the motor, regardless of how many steps it takes to achieve that revolution. If all three lead screws are the same pitch, then the rotation distance is the same for each motor on the Z axis. As long as full steps per rotation is configured correctly, Klipper will do the math internally to send the correct number of pulses to each motor.

1 Like

Thanks @jakep_82,
I ordered a 0.9 deg Stepper anyway and installed it. The problem is still there.

logs-202331-17388.zip (15.4 KB)

5:26 PM

**Retries aborting: Probed points range is increasing.**

5:26 PM

Retries: 4/6 Probed points range: 0.213125 tolerance: 0.010000

5:26 PM

Making the following Z adjustments:
stepper_z = 0.001132
stepper_z1 = 0.312551
stepper_z2 = 0.009665

5:26 PM

probe at 235.000,240.000 is z=1.523546

5:26 PM

probe at 235.000,240.000 is z=1.523546

5:25 PM

probe at -10.000,240.000 is z=1.698546

5:25 PM

probe at -10.000,240.000 is z=1.683546

5:25 PM

probe at -10.000,-5.000 is z=1.476046

5:25 PM

probe at -10.000,-5.000 is z=1.479796

5:25 PM

Retries: 3/6 Probed points range: 0.173750 tolerance: 0.010000

5:25 PM

Making the following Z adjustments:
stepper_z = 0.005204
stepper_z1 = 0.259095
stepper_z2 = 0.011607

5:25 PM

probe at 235.000,240.000 is z=1.527650

5:25 PM

probe at 235.000,240.000 is z=1.527650

5:25 PM

probe at -10.000,240.000 is z=1.670150

5:25 PM

probe at -10.000,240.000 is z=1.658900

5:25 PM

probe at -10.000,-5.000 is z=1.488900

5:25 PM

probe at -10.000,-5.000 is z=1.492650

5:25 PM

Retries: 2/6 Probed points range: 0.108750 tolerance: 0.010000

5:25 PM

Making the following Z adjustments:
stepper_z = -0.026328
stepper_z1 = 0.125252
stepper_z2 = -0.071400

5:25 PM

probe at 235.000,240.000 is z=1.459249

5:25 PM

probe at 235.000,240.000 is z=1.459249

5:25 PM

probe at -10.000,240.000 is z=1.572999

5:25 PM

probe at -10.000,240.000 is z=1.562999

5:25 PM

probe at -10.000,-5.000 is z=1.460499

5:25 PM

probe at -10.000,-5.000 is z=1.467999

5:24 PM

Retries: 1/6 Probed points range: 0.404375 tolerance: 0.010000

5:24 PM

Making the following Z adjustments:
stepper_z = -0.210364
stepper_z1 = 0.244445
stepper_z2 = -0.486749

5:24 PM

probe at 235.000,240.000 is z=1.087506

5:24 PM

probe at 235.000,240.000 is z=1.086256

5:24 PM

probe at -10.000,240.000 is z=1.495006

5:24 PM

probe at -10.000,240.000 is z=1.487506

5:24 PM

probe at -10.000,-5.000 is z=1.176256

5:24 PM

probe at -10.000,-5.000 is z=1.183756

5:24 PM

Retries: 0/6 Probed points range: 2.472500 tolerance: 0.010000

5:24 PM

Making the following Z adjustments:
stepper_z = 2.693559
stepper_z1 = 3.179432
stepper_z2 = -1.291256

5:24 PM

probe at 235.000,240.000 is z=1.115000

5:24 PM

probe at 235.000,240.000 is z=1.113750

5:24 PM

probe at -10.000,240.000 is z=3.583750

5:24 PM

probe at -10.000,240.000 is z=3.590000

5:24 PM

probe at -10.000,-5.000 is z=3.255000

5:24 PM

probe at -10.000,-5.000 is z=3.253750

5:24 PM

Z_TILT_ADJUST

Any ideas on what to check next?

All I can suggest is running stepper_buzz on each motor to make certain you have each motor at the correct location. I’m on mobile and can’t look at your log at the moment, but it’s possible your z tilt config doesn’t match your motor order.

1 Like

@Jakep_82

The Z_TILT section od Printer is correct.
If I manually rotate the 1st Z motor to level Z_TILT will pass.

I think I found the problem and fixed it. It was a mechanical issue, the Z-motors are on the bottom end of the lead screws. There was a special flexible coupling between the motors and the lead screws. This coupling would pull apart if the lead screw tried to pull the Z-stage down.
IMG_4025


I used 1/4" brass strips from a hobby/hardware store and made clips to keep the couplings together and used cable ties to keep the clips in place.

The Z_TILT_ADJUST Macro works fine now.

2 Likes