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

    RRF 2.03 pressure advance causes 20% overextrusion

    Scheduled Pinned Locked Moved
    Firmware installation
    15
    116
    6.1k
    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.
    • jschallundefined
      jschall
      last edited by

      https://gist.github.com/jschall/98f9459590cfad6bbe413f3b49c266eb

      No underruns.

      1 Reply Last reply Reply Quote 1
      • botundefined
        bot
        last edited by

        Well, this is interesting thank you for doing this.

        *not actually a robot

        jschallundefined 1 Reply Last reply Reply Quote 0
        • jschallundefined
          jschall @bot
          last edited by

          @bot said in RRF 2.03 pressure advance causes 20% overextrusion:

          Well, this is interesting thank you for doing this.

          Any suggestions where to go from here?

          1 Reply Last reply Reply Quote 1
          • Vetiundefined
            Veti
            last edited by

            please do upgrade to the latest firmware.

            even if there is a bug in 2.03 i doubt that we will see a rrf2 bugfix.

            so it would be good if you could retry this in rrf3.

            1 Reply Last reply Reply Quote 0
            • jschallundefined
              jschall
              last edited by

              Ok, I need to upgrade anyway.

              1 Reply Last reply Reply Quote 1
              • Edgars Batnaundefined
                Edgars Batna
                last edited by Edgars Batna

                I had analyzed this issue multiple times before as well and 2.05.1 had only minor improvements related to PA. Based on my findings something happens on the step generation level, probably CPU running out, causing moves to be done before reverse motion (there is some code in there that basically aborts moves before they are done, you'd need to analyze it yourself as I've wasted more time than I'd like already and I have no means of analyzing stepper control). I eventually gave up using PA on my printer as it ALWAYS overextrudes for me and I've ruled out every mechanical issue, too.

                I think that it will get worse, if you upgrade to 3.x, as it probably uses more CPU.

                jschallundefined DocTruckerundefined 2 Replies Last reply Reply Quote 1
                • jschallundefined
                  jschall @Edgars Batna
                  last edited by

                  @Edgars-Batna said in RRF 2.03 pressure advance causes 20% overextrusion:

                  I had analyzed this issue multiple times before as well and 2.05.1 had only minor improvements related to PA. Based on my findings something happens on the step generation level, probably CPU running out, causing moves to be done before reverse motion (there is some code in there that basically aborts moves before they are done, you'd need to analyze it yourself as I've wasted more time than I'd like already and I have no means of analyzing stepper control). I eventually gave up using PA on my printer as it ALWAYS overextrudes for me and I've ruled out every mechanical issue, too.

                  Interesting. How did you come to your conclusions? Did you ever write them up?

                  Edgars Batnaundefined 1 Reply Last reply Reply Quote 0
                  • DocTruckerundefined
                    DocTrucker @Edgars Batna
                    last edited by

                    @Edgars-Batna said in RRF 2.03 pressure advance causes 20% overextrusion:

                    I think that it will get worse, if you upgrade to 3.x, as it probably uses more CPU.

                    Think the main changes for RRF3 were around making it more configurable at runtime, currently making the jump myself. Guess there are more advance features available, but not sure if CPU use will be effected. Interested to learn more there.

                    Running 3 P3Steel with Duet 2. Duet 3 on the shelf looking for a suitable machine. One first generation Duet in a Logo/Turtle style robot!

                    1 Reply Last reply Reply Quote 0
                    • Edgars Batnaundefined
                      Edgars Batna @jschall
                      last edited by Edgars Batna

                      @jschall Yeah, I created various topics, but it wasn't easy separating printer from firmware, as my build wasn't as polished back then. It was mostly treated as a printer hardware issue. Just look at topics created by me and you'll see multiple threads.

                      This is the latest one: https://forum.duet3d.com/topic/16840/printer-refuses-to-do-a-certain-print

                      I added detailed logging to the firmware in the meantime and wrote a program which counts how much extrusion the movement planning actually wants to command and it added up. The only thing left were the step interrupts themselves and the barely understandable second part of DriveMovement::PrepareExtruder (PA step computation) in the code. Without means to analyze stepper signals I stopped debugging.

                      jschallundefined 1 Reply Last reply Reply Quote 1
                      • jschallundefined
                        jschall
                        last edited by

                        Currently trying reducing the detail of the model so that the slicer creates fewer moves. We'll see if it makes any difference.

                        botundefined 1 Reply Last reply Reply Quote 1
                        • botundefined
                          bot @jschall
                          last edited by

                          What slicer are you using?

                          *not actually a robot

                          jschallundefined 1 Reply Last reply Reply Quote 0
                          • jschallundefined
                            jschall @bot
                            last edited by

                            @bot
                            PrusaSlicer. Changing the Resolution setting in Print Settings->Advanced from 0 to 0.1.

                            botundefined 1 Reply Last reply Reply Quote 0
                            • jschallundefined
                              jschall @Edgars Batna
                              last edited by

                              @Edgars-Batna That's why I went to the logic analyzer, because I knew it would just be constantly dismissed as a mechanical issue if I didn't remove everything mechanical from the equation.

                              Edgars Batnaundefined 1 Reply Last reply Reply Quote 0
                              • botundefined
                                bot @jschall
                                last edited by

                                Interesting. I’ve recently gone the other way, and increased the hard-coded minimum value of resolution (thanks to mr Batna here for telling me about that), as well as made a few other changes to increase the resolution of the output. I’m very interested to hear if going the other way as you are helps alleviate this issue. If so, I’m gonna be very sad hahaha. I want tons of resolution, not to give it back!

                                *not actually a robot

                                1 Reply Last reply Reply Quote 0
                                • DocTruckerundefined
                                  DocTrucker
                                  last edited by

                                  Had a very similar issue when I was generating exposure points from slice data for metals machines. In my case it was a typo in the way I carried over leftover travel over a sequence of tiny vectors. My code effectively walked around the contour of vectors and dropped points every so many microns, not too disimilar to what our systems need to do - but instead of exposure points it's step requests from the stepper drivers. When the vectors were substantially less than the point distance things went funky.

                                  Running 3 P3Steel with Duet 2. Duet 3 on the shelf looking for a suitable machine. One first generation Duet in a Logo/Turtle style robot!

                                  1 Reply Last reply Reply Quote 0
                                  • jschallundefined
                                    jschall
                                    last edited by

                                    Significant reduction in the overextrusion after reducing resolution, but not gone. Will try reducing it more.

                                    fwd_count 7139947
                                    rev_count 6062246
                                    net_count 1077701
                                    mm 2728.356962

                                    1 Reply Last reply Reply Quote 1
                                    • botundefined
                                      bot
                                      last edited by

                                      You are like an angel, coming down to save me from months more of frustration! I've been working on the "solution" to this problem that I hadn't ever been able to pinpoint.

                                      Can you try also lowering PA by a factor of 10, with various resolution settings, and comparing the results? I want to know how much this effect scales with PA, and if there is a safe amount of PA we can apply to high-resolution gcode.

                                      Thanks again.

                                      *not actually a robot

                                      jschallundefined 1 Reply Last reply Reply Quote 0
                                      • jschallundefined
                                        jschall @bot
                                        last edited by

                                        @bot tried reducing the resolution of the STL to about 0.5mm and it still totally overextrudes, but turning it down in the slicer seemed to work better... weird.

                                        I am out for the weekend now, so no more experiments for a while.

                                        Need to grok the code. Sounds like it needs some low level improvements on top of any improvements to pressure advance, based on what @Edgars-Batna is saying.

                                        Funny, I just quit my software job, was hoping it was forever. Didn't even last a day.

                                        1 Reply Last reply Reply Quote 2
                                        • Vetiundefined
                                          Veti
                                          last edited by

                                          @jschall said in RRF 2.03 pressure advance causes 20% overextrusion:

                                          Funny, I just quit my software job, was hoping it was forever. Didn't even last a day.

                                          this isnt a job, this is fun.

                                          1 Reply Last reply Reply Quote 0
                                          • jmjcokeundefined
                                            jmjcoke
                                            last edited by

                                            This is a good resource for the resolution setting.
                                            https://youtu.be/Hvw3DrVAeTA

                                            Joshua Coke

                                            Trick Laser Metal Max with Smart Effector
                                            Duet Wifi
                                            Zesty Nimble
                                            Mosaic Pallette+
                                            At work
                                            Renishaw AM250/400/ RenAM500M/500Q Powder Bed Fusion (Metal 3D Printers)

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