Faster QUAD_GANTRY_LEVEL Macro

This works perfectly for me, definitely is an improvement over the standard. I did add the suggestion to reference z-Offset as that seems to be the safe play here. Appreciate it!

not to take this post but couldn’t find a place to put the info
i switched from eddy_ng to native eddy support with tap after latest updates to klipper broke the eddy-ng scripts.

after setting up the minimal calibrations (current etc) i found that QCL was slow compared to eddy-ng ways of doing.

it implemented also the course and fine QCL commands (or atleast it gave a config like the macro showed in at top)

to get it to run it like eddy-ng i use PROBE_SPEED=20 LIFT_SPEED=20 SAMPLES=1 with the course QCL. this lowers the eddy probe to it desired height given in the desend_z parameter in the config but with higher speeds.

after that i do the fine QCL with method=scan
instead of probing it is scanning the corners making it allot faster.

[gcode_macro QUAD_GANTRY_LEVEL]
rename_existing: _QUAD_GANTRY_LEVEL
gcode:

    BED_MESH_CLEAR
    {% set act_y = printer.toolhead.position.y|float %}
    {% set act_z = printer.toolhead.position.z|float %}
    {% if act_z < 5 %}
      G1 Z5 
    {% endif %}
   
    {% if act_y > 275.0 %}
      G1 Y275 
    {% endif %}
    SAVE_GCODE_STATE NAME=STATE_QGL
    # If QGL has not been done yet, correct for any major skew first
    # at 8mm height
    PROBE METHOD=tap
    G1 Z8

    {% if not printer.quad_gantry_level.applied %}
      _QUAD_GANTRY_LEVEL horizontal_move_z=8 retry_tolerance=1 PROBE_SPEED=20 LIFT_SPEED=20 SAMPLES=1   
    {% endif %}
    # Complete with a full QGL at the configured height
    _QUAD_GANTRY_LEVEL METHOD=SCAN 
    RESTORE_GCODE_STATE NAME=STATE_QGL
1 Like