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.
    • nanoplaneundefined
      nanoplane @OwenD
      last edited by

      @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
      • nanoplaneundefined
        nanoplane @OwenD
        last edited by

        @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
        • nanoplaneundefined
          nanoplane @Phaedrux
          last edited by

          @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
          • Phaedruxundefined
            Phaedrux Moderator
            last edited by

            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
            • nanoplaneundefined
              nanoplane
              last edited by

              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?

              deckingmanundefined 1 Reply Last reply Reply Quote 0
              • deckingmanundefined
                deckingman @nanoplane
                last edited by deckingman

                @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

                nanoplaneundefined 1 Reply Last reply Reply Quote 0
                • nanoplaneundefined
                  nanoplane @deckingman
                  last edited by

                  @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
                  • nanoplaneundefined
                    nanoplane
                    last edited by

                    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
                    • OwenDundefined
                      OwenD
                      last edited by

                      @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
                      • nanoplaneundefined
                        nanoplane
                        last edited by

                        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
                        • Phaedruxundefined
                          Phaedrux Moderator
                          last edited by

                          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

                          nanoplaneundefined 2 Replies Last reply Reply Quote 0
                          • nanoplaneundefined
                            nanoplane @Phaedrux
                            last edited by

                            @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
                            • nanoplaneundefined
                              nanoplane @Phaedrux
                              last edited by

                              @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
                              • Phaedruxundefined
                                Phaedrux Moderator
                                last edited by

                                What's in M98 PPrint_Start.g?

                                Z-Bot CoreXY Build | Thingiverse Profile

                                nanoplaneundefined 1 Reply Last reply Reply Quote 0
                                • nanoplaneundefined
                                  nanoplane @Phaedrux
                                  last edited by

                                  @Phaedrux

                                  print_start.g

                                  1 Reply Last reply Reply Quote 0
                                  • Phaedruxundefined
                                    Phaedrux Moderator
                                    last edited by

                                    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

                                    nanoplaneundefined 1 Reply Last reply Reply Quote 0
                                    • nanoplaneundefined
                                      nanoplane @Phaedrux
                                      last edited by

                                      @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
                                      • nanoplaneundefined
                                        nanoplane
                                        last edited by

                                        Yep, that's it....

                                        Recreating or adding a new tool sets the retraction to a default value of 2mm..

                                        So I need to add an M207 S0.5 F1000 Z0.2 command to my custom gCode after creating all the tools...

                                        cool.

                                        1 Reply Last reply Reply Quote 1
                                        • Phaedruxundefined
                                          Phaedrux Moderator
                                          last edited by

                                          Glad you figured it out.

                                          Z-Bot CoreXY Build | Thingiverse Profile

                                          1 Reply Last reply Reply Quote 0
                                          • nanoplaneundefined
                                            nanoplane
                                            last edited by

                                            It's a feature 🙂

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