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

    M592 - Non-Linear Extrusion Comp - Cant get it to work...

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    5
    13
    465
    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.
    • timschneiderundefined
      timschneider
      last edited by

      @FurbyDealer27 said in M592 - Non-Linear Extrusion Comp - Cant get it to work...:

      ; Miscellaneous
      M501 ; Load saved parameters from non-volatile memory

      I guess you have an M592 in your config-override.g which is called via M501 at the end of your config.

      ; Miscellaneous
      M501                                               			; Load saved parameters from non-volatile memory
      
      1 Reply Last reply Reply Quote 0
      • deckingmanundefined
        deckingman @FurbyDealer27
        last edited by

        @FurbyDealer27 How are you doing the under extrusion testing?

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

        FurbyDealer27undefined 1 Reply Last reply Reply Quote 0
        • droftartsundefined
          droftarts administrators @FurbyDealer27
          last edited by

          @FurbyDealer27 Can you check if M592 is configured after a reset? Send M592 D0 in the console. I just tried this, with your M592 command right at the beginning of the config.g, and it responded with the correct extrusion compensation, so position in the config.g file doesn't matter. I didn't actually run any extrusion test to see if it is compensating, though. I'm also using RRF 3.5.0-rc1, rather than 3.4.6.

          If it is configured after reset, but not once you start extruding, ie send M592 D0 while extruding to check if it is still active, please check your gcode to see if it is being reset. Check your config.g is not reporting errors by sending M98 P'config.g' too.

          @timschneider As far as I'm aware, M592 is not saved in config-override.g with M500.

          Ian

          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

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

            The reason I asked about the test methodology was that from the documentation we have .............."Nonlinear extrusion is not applied to extruder-only movements such as retractions and filament loading".

            So unless the extrusion move also corresponds with an X and/or Y carriage move, extrusion compensation isn't going to do anything.

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

            FurbyDealer27undefined 1 Reply Last reply Reply Quote 1
            • FurbyDealer27undefined
              FurbyDealer27 @deckingman
              last edited by

              @deckingman

              Fantastic question. I am using CNCKitchen's Blob Test.

              I had to modify an excel sheet i found online to make it work for a delta printer, but i am moving up 10mm while extruding 200 mm of filament.

              Example: G1 Z10.5 E200 F12.473

              This makes me wonder if a Z axis movement is not enough to activate the compensation....

              deckingmanundefined Kioliaundefined 2 Replies Last reply Reply Quote 0
              • deckingmanundefined
                deckingman @FurbyDealer27
                last edited by

                @FurbyDealer27 said in M592 - Non-Linear Extrusion Comp - Cant get it to work...:

                ............................This makes me wonder if a Z axis movement is not enough to activate the compensation....

                Highly likely I'd have thought, but only a moderator or someone who can dive into the code could confirm.

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

                1 Reply Last reply Reply Quote 0
                • FurbyDealer27undefined
                  FurbyDealer27 @deckingman
                  last edited by

                  @deckingman

                  I checked my Config-override.g and i do not call M592 (only in my config.g)

                  When i request "M592 D0" in the console, i get a return of "Drive 0 nonlinear extrusion coefficients: A=0.044, B=0.0000, limit=1.00".

                  Thanks for the asking me to check that.

                  droftartsundefined deckingmanundefined 2 Replies Last reply Reply Quote 0
                  • droftartsundefined
                    droftarts administrators @FurbyDealer27
                    last edited by

                    @FurbyDealer27 I've asked @dc42 to have a look at this.

                    Ian

                    Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                    timschneiderundefined 1 Reply Last reply Reply Quote 0
                    • timschneiderundefined
                      timschneider @droftarts
                      last edited by

                      @droftarts
                      yep, you are right about the M500 - i thought that he maybe added it manually.

                      @FurbyDealer27
                      it looks like the non-linear-compensation is only active for printing moves, which are defined as XY and E+ moves.

                      if (Tool::GetXAxes(nextMove.tool).IsBitSet(drive) || Tool::GetYAxes(nextMove.tool).IsBitSet(drive))
                      {
                          flags.xyMoving = true;				// this move has XY movement in user space, before axis were mapped
                      }
                      
                      flags.isPrintingMove = flags.xyMoving && forwardExtruding;
                      
                      // Add the nonlinear extrusion correction to totalExtrusion.
                      // If we are given a stupidly short move to execute then clocksNeeded can be zero, which leads to NaNs in this code; so we need to guard against that.
                      if (flags.isPrintingMove && clocksNeeded != 0)
                      {
                      ...
                      
                      FurbyDealer27undefined 1 Reply Last reply Reply Quote 0
                      • deckingmanundefined
                        deckingman @FurbyDealer27
                        last edited by deckingman

                        @FurbyDealer27 said in M592 - Non-Linear Extrusion Comp - Cant get it to work...:

                        @deckingman

                        I checked my Config-override.g and i do not call M592 (only in my config.g)

                        When i request "M592 D0" in the console, i get a return of "Drive 0 nonlinear extrusion coefficients: A=0.044, B=0.0000, limit=1.00".

                        Thanks for the asking me to check that.

                        It was the other Ian (@droftarts ) who asked you to do those checks - confusing I know. 🙂

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

                        1 Reply Last reply Reply Quote 0
                        • FurbyDealer27undefined
                          FurbyDealer27 @timschneider
                          last edited by

                          @timschneider

                          Thank you everyone!!!

                          I changed the Blob test to extrude 200mm of filament while moving 30mm on the X axis. This now makes amazing looking weld beads.

                          I can confirm that this fixed my issue. The M592 compensation does require an XY movement.

                          345ac2ba-3f27-4d36-ba81-5539410ce4a3-image.png

                          Looks like i can push a crappy hotend and a Titan Extruder to around 10 mm3/s.
                          Thanks everyone for your help!, I really appreciate the immediate responses and feedback.

                          1 Reply Last reply Reply Quote 1
                          • Kioliaundefined
                            Kiolia @FurbyDealer27
                            last edited by Kiolia

                            @FurbyDealer27 said in M592 - Non-Linear Extrusion Comp - Cant get it to work...:

                            @deckingman

                            Fantastic question. I am using CNCKitchen's Blob Test.

                            I had to modify an excel sheet i found online to make it work for a delta printer

                            Would you be willing to share the modified sheet, or just explain what needed to be changed? I run a delta and this is testing I need to do 🙂 (EDIT: actually, scratch that, I figured out quickly what needs modding and I'm already done. It didn't have a round bed mode, mainly.)

                            AWD 48V Duet 3 6HC+3HC Linear Kossel XL "CarbonShrike"
                            https://www.printables.com/@Kiolia | youtube.com/@jamespray
                            aka Colphaer (Discord) | aka the Deltavangelist | aka that one duct guy

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