Page 1 of 1

Erroneous retraction at end of print

Posted: Mon Apr 18, 2016 6:10 pm
by Geoff Sim
My gcode is exhibiting an issue where the filament is retracted at the end of a print, making the start of a new print having to prime the nozzle by that retraction amount.

As I have a Bowden cable setup, this erroneous retraction is 6mm. I can add an extrude in the end code for the same amount, but I am unable to use the retract amount variable. Hard coding 6mm is ok, but a better solution would be preferable.

Am I missing something?

Re: Erroneous retraction at end of print

Posted: Tue Apr 19, 2016 2:36 am
by dkightley
Am I missing something, but surely the idea of having a purge and wipe in the starting gcode was to ensure the nozzle was correctly primed ready for the start of a print.

I can understand there being a retraction at the end of each layer....including the very last layer of the print...to prevent or reduce stringing, etc at the end of a layer.

Or are you saying you get two retractions at the end of the print? If so, is there something in the end gcode doing this? Or are you doing sequential printing and the gcode doesn't include a reversal of the retraction before moving onto the second part?

Re: Erroneous retraction at end of print

Posted: Wed Apr 20, 2016 7:03 am
by Geoff Sim
The problem was noticed when I switch from one slicer to another.
Ex, XYZWare software does not retract the filament at the end of the print (last layer).
This means that each new print starts to extrude filament almost immediately, as the nozzle is already primed.

With S3D, each time I start a new print, I have to add a purge at the start, equal to at least the retract distance set in S3D.
I don't have a problem with this, I was just asking if this is correct behaviour, and if so, why the tutorials don't mention it?
TBH it would be good to be able to have this as an option ("Retraction Distance on Last Loop", or something like that).

The only other problem I have is that the variable, [retract_distance] does not seem to work in the starting/ending scripts, so I have to hard code it.