Independent dual z, no z endstop, no sync belt, only a probe, how to do homing

independent dual z, no z endstop, no sync belt, only a z probe, how to do homing, how to keep the dual Z motors at the same hight when homing

At least you need a probe. To align the z axes you have to run the [z_tilt] process:

https://www.klipper3d.org/Config_Reference.html#z_tilt

There’s a printer (can’t remember it’s name/model) that first syncs the two Z axis by lifting the gantry, using dual sensorless homing. When the two motors stop, the two Z axis are in sync. Then it homes using the Z probe.
Of course it takes a while.

On my CoreXY I have two independent Z spindles/motors and only an inductive probe.
First it homes Z, then performs Z-Tilt and then homes Z again.

Therefor you need to use [homing_override]:

[homing_override]
axes: xyz
gcode:
  {% set home_all = 'X' not in params and 'Y' not in params and 'Z' not in params %}

  {% if home_all or 'X' in params %}
    _HOME_X
  {% endif %}
  
  {% if home_all or 'Y' in params %}
    _HOME_Y
  {% endif %}
  
  {% if home_all or 'Z' in params %}
    M117 Homing Z...
    G90
    G0 X121 Y132 F6000 #move print head to safe position in the center of the bed
    G28 Z
    G0 Z5 F600
    M117
  {% endif %}

And then in the PRINT_START macro you call the following:

    M117 Homing...                 ; display message
    G28 Y0 X0 Z0

    M117 Adjusting Z-tilt...
    Z_TILT_ADJUST
    G28 Z0

Maybe there is a better way of doing this but it works for me.

@LifeOfBrian
I did that without [homing_override] but with [save_z_homing]

1 Like

@EddyMI3D thanks for the hint though it is called [safe_z_home].
Since when is this available?

@LifeOfBrian
I 'don’t know. Maybe since probes have been implemented… ?