• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Disabling filament retraction?

Scheduled Pinned Locked Moved
General Discussion
6
18
262
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    Timothee Leblond @Phaedrux
    last edited by 18 Mar 2025, 15:57

    @Phaedrux

    I'm not using any slicer, I've a custom script in Grasshopper that transforms a path into Gcode.
    Thats why I'd like to know how to configure retraction. Do you know what command should I use?

    M209 is not working in RRF although it was on Marlin.

    Best,

    undefined undefined 2 Replies Last reply 18 Mar 2025, 16:01 Reply Quote 0
    • undefined
      jay_s_uk @Timothee Leblond
      last edited by 18 Mar 2025, 16:01

      @Timothee-Leblond look at G10 and G11

      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

      undefined 1 Reply Last reply 18 Mar 2025, 16:05 Reply Quote 0
      • undefined
        Timothee Leblond @jay_s_uk
        last edited by 18 Mar 2025, 16:05

        @jay_s_uk

        G11 says "unretract". I'll try that but I don't get if I should put that into my Gcode or into my config files?

        undefined 1 Reply Last reply 18 Mar 2025, 16:05 Reply Quote 0
        • undefined
          jay_s_uk @Timothee Leblond
          last edited by 18 Mar 2025, 16:05

          @Timothee-Leblond that goes in your gcode files when you want to retract

          Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

          undefined 1 Reply Last reply 18 Mar 2025, 16:06 Reply Quote 0
          • undefined
            Timothee Leblond @jay_s_uk
            last edited by 18 Mar 2025, 16:06

            @jay_s_uk Thanks! And in the case I'd like to disable retraction completely?

            undefined 1 Reply Last reply 18 Mar 2025, 16:07 Reply Quote 0
            • undefined
              jay_s_uk @Timothee Leblond
              last edited by 18 Mar 2025, 16:07

              @Timothee-Leblond dont use g10/g11 or set M207 to 0

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              undefined 1 Reply Last reply 18 Mar 2025, 16:09 Reply Quote 0
              • undefined
                Timothee Leblond @jay_s_uk
                last edited by 18 Mar 2025, 16:09

                @jay_s_uk So far I don't have any G10/G11 but I have M207 S0 and it is not working. It keeps retracting.

                undefined 1 Reply Last reply 18 Mar 2025, 16:50 Reply Quote 0
                • undefined
                  jay_s_uk @Timothee Leblond
                  last edited by 18 Mar 2025, 16:50

                  @Timothee-Leblond then its not a firmware retraction issue

                  Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    Phaedrux Moderator @Timothee Leblond
                    last edited by 18 Mar 2025, 16:53

                    @Timothee-Leblond said in Disabling filament retraction?:

                    @Phaedrux

                    I'm not using any slicer, I've a custom script in Grasshopper that transforms a path into Gcode.
                    Thats why I'd like to know how to configure retraction. Do you know what command should I use?

                    M209 is not working in RRF although it was on Marlin.

                    Best,

                    Can you share one of these gcode files?

                    I'm not really clear on what you're trying to do.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    undefined 1 Reply Last reply 18 Mar 2025, 17:16 Reply Quote 0
                    • undefined
                      Timothee Leblond @Phaedrux
                      last edited by 18 Mar 2025, 17:16

                      @Phaedrux

                      What I want to do is preventing the printer to retract the filament during printing.
                      In my previous printer under Marling I had put a M209 command which would do the job blocking the retraction.
                      But since M209 is not enabled in RRF, the printer is retracting a small amount of filament at every G1 commands (motors briefly turns counterclockwise).

                      PS: my printer is not extruding filament but this is for the example.

                      Here is a sample of my gcode:

                      ; - START GCODE -
                      M82 ; Absolute extrusion
                      G302 P0 S0 ; Allow cold extrusion
                      G28 ; home
                      G92 E0 ; Reset Extruder
                      G1 Z50 F3000 ; Move z up little to prevent bed scratching
                      G0 F600 ; set travel speed to first point
                      M207 S0 ; disable retract in Relative mode
                      G1 X20 Y30 Z3 F1000
                      G1 X20 Y180 Z3 F240 E2
                      G1 X24 Y180 Z3 F240 E0
                      G1 X24 Y30 Z3 F240 E2
                      ; - END of START GCODE -
                      G1 F240 X438.02 Y1006.24 Z1 E0
                      G1 F240 X438.02 Y1023.2 Z1 E0.339338
                      G1 F240 X438.02 Y1040.17 Z1 E0.678676
                      G1 F240 X438.02 Y1057.14 Z1 E1.018014
                      G1 F240 X438.02 Y1074.11 Z1 E1.357352
                      G1 F240 X438.02 Y1091.07 Z1 E1.69669
                      G1 F240 X438.02 Y1105.21 Z1 E1.979472
                      ; - END GCODE -
                      M140 S0
                      M104 S0
                      M107
                      G91 ;Relative positionning
                      G1 E-2 F1000 ;Retract a bit
                      G1 E-2 Z0.2 F1000 ;Retract and raise Z
                      G1 X5 Y5 F1000 ;Wipe out
                      G1 Z10 ;Raise Z more
                      G90 ;Absolute positionning
                      G1 X0 Y0 ;Present print
                      undefined undefined 2 Replies Last reply 18 Mar 2025, 18:11 Reply Quote 0
                      • undefined
                        jay_s_uk @Timothee Leblond
                        last edited by 18 Mar 2025, 18:11

                        @Timothee-Leblond absolute extrusion is a bad idea as internally in RRF it gets converted to relative.

                        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          gloomyandy @Timothee Leblond
                          last edited by 18 Mar 2025, 18:27

                          @Timothee-Leblond said in Disabling filament retraction?:

                          G1 E-2 F1000 ;Retract a bit
                          G1 E-2 Z0.2 F1000 ;Retract and raise Z

                          So your gcode contains the above, which could produce a huge retraction as your extruder will be operating in absolute mode. The G91 you have in your code will not be setting the extruder into relative mode, as per the comment in the G91 documentation: "RepRapFirmware uses M83 to set the extruder to relative mode: extrusion is NOT set to relative using G91"

                          Presumably if you do not want those commands you can stop your custom script from generating them?

                          Other than that I don't see any retractions. All of the moves between "END of START GCODE" and "END GCODE" seem to be moving the (absolute) position of the E axis forwards. None of those commands will perform a retraction.

                          Given the above it is not really very clear what it is you want to do? Do you want to prevent all movement of the E axis?

                          undefined 1 Reply Last reply 18 Mar 2025, 18:58 Reply Quote 0
                          • undefined
                            Timothee Leblond @gloomyandy
                            last edited by 18 Mar 2025, 18:58

                            @gloomyandy @jay_s_uk @Phaedrux

                            Alright, I found the issue, and you're all absolutely right. Apparently, when using absolute extrusion mode, an E value too small reset the extruder and so it comes back in its original position (before the command) which create retractation-like movements.

                            So I gave it a try. When E<0.1, it is more likely that it happens. When I use values like E0.2, it works without retracting.

                            @jay_s_uk Do you think I should remove M82 in my gcode?
                            @gloomyandy You're absolutely right, I just removed the G1 E-2 command at the end and stoped generating it.

                            undefined undefined 2 Replies Last reply 18 Mar 2025, 20:33 Reply Quote 0
                            • undefined
                              MJLew @Timothee Leblond
                              last edited by 18 Mar 2025, 20:33

                              @Timothee-Leblond The absolute extrusion command make the extruder go to the E value so when you have E2 on one line and E0 on the next the extruder retracts 2mm of filament when it executes the second line.

                              Use G83 to set the extrusion to relative and then the first line will extrude 2mm and the second line will extrude 0mm.

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                dc42 administrators @Timothee Leblond
                                last edited by dc42 18 Mar 2025, 21:17

                                @Timothee-Leblond use M83 instead of M82 at the start of your code. Then the E values in your G1 commands will be relative extrusions, which I think is what you were expecting.

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                undefined 1 Reply Last reply 21 Mar 2025, 19:45 Reply Quote 0
                                • undefined
                                  Timothee Leblond @dc42
                                  last edited by 21 Mar 2025, 19:45

                                  @dc42 Worked! Thank you!

                                  1 Reply Last reply Reply Quote 0
                                  12 out of 18
                                  • First post
                                    12/18
                                    Last post
                                  Unless otherwise noted, all forum content is licensed under CC-BY-SA