Move out of range BUT only when starting a second print without restart?!

Basic Information:

Printer Model: Heavily modified Wanhao I3
MCU / Printerboard: SKR 1.4
oor.txt (808.0 KB)

I am experiencing a very puzzling issue… I set up klipper for the first time 1-2 weeks ago and I already printed 1kg of filament, so I’d say that everything works nicely except for:

  1. Power on printer

  2. Start Print

  3. Finish print

  4. Start second print

  5. Printer starts with the normal preprint routine: home, z-tilt, bed level, custom wipe&purge macro

  6. The next move would be to start printing but here I always get the same “move out of range” error

  7. Restart firmware

  8. Start Print - all good

I have attached a trimmed log for your convenience. You can ctrl+f for “start first print” and “start second print”.

I would really appreciate your help!

Hello @aerielpally !

Is that the genuine klippy.log?

For the future: Please always attach complete and unmodified logs.

As to your issue:

  • Likely caused by the line G1 Y{Y_MAX} Z{Z_MAX/4.0} F6000
  • You need to make sure to be in absolute positioning mode when using this command
  • Try putting a G90 before this line

Haha I thought it makes life easier for anyone who is willing to help if I crop the log to parts that matter but next time I will post the full log!

Thank you very much - adding G90 helped and I am now printing the 3rd print without issues!

Haha, oh no… now, after the 3rd print or so I got “Extrude only move too long (-3892.157mm vs 160.000mm)”
Would you mind to check my start gcode again? I guess it has to do with the purge step right at the end of the macro but I still have too little understanding for gcode stuff.

Thats the part of the macro I guess is to blame:

     ## Wipe nozzle
     {% for wipes in range(1, (wipe_qty + 1)) %}
       G1 X{start_x + wipe_dist} F{wipe_spd * 60}
       G1 X{start_x} F{wipe_spd * 60}
     {% endfor %}
     G1 X90 Y-25 F6000
     G1 Z2 F600
     G1 E20 F70
     G1 X90 Y0 F1000

For me, it has proven good practice to reset the extruder with G92 E0 on the following conditions:

  1. Shortly before a print starts, e.g. as one of the last commands in PRINT_START
  2. Before and after manipulating the extruder in any way, e.g. purge, wipes etc.
  3. On error conditions

This will make sure that no strange values keep adding up until an error is created.

Thank you very much, I think I understand now!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.