mirror of https://github.com/Desuuuu/klipper.git
gcode_arcs: increment absolute e coord for each arc segment (#3162)
Arc travel was working but extrusion in absolute mode seemed not to be happening at all. This was because the E coord being sent with each G1 segment of the arc was not incrementing, effectively the same value was being sent over and over so the total extrusion for the whole arc was the amount for just one segment which is an extremely tiny amount. My change increments e_base by e_per_move for each subsequent coord when in absolute extrude mode which results in the correct absolute E value being sent for each segment. Signed-off-by: Toby Harper <toby@fuith.org>
This commit is contained in:
parent
c9e7119a93
commit
f851cfae46
|
@ -55,6 +55,8 @@ class ArcSupport:
|
||||||
g1_params = {'X': coord[0], 'Y': coord[1], 'Z': coord[2]}
|
g1_params = {'X': coord[0], 'Y': coord[1], 'Z': coord[2]}
|
||||||
if e_per_move:
|
if e_per_move:
|
||||||
g1_params['E'] = e_base + e_per_move
|
g1_params['E'] = e_base + e_per_move
|
||||||
|
if gcodestatus['absolute_extrude']:
|
||||||
|
e_base += e_per_move
|
||||||
if asF is not None:
|
if asF is not None:
|
||||||
g1_params['F'] = asF
|
g1_params['F'] = asF
|
||||||
g1_gcmd = self.gcode.create_gcode_command("G1", "G1", g1_params)
|
g1_gcmd = self.gcode.create_gcode_command("G1", "G1", g1_params)
|
||||||
|
|
Loading…
Reference in New Issue