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

    Issues with pressure advance since RRF 3.4

    Scheduled Pinned Locked Moved
    General Discussion
    46
    308
    40.3k
    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.
    • jay_s_ukundefined
      jay_s_uk @jens55
      last edited by

      @jens55 i've ran a 3.4 config with 3.2 quite happily

      Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

      Argoundefined 1 Reply Last reply Reply Quote 0
      • Argoundefined
        Argo @jay_s_uk
        last edited by Argo

        @jay_s_uk

        Did you already have the time to print a comparison between RRF and Klipper on your setup?

        jay_s_ukundefined 1 Reply Last reply Reply Quote 0
        • Adrian52undefined
          Adrian52 @jens55
          last edited by

          @jens55 I was stimulated by your post to try again a gcode script I use to calibrate PA, adapted from a previous post. For me, this seems to work as expected:

          alt text

          It does 4 lines at 20mm/sec, then 4 lines speeding up from 20mm/sec to 100mm/sec and back for each PA setting - I have pictured to speeding up section, where you can clearly see the effect of PA, and confirming the .04 I usually use.

          My system is pretty basic - duet2wifi with no SBC running 3.4.4, with mzv IS, single nozzle, direct drive orbiter 2.

          Adrian52undefined 1 Reply Last reply Reply Quote 0
          • Adrian52undefined
            Adrian52 @Adrian52
            last edited by

            @Adrian52 should add that the script is adapted from that posted by DonStauffer (https://forum.duet3d.com/user/donstauffer) here

            https://forum.duet3d.com/post/250961

            I found it quicker without a raft, so made an anchor piece to start the test strips . Apologies to DonStauffer for mangling your script.

            ;	set variables
            
            var StartX = -70
            var StartY = -25
            var LinesPerTest = 4
            var LinesBetweenTests = 4
            var AnchorLines = 10
            var TempBed = 60
            var TempTool = 195
            var ToolNum = 0
            var Ext1 = 0
            var Ext2 = 1
            var Width = 0.55
            var Height = 0.2
            var ExFactor = 1.0
            var Retract = 1.0
            var Prime = 0	;	Before Raft
            
            var PALow = 0.0
            var PAHigh = 0.07
            var PAIncrement = 0.01
            
            var SpeedRaft = 400
            var SpeedSlow = 1200
            var SpeedFast = 6000
            var SpeedTravelXY = 9000
            var SpeedTravelZ = 1200
            var SpeedRetract = 7200
            
            ;	Calculated and Utility Variables
            
            var TestCount = 1 + floor((var.PAHigh - var.PALow) / var.PAIncrement + 0.5)
            
            var FilFactor = var.ExFactor * var.Width * var.Height / (pi * 1.75 * 1.75 / 4)
            
            var PA = var.PALow - var.PAIncrement
            
            var Dist = 0
            
            ;	PREPARE
            
            T{var.ToolNum}
            
            M82	;	Extruder Absolute Mode
            
            ;	Heat Bed and set Hot Ends to Standby
            
            M400
            
            M117 "Heat"
            
            M140 S{var.TempBed}				;	set Bed Temp
            
            M568 P{var.ToolNum} S{var.TempTool} A2	;	set Tool Temp
            
            M116 H{var.ToolNum + 1} S1			;	Wait for temp
            
            G4 S12					;	Delay to Allow for Overshoot
            
            M116 H{var.ToolNum + 1} S1		;	Wait for Recovery
            
            M116 H0 S1					;	Wait for Bed
            
            M400
            
            M117 "Home"
            
            
            G1 Z30 F3000
            G30
            
            M400
            
            ;M117 "Anchor"
            
            ;	Go to StartX - Width *5, StartY
            
            G90	;	Absolute
            
            G92 E0
            
            G0 E{-var.Retract} F{var.SpeedRetract}
            
            G1 X{var.StartX - var.Width * (var.AnchorLines-4) } Y{var.StartY} F{var.SpeedTravelXY}
            
            G1 Z{var.Height} F{var.SpeedTravelZ}
            
            G91	;	Relative
            
            
            set var.Dist = (2 * var.TestCount * var.LinesPerTest + var.LinesBetweenTests * (var.TestCount - 1)) * var.Width
            
            M221 S110 ;set extrusion factor to 110% for anchor
            
            while iterations < var.AnchorLines
            
            	;	Draw anchor Line
            
            	G0 Y{var.Dist} E{abs(var.Dist) * var.FilFactor} F{var.SpeedRaft}
            
            	G92 E0
            
            	;	Break here if last time
            
            	if iterations + 1 >= var.AnchorLines
            
            		break
            
            
            
            	;	Move Over
            
            
            
            	G0 X{var.Width} E{var.Width * var.FilFactor} F{var.SpeedRaft}
            
            	G92 E0
            
            
            
            	set var.Dist = -var.Dist
            
            
            
            G0 E{-var.Retract} F{var.SpeedRetract}	;	Retract
            
            
            
            ;	BEGIN TEST PATTERN
            
            
            M400
            
            M117 "Test Pattern"
            
            
            
            ;	Go to StartX, StartY
            
            G90	;	Absolute
            
            G1 Z{var.Height} F{var.SpeedTravelZ}
            
            G1 X{var.StartX} Y{var.StartY} F{var.SpeedTravelXY}
            
            G91	;	Relative
            
            while iterations < var.TestCount
            
            	;	set PA
            
            	set var.PA = var.PA + var.PAIncrement
            
            	M572 D{var.Ext1} S{var.PA}
            	M572 D{var.Ext2} S{var.PA}
            
            	echo "PA=",{var.PA}
            
            	;	Draw Reference Lines
            
            	while iterations < var.LinesPerTest
            
            		G0 E0 F{var.SpeedRetract}		;	Unretract
            
            		G0 X140 F{var.SpeedSlow} E{140 * var.FilFactor}
            
            		G92 E0
            
            		G0 E{-var.Retract} F{var.SpeedRetract}	;	Retract
            
            		G1 Y{var.Width} F{var.SpeedTravelXY}
            
            		G1 X-140 F{var.SpeedTravelXY}
            
            
            
            	;	Draw Test Lines
            
            	while iterations < var.LinesPerTest
            
            		G0 E0 F{var.SpeedRetract}		;	Unretract
            
            		G0 X35 F{var.SpeedSlow} E{35 * var.FilFactor}
            
            		G0 X70 F{var.SpeedFast} E{105 * var.FilFactor}
            
            		G0 X35 F{var.SpeedSlow} E{140 * var.FilFactor}
            
            		G92 E0
            
            		G0 E{-var.Retract} F{var.SpeedRetract}	;	Retract
            
            
            		G1 Y{var.Width} F{var.SpeedTravelXY}
            
            		G1 X-140 F{var.SpeedTravelXY}
            
            
            
            	;	Move to start of next comparison
            
            
            
            	G1 Y{var.LinesBetweenTests * var.Width} F{var.SpeedTravelXY}
            
            
            
            ;	Finish up
            
            
            
            M400
            
            M117 "Done"
            
            G10 P0 S0 ; turn off temperature
            M140 S0  ;turn off bed heater
            G28  ; home
            
            
            
            jens55undefined 1 Reply Last reply Reply Quote 0
            • jay_s_ukundefined
              jay_s_uk @Argo
              last edited by

              @Argo I have but I'm awaiting some feedback for I post anything

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              1 Reply Last reply Reply Quote 1
              • jens55undefined
                jens55 @Adrian52
                last edited by

                @Adrian52, thanks for posting the script and the results. I will see if I can get that working here!

                1 Reply Last reply Reply Quote 0
                • jens55undefined
                  jens55
                  last edited by

                  I went back to the original script posted by DonStauffer with the raft and I did see the ever so subtle change in the printout. Interpretation of the test print is difficult but it works better than what my previous script was able to do.
                  I kept the raft so I could remove the finished print in one piece and examine it clearly. I did have adhesion problems because it's a single line and I am working on adjusting my bed temperature to fix that.
                  Final verdict: I didn't know what I was doing and pressure advance does in fact work on the CR10 printer. I have not yet tried this on the Jubilee where the extruder is driven off a tool board. Note that this only speaks to PA changing and not necessarily to how effective the PA is in an actual print.
                  Tests are ongoing ......

                  1 Reply Last reply Reply Quote 1
                  • gnydickundefined
                    gnydick
                    last edited by

                    This post is deleted!
                    1 Reply Last reply Reply Quote 0
                    • Heartleander81undefined
                      Heartleander81
                      last edited by

                      Update on my conversion to Klipper.
                      At first the corners didn't look any better than with RRF until I came across a post today that refers to extruder smooth time.
                      The standard is with Klipper 0.04, which I also use.
                      Switched to 0.01 and the corners look awesome.
                      In the article it was said that some extruders can not cope with the smooth time and then you have to get smaller. see my pictures.

                      20221121_171555.jpg

                      With smooth time 0.04

                      20221128_153229.jpg 20221128_153233.jpg 20221128_153236.jpg

                      With smooth time 0.01

                      R4ffersundefined Argoundefined 2 Replies Last reply Reply Quote 2
                      • R4ffersundefined
                        R4ffers @Heartleander81
                        last edited by

                        @Heartleander81 wow mate what a difference

                        Mb6hc + 3hc + 1lc on Voron V2.4, Mini 5+ exp 2+ on Vzbot 235 AWD, Duet 2 wifi on Ox CNC and Mini 5+ on Millennium Milo v1.5 mini mill.

                        Heartleander81undefined 1 Reply Last reply Reply Quote 0
                        • Heartleander81undefined
                          Heartleander81 @R4ffers
                          last edited by

                          @R4ffers oh yes.

                          @dc42 is there also something like pressure advance smooth time under RRF? A few clippers have the problem with the high smooth time, but those who have problems are mostly DirectDrive extruder users. Maybe that's an approach you can follow.

                          Phaedruxundefined dc42undefined 2 Replies Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator @Heartleander81
                            last edited by

                            @Heartleander81 Can you link that article you mention?

                            Z-Bot CoreXY Build | Thingiverse Profile

                            sebkritikelundefined 1 Reply Last reply Reply Quote 0
                            • sebkritikelundefined
                              sebkritikel @Phaedrux
                              last edited by

                              @Phaedrux I see some discussions on it at the bottom of Klipper's Kinematics page
                              https://www.klipper3d.org/Kinematics.html

                              Some other pages of interest
                              https://klipper.discourse.group/t/pressure-advance-smooth-time-on-direct-extruders-with-short-filament-path/1971
                              https://github.com/Klipper3d/klipper/issues/4442

                              richfelker created this issue in Klipper3d/klipper

                              closed Pressure advance smoothing induces e-axis position swings that scale with acceleration #4442

                              Large(ish?) IDEX - 6HC, 1HCL
                              Stratasys Dimension 1200es to 6HC Conversion

                              1 Reply Last reply Reply Quote 0
                              • dc42undefined
                                dc42 administrators @Heartleander81
                                last edited by dc42

                                @Heartleander81 said in Issues with pressure advance since RRF 3.4:

                                @R4ffers oh yes.

                                @dc42 is there also something like pressure advance smooth time under RRF? A few clippers have the problem with the high smooth time, but those who have problems are mostly DirectDrive extruder users. Maybe that's an approach you can follow.

                                No, there isn't anything similar. I will look into that Klipper feature.

                                The reason I have made no progress on this is that while a number of users seem to think that pressure advance doesn't work as well in RRF 3.4 as it did in 3.3, and I am prepared to believe that there may be a difference because the relevant code had to be rewritten to accommodate input shaping, nobody has been able to provide a simple GCode script and machine settings that demonstrate a difference when input shaping is disabled. That includes me - I have compared RRF 3.3 and RRF 3.4 prints.

                                Duet WiFi hardware designer and firmware engineer
                                Please do not ask me for Duet support via PM or email, use the forum
                                http://www.escher3d.com, https://miscsolutions.wordpress.com

                                Heartleander81undefined petriheinoundefined CR3Dundefined gnydickundefined camnewnhamundefined 5 Replies Last reply Reply Quote 0
                                • Heartleander81undefined
                                  Heartleander81 @dc42
                                  last edited by Heartleander81

                                  @dc42
                                  @Phaedrux

                                  I couldn't find any differences between 3.3 and 3.4.x, but I still have a picture of a test where the corners became nice with PA. As now with klipper. The Artikel from sebkritel is that who I read.

                                  1 Reply Last reply Reply Quote 0
                                  • Argoundefined
                                    Argo @Heartleander81
                                    last edited by Argo

                                    @Heartleander81

                                    So altering the smooth time value did improve your corners and PA alone did not?

                                    Heartleander81undefined 1 Reply Last reply Reply Quote 0
                                    • petriheinoundefined
                                      petriheino @dc42
                                      last edited by

                                      Hi folks, my guess is OP simply did finer calibrations after update and found out underlying RRF issues regarding PA, Retraction, Extruder steps and acceleration relation... I got similar results (improvements) with Klipper conversion. I did some testing and posted it here earlier.

                                      1 Reply Last reply Reply Quote 0
                                      • Heartleander81undefined
                                        Heartleander81 @Argo
                                        last edited by

                                        @Argo said in Issues with pressure advance since RRF 3.4:

                                        So altering the smooth time value did improve your corners and PA alone did not?

                                        PA alone didn't make the whole corner look nice. See the picture with the corner sticking out in the direction of travel. Only with the change of smooth time and renewed PA, which was then higher, did the corners become so clean.

                                        Argoundefined 1 Reply Last reply Reply Quote 1
                                        • Argoundefined
                                          Argo @Heartleander81
                                          last edited by

                                          @Heartleander81

                                          I see.

                                          I know from another Klipper user that he also only could get nice corners by playing around with the smooth time setting. Pressure advance alone did not help much.

                                          Maybe extruders / hotends are so particular nowadays that we need this setting to get nice corners?

                                          Here is the example from the user I'm talking about:

                                          unknown.png

                                          He has a bowden setup and needed to increase the smooth time in order to get nice corners. PA alone did not the trick.

                                          @dc42
                                          How high are the chances we might get this feature for RRF? I think this might very much help those who are having problems with PA at the moment.

                                          Heartleander81undefined 1 Reply Last reply Reply Quote 1
                                          • Heartleander81undefined
                                            Heartleander81 @Argo
                                            last edited by

                                            @Argo ok. Nice test from him. I find for my Hevort 0.02 smooth time and 0.044 PA. Worked nice. I hope my Info can help Duet.

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