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

firmware retraction doubling

Scheduled Pinned Locked Moved Solved
Gcode meta commands
5
27
1.2k
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
    Phaedrux Moderator
    last edited by 9 Feb 2021, 05:34

    How are you verifying that you're getting 2mm?

    Z-Bot CoreXY Build | Thingiverse Profile

    undefined 2 Replies Last reply 9 Feb 2021, 15:11 Reply Quote 0
    • undefined
      nanoplane @Phaedrux
      last edited by 9 Feb 2021, 15:11

      @Phaedrux said in firmware retraction doubling:

      How are you verifying that you're getting 2mm?

      On the DWC I can see the Drive amounts reducing by 2mm and then going back up 2mm on unretract.
      Note: this is on a mixing head so I have 4 extruder drives. I'm noticing this on the drives that are not active in the current layer/object.

      1 Reply Last reply Reply Quote 0
      • undefined
        nanoplane @OwenD
        last edited by 9 Feb 2021, 15:14

        @OwenD said in firmware retraction doubling:

        Is pressure advance enabled?
        it can cause retractions if set high enough.

        Is firmware retraction enabled in the slicer?
        Is reprap flavour selected?

        If yes to both post the first 100 lines of so of a sliced file.

        slicer.png

        This is on a mixing nozzle with 4 drives (Crane Quad)

        Yes pressure advance is enabled:
        M572 D0:1:2:3 S0.22:0.22:0.22:0.22

        firmware retraction is enabled in the slicer

        But... I did not have RepRapFirmware as the G-Code flavor. could that be the cause??

        1 Reply Last reply Reply Quote 0
        • undefined
          nanoplane @OwenD
          last edited by 9 Feb 2021, 15:17

          @OwenD

          I did seem to be getting correct gCode:

          ; Filament gcode
          G1 Z0.280 F7800.000
          ;LAYER_CHANGE
          ;Z:0.28
          ;HEIGHT:0.28
          ; If this isn't the first layer, update the temperature for all tools to the correct temperature

          G1 Z0.280 F7800.000
          G10 ; retract
          G1 X222.625 Y140.000
          G11 ; unretract
          ;HEIGHT:0.280000
          ;TYPE:Wipe tower
          ;WIDTH:0.437500
          ;-------------------------------------
          ; CP WIPE TOWER FIRST LAYER BRIM START
          G1 X222.625 Y151.113 E0.7323 F2400
          G1 X220.377 Y151.490 F7000
          G1 Y139.623 E0.5735 F2100
          G1 X159.623 E2.9362
          G1 Y151.490 E0.5735
          G1 X220.377 E2.9362
          G1 X220.755 Y151.867 F7000
          G1 Y139.245 E0.6100 F2100
          G1 X159.245 E2.9726
          G1 Y151.867 E0.6100
          G1 X220.755 E2.9726
          G1 X221.132 Y152.245 F7000
          G1 Y138.868 E0.6465 F2100
          G1 X158.868 E3.0091
          G1 Y152.245 E0.6465
          G1 X221.132 E3.0091
          G1 X221.510 Y152.622 F7000
          G1 Y138.490 E0.6830 F2100
          G1 X158.490 E3.0456
          G1 Y152.622 E0.6830
          G1 X221.510 E3.0456
          ; CP WIPE TOWER FIRST LAYER BRIM END
          ;-----------------------------------

          G10 ; retract
          G1 X224.185 Y153.297 F7800.000
          G11 ; unretract
          ;TYPE:Skirt
          ;WIDTH:0.392
          ;HEIGHT:0.28
          G1 F1500.000
          G1 X223.860 Y154.015 E0.03045
          G1 X223.405 Y154.579 E0.02800
          G1 X222.828 Y155.017 E0.02800
          G1 X222.163 Y155.304 E0.02800
          G1 X221.448 Y155.422 E0.02800
          G1 X119.741 Y159.647 E3.93313
          G1 X107.567 Y159.496 E0.47043
          G1 X106.811 Y159.365 E0.02964
          G1 X106.114 Y159.045 E0.02964
          G1 X105.314 Y158.314 E0.04187
          G1 X104.82

          1 Reply Last reply Reply Quote 0
          • undefined
            nanoplane @OwenD
            last edited by 9 Feb 2021, 15:25

            @OwenD

            Here's the first lines of the gCode file:
            I've set up 4 tools, one for each primary color.

            ; generated by PrusaSlicer 2.3.0+ on 2021-02-09 at 00:01:31 UTC

            ;

            ; external perimeters extrusion width = 0.39mm
            ; perimeters extrusion width = 0.39mm
            ; infill extrusion width = 0.39mm
            ; solid infill extrusion width = 0.39mm
            ; top infill extrusion width = 0.35mm
            ; support material extrusion width = 0.31mm
            ; first layer extrusion width = 0.39mm

            ; external perimeters extrusion width = 0.39mm
            ; perimeters extrusion width = 0.39mm
            ; infill extrusion width = 0.39mm
            ; solid infill extrusion width = 0.39mm
            ; top infill extrusion width = 0.35mm
            ; support material extrusion width = 0.31mm
            ; first layer extrusion width = 0.39mm

            ; external perimeters extrusion width = 0.39mm
            ; perimeters extrusion width = 0.39mm
            ; infill extrusion width = 0.39mm
            ; solid infill extrusion width = 0.39mm
            ; top infill extrusion width = 0.35mm
            ; support material extrusion width = 0.31mm
            ; first layer extrusion width = 0.39mm

            ; external perimeters extrusion width = 0.39mm
            ; perimeters extrusion width = 0.39mm
            ; infill extrusion width = 0.39mm
            ; solid infill extrusion width = 0.39mm
            ; top infill extrusion width = 0.35mm
            ; support material extrusion width = 0.31mm
            ; first layer extrusion width = 0.39mm

            M107
            ;TYPE:Custom
            M190 S80 ; wait for first layer bed tempurature
            M104 S170 ; set extruder no-ooze temp
            G28 ; home all axes
            ;G29 ; Auto Bed Leveling...
            M104 S235 ; Heatup and Purge Nozzle
            G92 E0 ; reset extruder
            G1 X0 Y0 Z10.0 F5000 ; move to purge position

            T0
            ; bring it up to temperature
            G10 P0 R0 S235 ; Wait For Nozzle Heat
            M116

            ; machine standard purge - purges all nozzles on the left side of the platter.
            M98 PPrint_Start.g

            ; set up the tools for selected colors.. You can define as many as you want,
            ; just make sure you update their temperatures in the Before layer change G-Code and remove them in the End G-Code

            M563 P0 D0:1:2:3 H1 F1
            M563 P1 D0:1:2:3 H1 F1
            M563 P2 D0:1:2:3 H1 F1
            M563 P3 D0:1:2:3 H1 F1

            ;=============== Quad Fustion color support ===============
            ;Set the color for each of the defined "tools"
            M567 P0 E1.0:0.0:0.0:0.00 S"Cyan"
            M567 P1 E0.0:1.0:0.0:0.00 S"Magenta"
            M567 P2 E0.0:0.00:1.0:0.00 S"yellow"
            M567 P3 E0.0:0.0:0.0:1.0 S"White"
            ;==========================================================

            ;Init the tool temperatures for the first layer and wait.
            G10 P0 R0 S235
            G10 P1 R0 S235
            G10 P2 R0 S235
            G10 P3 R0 S235
            M116

            T0 ; Ensure Post Processing Gcode Generator Has something to convert if only one tool is used.
            G21 ; set units to millimeters
            G90 ; use absolute coordinates
            M83 ; use relative distances for extrusion
            T1

            1 Reply Last reply Reply Quote 0
            • undefined
              nanoplane @Phaedrux
              last edited by 9 Feb 2021, 16:03

              @Phaedrux
              on the DWC screen:

              from Idle:
              Pre G10 command
              alt text

              Post G10 Command

              alt text

              After sending G11 command
              alt text

              1 Reply Last reply Reply Quote 0
              • undefined
                Phaedrux Moderator
                last edited by 9 Feb 2021, 16:10

                If you send M207 during a print, what does it reply with?

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • undefined
                  nanoplane
                  last edited by 9 Feb 2021, 16:22

                  So... This is interesting..

                  I have no config-override.g file in my /sys directory but after I sent an M502 command, G10/G11 worked as expected.....

                  Is this a hidden file?

                  undefined 1 Reply Last reply 9 Feb 2021, 17:05 Reply Quote 0
                  • undefined
                    deckingman @nanoplane
                    last edited by deckingman 2 Sept 2021, 17:06 9 Feb 2021, 17:05

                    @nanoplane said in firmware retraction doubling:

                    So... This is interesting..

                    I have no config-override.g file in my /sys directory but after I sent an M502 command, G10/G11 worked as expected.....

                    Is this a hidden file?

                    IIRC, M3D used to do very strange things with their configuration files. Basically they used to break each section into a separate macro and then call each of those macros from within the config.g file. Is that how yours is set up? If so, it's likely that the changes you make to config.g could be overridden by later macros. I might be best if you post you config.g file and the full code of any macros that are referenced in that file.

                    Ian
                    https://somei3deas.wordpress.com/
                    https://www.youtube.com/@deckingman

                    undefined 1 Reply Last reply 9 Feb 2021, 17:08 Reply Quote 0
                    • undefined
                      nanoplane @deckingman
                      last edited by 9 Feb 2021, 17:08

                      @deckingman

                      it was for the 2.0 config, but for the 3.0 update I put everything in the one file. It loads with no errors, but I suspect maybe there was some override file hidden somewhere that had a different M207 command hidden in it??

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        nanoplane
                        last edited by 9 Feb 2021, 17:23

                        So, it all seems to be working now... not quite sure what happened, but...

                        Thanks everyone who looked at this and scratched their heads...

                        --marcel

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          OwenD
                          last edited by 9 Feb 2021, 19:26

                          @nanoplane said in firmware retraction doubling:

                          M98 PPrint_Start.g

                          Should be quoted

                          M98 P"Print_Start.g"

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            nanoplane
                            last edited by 9 Feb 2021, 22:09

                            Thank you.

                            One more question. does the M207 command need to be sent after the tools are all created?..

                            I'm still getting the issue that the retract gets reset to 2mm whenever I start a new print from the "initial" state.

                            my custom gCode for PrusaSlicer at start creates the per color tools and after they start being used M207 command returns 2mm for retract amount even though I'm setting it in the config file to 0.5mm

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              Phaedrux Moderator
                              last edited by 9 Feb 2021, 22:12

                              Please share your full config.g you slicer start gcode and any macros you call in it.
                              Also the results of M122 and M98 P"config.g" please.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              undefined 2 Replies Last reply 9 Feb 2021, 22:27 Reply Quote 0
                              • undefined
                                nanoplane @Phaedrux
                                last edited by 9 Feb 2021, 22:27

                                @Phaedrux
                                config.g

                                Starting gCode from Prusa Slicer:

                                M190 S[first_layer_bed_temperature] ; wait for first layer bed temperature
                                G28 ; home all axes
                                ;G29 ; Auto Bed Leveling...
                                M104 S[first_layer_temperature] ; Heatup and Purge Nozzle
                                G92 E0 ; reset extruder
                                G1 X0 Y0 Z10.0 F5000 ; move to purge position

                                T0
                                ; bring it up to temperature
                                G10 P0 R0 S[first_layer_temperature] ; Wait For Nozzle Heat
                                M116

                                ; machine standard purge - purges all nozzles on the left side of the platter.
                                M98 P"Print_Start.g"

                                ; set up the tools for selected colors.. You can define as many as you want,
                                ; just make sure you update their temperatures in the Before layer change G-Code and remove them in the End G-Code

                                M563 P0 D0:1:2:3 H1 F1
                                M563 P1 D0:1:2:3 H1 F1
                                M563 P2 D0:1:2:3 H1 F1
                                M563 P3 D0:1:2:3 H1 F1

                                ;=============== Quad Fustion color support ===============
                                ;Set the color for each of the defined "tools"
                                M567 P0 E1.0:0.0:0.0:0.00 S"Cyan"
                                M567 P1 E0.0:1.0:0.0:0.00 ; Magenta
                                M567 P2 E0.0:0.00:1.0:0.00 ; yellow
                                M567 P3 E0.0:0.0:0.0:1.0 ; White
                                ;==========================================================

                                ;Init the tool temperatures for the first layer and wait.
                                G10 P0 R0 S[first_layer_temperature]
                                G10 P1 R0 S[first_layer_temperature]
                                G10 P2 R0 S[first_layer_temperature]
                                G10 P3 R0 S[first_layer_temperature]
                                M116

                                T0 ; Ensure Post Processing Gcode Generator Has something to convert if only one tool is used.

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  nanoplane @Phaedrux
                                  last edited by 9 Feb 2021, 22:29

                                  @Phaedrux

                                  Also at the end of a print, custom gCode is:

                                  ; remove the extra tools so we restore back to standard
                                  M563 P3 D-1 H-1
                                  M563 P2 D-1 H-1
                                  M563 P1 D-1 H-1

                                  M104 S0 ; turn off temperature
                                  G28 X0 ; home X axis

                                  M140 S0

                                  M84 ; disable motors

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    Phaedrux Moderator
                                    last edited by 9 Feb 2021, 23:02

                                    What's in M98 PPrint_Start.g?

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    undefined 1 Reply Last reply 9 Feb 2021, 23:42 Reply Quote 0
                                    • undefined
                                      nanoplane @Phaedrux
                                      last edited by 9 Feb 2021, 23:42

                                      @Phaedrux

                                      print_start.g

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        Phaedrux Moderator
                                        last edited by 9 Feb 2021, 23:50

                                        If you send M98 Pprint_start.g on it's own do you get any errors?
                                        If you send M567 during the print does it respond with the expected mixing ratio?

                                        Have you enclosed the macro name in quotes as OwenD suggested? ""

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        undefined 1 Reply Last reply 10 Feb 2021, 00:31 Reply Quote 0
                                        • undefined
                                          nanoplane @Phaedrux
                                          last edited by 10 Feb 2021, 00:31

                                          @Phaedrux said in firmware retraction doubling:

                                          If you send M98 Pprint_start.g on it's own do you get any errors?
                                          If you send M567 during the print does it respond with the expected mixing ratio?

                                          Have you enclosed the macro name in quotes as OwenD suggested? ""

                                          I get no errors
                                          Hmm sending M567 returns nothing... But it does mess up the mix ratio for the current print.. until the next tool changes.
                                          sending M567 P0 (P1 P2 P3) returns the correct mix ration for each of the "tools"

                                          The print_start.g on it's own doesn't work unless I've preheated the bed and the nozzle... but once that's done, print_startg works fine.

                                          Could it be because I'm redefining Tool 0 in my custom gCode forcing it to default the retraction settings??

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