Retraction on the fly



  • Hi,

    Is it possible to alter the retraction distance on the fly? It would make it so much easier to fine tune the printer if I could. I have played about with pressure advance and concluded that, with my setup and bowden tube, I cannot find the sweet spot so I am reverting to retraction alone which has been working pretty well in the past. Not got it right yet hence my question.

    Mike


  • administrators

    Yes. Configure your slicer to generate firmware retraction commands instead of explicit retraction, then you can adjust retraction on-the-fly using M207. There will be a delay of a few seconds before the new retraction value is used.



  • If you use Firmware retraction then yes you can which Slicer are you using

    This is the command I used to use with S3D

    M207 S1.5 R-0.1 F3600 T1200 Z0.1

    This can be sent whenever you wish so can indeed be done on the fly but your slicer needs to be able to output FW Retraction commands

    in the above command S is retraction distance R is un-retraction distance (undo distance = S + R) F is speed to retract T is un-retract speed and Z is Z hop

    HTH Doug



  • @Mike_F:

    Hi,

    Is it possible to alter the retraction distance on the fly? It would make it so much easier to fine tune the printer if I could. I have played about with pressure advance and concluded that, with my setup and bowden tube, I cannot find the sweet spot so I am reverting to retraction alone which has been working pretty well in the past. Not got it right yet hence my question.

    Mike

    Yes, take a look at M207:

    https://duet3d.com/wiki/G-code#M207:_Set_retract_length

    You'll need to configure your slicer to use firmware retraction, the Gcode emitted should contain G10 and G11 commands for retract and unretract, respectively.

    As far as I can know, you can issue M207 on-the-fly to tune the parameters.

    using M207, you can also use different feed rates for retract and unretract. There is some research that shows a slower unretract could be beneficial.

    adavidm



  • Looks like 3 of us all answered at the same time



  • And all three have been very useful, thank you.

    I use S3D so now need to find out how to configure it.


  • administrators

    @Mike_F:

    And all three have been very useful, thank you.

    I use S3D so now need to find out how to configure it.

    S3D is odd, to configure firmware retraction you need to un-check "Retraction" in the Extruder tab and check "Include M101/M102/M103 commands" in the GCode tab of the process settings.



  • Do I simply uncheck the Retraction box under Ooze control and then add the M207 command to the script for retraction? If so, do I have to do this for all my processes in S3D?



  • I am still confused.

    In the tabs of the 'Process' I have unchecked 'Retraction', turned on 'Use M101/102/103' and added 'M207 S5 R-0.1 F60 T30 Z0; Set retraction parameters S - Length of retract, R - Extra length on re-start, F - Retract Speed in mm/min, T - Re-start speed, Z - Nozzle lift on retract.' to the Retraction Script.

    The resultant g code has M103 and M101 but no values set. What am I doing wrong?

    Here is a snippet of code:
    G1 X-28.049 Y0.016 E0.0008
    G1 X-28.005 Y0.000 E0.0023
    M103
    G1 X-26.577 Y0.000 F4800
    M101
    G1 X-27.885 Y-0.467 E0.0665 F1800
    G1 X-27.894 Y-0.470 E0.0005


  • administrators

    That's correct, when you use firmware retraction you need to define the retraction amount and speed using M207. You can do this in config,g and/or in the start gcode of your slicer.



  • Okay, thanks David. I will move the definition to the 'Start' code and have a play.



  • also you will have to up the F parameter 1mm/sec retraction is very slow it will cost you around 15 secs on every retract cycle

    The setting is specified in MM/Min so you need to multiply the figures by 60



  • Thanks, Dougal, I had already worked that one out before I started a print! It would have been painstakingly slow.

    However, I have noticed that I am now getting far more retractions than I ever have done before. On a circular part with three perimeters, my printer is retracting at the end of each perimeter - never done that before. Also, with far more retractions, some of them on ridiculously small moves, the accumulation of all the retractions, in a small space, is causing some problems immediately after and some areas of infill/surface are sparse.


  • administrators

    I think that's a limitation of S3D. It doesn't really understand firmware retraction. If it did then the options to set a minimum travel distance to retract for and whether or not to retract on layer change would still be available.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.