Retraction on the fly

  • @Mike_F:


    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.


    Yes, take a look at M207:

    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.


  • 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


    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
    G1 X-26.577 Y0.000 F4800
    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.

  • @dc42 Do you know why I can't tune this "on the fly"?

    I tried, (using simplify3d), but i doenst respond to the change.

    I dissabled retraction on extruder tab and enabled m101/102/103 on the gcode tab, and added an m207 line on my starting code.

    I checked that i does not change by enabling and disabling Z hop in the M207 that i send through the web interface?

  • administrators

    Test your M207 retraction settings by sending G10 and G11 commands from the GCode Console in DWC.

  • @dc42 nevermind - found the problem - for a brief moment, i frogot S3D have independent "retraction" settings for the 2 extruders, so I only dissabled one of them -.- Got it working now. - but thanks for the quick response.

    Quick question - Does linear advance/pressure advance improve retraction?

  • @dc42 said in Retraction on the fly:

    I think that's a limitation of S3D. It doesn't really understand firmware retraction...............

    If it did, it would use G10 / G11 too ☺

  • administrators

    @martin1454 said in Retraction on the fly:

    Quick question - Does linear advance/pressure advance improve retraction?

    When you use large amounts of pressure advance you may need to reduce retraction, because pressure advance will already retract filament towards the end of some moves.

Log in to reply