• Tags
  • Documentation
  • Order
  • Register
  • Login
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.0k
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
    jschall @Veti
    last edited by 29 Aug 2020, 05:53

    @Veti
    Thanks, will correct that, then.

    1 Reply Last reply Reply Quote 1
    • undefined
      jschall
      last edited by 29 Aug 2020, 05:54

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

      No underruns.

      1 Reply Last reply Reply Quote 1
      • undefined
        bot
        last edited by 29 Aug 2020, 07:18

        Well, this is interesting thank you for doing this.

        *not actually a robot

        undefined 1 Reply Last reply 29 Aug 2020, 07:38 Reply Quote 0
        • undefined
          jschall @bot
          last edited by 29 Aug 2020, 07:38

          @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
          • undefined
            Veti
            last edited by 29 Aug 2020, 07:48

            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
            • undefined
              jschall
              last edited by 29 Aug 2020, 07:54

              Ok, I need to upgrade anyway.

              1 Reply Last reply Reply Quote 1
              • undefined
                Edgars Batna
                last edited by Edgars Batna 29 Aug 2020, 08:05

                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.

                undefined undefined 2 Replies Last reply 29 Aug 2020, 08:26 Reply Quote 1
                • undefined
                  jschall @Edgars Batna
                  last edited by 29 Aug 2020, 08:26

                  @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?

                  undefined 1 Reply Last reply 29 Aug 2020, 09:06 Reply Quote 0
                  • undefined
                    DocTrucker @Edgars Batna
                    last edited by 29 Aug 2020, 08:58

                    @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
                    • undefined
                      Edgars Batna @jschall
                      last edited by Edgars Batna 29 Aug 2020, 09:06

                      @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.

                      undefined 1 Reply Last reply 29 Aug 2020, 15:33 Reply Quote 1
                      • undefined
                        jschall
                        last edited by 29 Aug 2020, 15:19

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

                        undefined 1 Reply Last reply 29 Aug 2020, 15:23 Reply Quote 1
                        • undefined
                          bot @jschall
                          last edited by 29 Aug 2020, 15:23

                          What slicer are you using?

                          *not actually a robot

                          undefined 1 Reply Last reply 29 Aug 2020, 15:27 Reply Quote 0
                          • undefined
                            jschall @bot
                            last edited by 29 Aug 2020, 15:27

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

                            undefined 1 Reply Last reply 29 Aug 2020, 15:58 Reply Quote 0
                            • undefined
                              jschall @Edgars Batna
                              last edited by 29 Aug 2020, 15:33

                              @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.

                              undefined 1 Reply Last reply 30 Aug 2020, 11:21 Reply Quote 0
                              • undefined
                                bot @jschall
                                last edited by 29 Aug 2020, 15:58

                                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
                                • undefined
                                  DocTrucker
                                  last edited by 29 Aug 2020, 16:18

                                  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
                                  • undefined
                                    jschall
                                    last edited by 29 Aug 2020, 16:27

                                    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
                                    • undefined
                                      bot
                                      last edited by 29 Aug 2020, 17:12

                                      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

                                      undefined 1 Reply Last reply 29 Aug 2020, 19:58 Reply Quote 0
                                      • undefined
                                        jschall @bot
                                        last edited by 29 Aug 2020, 19:58

                                        @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
                                        • undefined
                                          Veti
                                          last edited by 29 Aug 2020, 20:09

                                          @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
                                          37 out of 116
                                          • First post
                                            37/116
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA