Extruder unfill my bowden tube at the end
At the end of my print my extruder goes backward and unfill my bowden tube. I've install my Duet2 wifi 5 days ago and before the switch I never had this problem. I didn't make any changes in my slider. Any idea why?
deckingman last edited by
@Ladusse The usual cause of that is that the last extruder move is a negative retraction of (say) 5mm but that the firmware has been configured (or changed) to expect absolute values using M82. So instead of retracting by (say) 5mm, it retracts to the position of 5mm from when the extruder was set to zero - which is usually at the start of a print. If you have an M82 command in your configuration or in your slicer end gcode, change it to M83.
Ladusse last edited by Ladusse
@deckingman You give me a good hint. In see in my config.g I've put the M83 in comment instead of changing it to M82. I will remove the comment and put M82 and see if that fix my problem. Thanks
fcwilt last edited by
@fcwilt when I use M83 when I print my extruder push too much filament, on my bed it's look like a big amount of melting filament. You suggest to use the M83 how can I fix it, is it in my config.g or in my slicer that I have to modify something?
aidar last edited by
In both actually. In config its usually in beginning, somewhere in general section.
In slicer, somewhere in settings (depends on slicer) you can choose to use relative extrusion. Just make sure you use same in both. So M83(in config) = relative in slicer, M82(in config) = absolute in slicer.
deckingman last edited by deckingman
@Ladusse You have the choice of using either relative or absolute extrusion in the slicer, but you must "tell" the firmware which you are using. To help you understand, if you select relative extrusion, then each extruder move will be relative to the last move. But if you select absolute extrusion, each extruder move will be relative to when the extruder position was set to zero, which is usually at the start of a print.
For absolute extrusion you would have something like this in the gcode.
G92 E0 ; this will set the extruder position to zero
G1 Xnn Y nn E5; move nn mm in X and Y while moving the extruder to a position which is 5mm from the start position.
G1 Xnn Ynn E10; make another move in X and Y while moving the extruder to a new position which is now 10mm from the start.
G1 Xnn Ynn E15; as above but to a new extruder position which is now 15mm from the start position.
So each of those moves will extrude 5mm of filament (0 to 5, 5 to 10, 10 to 15). Now at the end, if you wanted to retract 5mm of filament, you would need to move the filament to a position that is 5mm less than the last move. In this case it was E=15 so the retraction would be:
G1 E10; move the extruder back to 10mm from the start position.
With relative extrusion, those same moves would like like this
Firstly there is no need to set the zero position so no need for the G92
G1 Xnn Ynn E5; move nn mm in X and Y while extruding 5mm of filament
G1 Xnn Ynn E5; as above
G1 Xnn Ynn E5; as above.
Now at the end, if you wanted to retract 5mm of filament the command would be
G1 E-5; move the extruder back 5mm.
So if you use relative extrusion moves in the slicer, use M83 in the firmware (your configuration) and do change it by using M82 anywhere - including the slicer start or end gcode. Conversely, if you use absolute extrusion in the slicer, use M82 in the firmware and do not change it by using M83 anywhere.
As an aside, any XY E print move involves moving the print head while extruding an amount of filament. So with absolute extruder moves, the firmware must first convert the (absolute) extruder move to relative in order to calculate what that "E" amount is.
the problem is fixed. Thanks for all your tips very helpfull.