bkubicek/Marlin — Issue #35: extruder retract breaks motion planer
Author: dirk-attraktor
Created: 2011-12-24 02:34:10+00:00
State: open

If extruder retract to prevent oozing is enabled, the motion planer does not decelerate at the end of a move when the next move is an extruder only move.

G1 X-10 Y-10 Z0.45 F6000.0
G1 F60000.0
G1 E10.00 ( retract )
G1 F6600.0
G1 X5 Y5 F1000

leads to a non decelerated stop after the first gcode command.
I think this happens because the Motion Planer ignores that the next move has a speed that isnt related to the axis of the current motion. On small, or standart makerbot/ultimaker Hardware this may be ignored, but our machines have an axis weight of 65kg, so any sudden stop is quite noticeable, especially at high speed at 60-120mm/s

I couldn fix it, but i think its in "void planner_reverse_pass_kernel(....}{....} "
exit_speed = next->entry_speed;

From a quick look, this seems to also happen in GRBL, and Erik Zalm's marlin version, although the code looks slightly different.

Greeting
Dirk

Attraktor Makerspace Hamburg

Ps: Hi Bernhard:)