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

    More strange pressure advance behaviour

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    15
    126
    19.8k
    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.
    • deckingmanundefined
      deckingman
      last edited by deckingman

      David,

      Do we have any update on this? To save you trawling back through this thread here is a summary.

      Up until 1st October 2017, I had always had problems when doing arcs using high levels of pressure advance with multiple extruders. After a great deal of testing, we got to the point where you wrote this:

      1st October 2017
      " So I think I've worked out what is going on. When there is a sequence of short moves such as in an arc, the gcode processor may not be able to fill the movement queue as fast as the motion system empties it, especially if it is having to compute and generate step pulses for 5 extruders. If the queue contains insufficient moves to do full lookahead, then the segments in an arc have to be scheduled to slow down at the end, to ensure that the motors can stop if new moves are not added fast enough. When large amounts of pressure advance are used, this causes the extruders to retract filament at the end of the move. This retraction increases the number of steps that must be generated, which further increases the load on the processor. So if the machine gets into a state in which the gcode processor can't quite keep up with the mechanics of the machine and starts doing jerky movements, pressure advance will increase the load on the processor and make the situation worse."

      Then...

      "Here are some possible solutions/workarounds

      Reduce printing speed
      Use larger segments in your arcs (lower $fn value in OpenSCAD)
      Use fewer extruders
      Use lower pressure advance
      Use lower microstepping, which will reduce the number of steps being generated. Are you using the default x16? If so then you could try x8 on the extruders, especially if you are using the 0.9deg motors that E3D supply for the Titans.
      If you are using 0.9deg motors on your extruders, use 1.8deg motors instead. It may be worth using 0.9deg motors in ungeared extruders, but for geared extruders like the Titan I doubt that they offer any advantage.
      Make the firmware more efficient at generating steps and/or processing gcodes. The step generation is probably as fast as I can make it already, but I may be able to improve the efficiency of gcode processing. The 1.20alpha series should be faster than 1.19 already.
      Make the firmware reduce printing speed automatically when underrun is imminent
      Use a faster processor (but we will have to wait for the Duet N^2G for that!)"

      I tried the simple things like larger segments and I don't use 0.9 degree motors, so at that point I came to the conclusion that if I wanted to use high pressure advance as is needed by my particular setup with the Diamond hot end, and if I want to use multiple extruders, and if I want to print at anything other than very low speeds, then I'd have to wait for the new generation of Duet.

      At that point, I could use pressure advance without any issues but only with a single extruder being driven.

      Then on 17th Jan I resurrected this old chestnut of a thread and on 18th I discovered that I now had issues using just a single extruder, so something in the firmware changed between October (firmware 1.19 beta8) and mid Jan (Firmware 1.20 and later).

      The final conclusion was that the (new) problem was due to changes in the extrusion rate that Slic3r generates. On 21st Jan you wrote:

      ..............So until I change the pressure advance code to better handle changes in extrusion rate that shouldn't be there, you might like to try slicing your models with Cura instead of S3D. I think that will fix most of the problem.

      I kind of took it from that, that you planned to look at changing the pressure advance code. I haven't seen anything in later release notes so was just wondering what the status is. I'm on 1.20.1RC2 btw.

      Cheers.

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

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

        @deckingman, no there isn't any update.

        Did we ever establish whether slic3r generates GCode with a uniform extrusion rate for curves?

        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

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

          @dc42 said in More strange pressure advance behaviour:

          @deckingman, no there isn't any update.

          Did we ever establish whether slic3r generates GCode with a uniform extrusion rate for curves?

          Not really. Going through the gcode file for those test cylinders, what is for sure is that the extrusion amount can differ but there are no changes to feedrate. I'll have to do some maths on the XY coordinates but I'm pretty sure I did it before and discovered that the reason the extrusion amount varies is that the segment size can vary. I'm pretty sure the change in E amount corresponded with a change in XY of the same magnitude.

          Most of the time, the segment size is constant for any given arc but at seemingly random points in the file, odd segment sizes appear (for segment size read E amount). I think at one point you or I decided that change in segment size would lead to a change in direction that was sufficient to trigger pressure advance (but my memory is hazy on that so it could be a Red Herring).

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

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

            Try Kisslicer 1.62. S3D just sits there on me desktop, Like a $149 bill.

            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)

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

              @jmjcoke said in More strange pressure advance behaviour:

              Try Kisslicer 1.62. S3D just sits there on me desktop, Like a $149 bill.

              I currently use Slic3R. I did try S3D but for me it was hopeless with more than 2 colour objects and also the fact that essentially I have a number of completely different machine configurations. Fortunately, I managed to get a refund within the 30 day period.

              Ref Kissslicer - yes it might be worth a try but again, I'd need the Pro version to do 5 colour objects which, means parting with more hard earned for something that might, or might not work.

              The BIG problem with all this is that are we starting to tread the path that Duet Firmware will only work with certain slicers? IMO the perfect slicer has yet to be developed and they all have their vagaries and "issues". So to my mind, the firmware ought to work independently of which slicer was used to generate the gcode. I'm not saying it should produce perfect prints - that would be impossible. But it ought to carry out the movement commands that are embedded in the gcode file, regardless of how imperfect those commands might be.

              I don't think the Duet team would want to go down the road of "Please buy our boards, they are the best (but they only work with certain slicers)". That's likely to put quite a few people off buying the product, despite that fact that their favourite slicer may not generate the best gcode.

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

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

                OK, so I just installed KISSlicer in order to take a quick look at it. It only lets me configure a printer with up to 4 extruders - I have 5. So that's not going to be any good.

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

                1 Reply Last reply Reply Quote 0
                • T3P3Tonyundefined
                  T3P3Tony administrators @deckingman
                  last edited by

                  @deckingman you are right about us wanting it to work with all slicers. I guess people are asking about the slicers as a potential variable. Does this weird shifting happen in square profile columns?

                  www.duet3d.com

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

                    @t3p3tony said in More strange pressure advance behaviour:

                    @deckingman you are right about us wanting it to work with all slicers. I guess people are asking about the slicers as a potential variable. Does this weird shifting happen in square profile columns?

                    Hi Tony,

                    I think you may be confusing this thread with another. It's not a weird shifting thing. This is just about using highish levels or pressure advance, as is required by the Diamond hot end. The issue is only when doing arcs, and is somewhat random in that it doesn't always do it. (Actually, there is another issue related to using pressure advance with multiple extruders and that isn't random - it always does it). However, in this case, even with a single extruder it is random. It manifests itself in erratic carriage movement, and random short pauses resulting in some weirdly shaped circles. Printing a test file which consists of nothing but various different sizes of cylinder, shows this randomness. i.e. for any given layer, one or more or none of the cylinders will exhibit the behaviour but on the next layer, it might be the same cylinder, or a different cylinder, or no cylinders that exhibit the problem.

                    The gcode file that Slic3R generates shows that randomness in terms of segment size. Generally the segments are consistent for any given circle but now and then, there is an odd one which is larger, followed by a small one and that pattern my be repeated for a few moves before reverting to equal segment sizes.

                    So the consensus seems to be that it is the non-prefect gcode that is initiating the problem hence the suggestions to try different ones. The trouble is, none that I have tried support 5 extruders so I'm stuck with Slic3R. Short term, I could use a different slicer but then long term, I won't be able to print using 5 extruders. As things are, I can print with 5 extruders (as long as I don't use pressure advance).

                    The thing is, up until October, I had always had the problems with pressure advance and multiple extruders but using a single extruder was problem free. This is a new issue which started some time between October and January. Same printer, same slicer, same config etc but different firmware.

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

                    1 Reply Last reply Reply Quote 0
                    • burtoogleundefined
                      burtoogle
                      last edited by

                      Cura can handle up to 8 extruders.

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

                        @burtoogle said in More strange pressure advance behaviour:

                        Cura can handle up to 8 extruders.

                        Thanks. I'll give it a try when I get the opportunity. Just out of curiosity, why do other slicers impose limits on the number of extruders? I guess Slic3R must have a limit but just to see what would happen, I tried setting the number of extruders in Slic3r to 100 and it all seemed to work. Not that I'd ever use that many but I'm just curious as to why there is a hard limit with some slicers.

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

                        1 Reply Last reply Reply Quote 0
                        • Knaudlerundefined
                          Knaudler
                          last edited by Knaudler

                          hello

                          also have one model with PA problems
                          with 1.21 or 2.0(RTOS)RC2b (using newest beta for duet wifi)

                          normaly I use 0.4 (on my CR-10 - 50cm Bowden) for really smooth surfaces
                          but this thing makes really problems
                          without PA and nothings else, it works

                          with PA or Coasting, extruder doesnt work any more from layer 10
                          maybe it goes backwards and printing only air

                          https://www.thingiverse.com/thing:2917556

                          make the pulley with Fusion 360
                          want to test - in S3D the preview looks good - the outer line only one line without gaps
                          test with S3D (newest)
                          slow/fast, only 0.1PA
                          with a lot of different jerk settings

                          extra test with cura (newest) because S3D may not make good code ?

                          nothing works
                          M122 is ok no underruns

                          only without any PA or coasting this thing ist printing clean

                          maybe you can test ?
                          my speed is 60mm and outline 20%
                          2 Perimeter 0.4, 3 Bottom layer - no infill (for this test)
                          layer 0.1 or 0.12 mm

                          so I think its good to aktivate PA only via gcode (variable processes) for long smooth lines

                          excuse the bad english

                          greetings from Hamburg

                          dc42undefined 2 Replies Last reply Reply Quote 0
                          • dc42undefined
                            dc42 administrators @Knaudler
                            last edited by

                            @knaudler, I'll add this to my list to test, next week if I can.

                            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

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

                              @knaudler, can you confirm that it was M572 pressure advance that you were using, not some sort of "pressure advance" feature in the slicer? If so, please provide the GCode files that you are trying to print, that gave problems when you enabled pressure advance.

                              You also said "with PA or Coasting, extruder doesnt work any more from layer 10". So enabling coasting in the slicer had the same effect? If so, this isn't a firmware problem, it is a slicer problem.

                              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

                              1 Reply Last reply Reply Quote 0
                              • Knaudlerundefined
                                Knaudler
                                last edited by

                                hello

                                thats why I checked with Cura
                                I have to look for the right file...

                                last 30h print I had problems with loosen wifi connectivity on duetwifi
                                if there is a short wifi break (AP update), all client reconnect only duet never 😞
                                but thats something for other thread.

                                maybe I can check with anet A8 and Marlin in next days
                                looking for gcode ...

                                1 Reply Last reply Reply Quote 0
                                • Knaudlerundefined
                                  Knaudler
                                  last edited by

                                  hhmm

                                  now with BondTech extruder AND 1A for Stepper it works,
                                  same gcode with a lot very short, fast retracts (GT2 idler)
                                  pressure advance 0.1 with FW 2.0
                                  before only used 800mA - maybe not enough for 80mm/sec retract ?
                                  on 15V

                                  with BondTech now max retract speed is 60mm/sec
                                  first test ok

                                  Knaudler

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

                                    I'm wondering if there is any point in me raising this issue yet again but here goes...........

                                    So on another forum, I have now established that although slic3r generates uneven segment sizes, seemingly at random, the extrusion rate itself does not vary. To illustrate:

                                    Here is a sample of "problem" gcode.....

                                    G1 X246.350 Y203.493 E0.06750
                                    G1 X245.357 Y203.301 E0.06755
                                    G1 X244.373 Y203.062 E0.06765
                                    G1 X242.926 Y202.622 E0.10103
                                    G1 X241.976 Y202.271 E0.06763
                                    G1 X241.044 Y201.877 E0.06763
                                    G1 X239.687 Y201.208 E0.10104
                                    G1 X238.807 Y200.709 E0.06763
                                    G1 X237.951 Y200.170 E0.06756
                                    G1 X237.122 Y199.592 E0.06754

                                    Calculating the move distance from the XY coordinates we get these segment lengths...

                                    1.0113916155476
                                    1.01260900647782
                                    1.5124182622542
                                    1.01276897661806
                                    1.01185967406551
                                    1.51294745447422
                                    1.01163283853384
                                    1.0115616639632
                                    1.01060625369129

                                    Dividing the extrusion amount by the segment lengths we get the following extrusion rates.....

                                    0.066789163526362
                                    0.066807622258179
                                    0.066800304202502
                                    0.066777321937563
                                    0.066837331038475
                                    0.066783548695757
                                    0.066852317781633
                                    0.066787821649257
                                    0.06683117163911

                                    Therefore the theory that it is changes in the extrusion rate that causes pressure advance to trigger, doesn't explain the behaviour I am seeing (unless changes of extrusion rate to the 4th decimal place are considered significant).

                                    To summarise.......

                                    A value of 0.4 or 0.5 pressure advance is required by my printer/hot end to cure over/under extrusion at the start and end of longish moves at anything other than slow print speed. If I try to print cylinders, circles or arcs using that amount of pressure advance, (with a single extruder) it will sometimes trigger, seemingly at random, multiple times during an arc move. This is visible and has been captured on video and a link to that video has been provided (as have the stl files, the gcode files, and the configuration files as well as M122 diagnostic reports). This multiple triggering of pressure advance causes the print head to falter and jerk leading to ruined prints.

                                    Coincidentally, the gcode generated by slic3r randomly has uneven segment sizes for any given arc, but the extrusion rate itself does not vary. I can't help think that might be a clue as to the cause - we have seemingly random changes to segment length, and we also have seemingly random triggering of pressure advance......

                                    Also, this behaviour (with a single extruder), was not apparent prior to firmware updates around January this year. Although since July of last year, I have had similar problems when using multiple extruders.

                                    Over the last 12 months, I have changed just about every setting that has been suggested or that I can think of. I've updated the firmware multiple times. I've generated multiple reports, made numerous videos, and carried out extensive testing in order to provide as much information as possible. Yet still the problem persists with no sign of any cure being forthcoming. Getting just a tad fed up now.............

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

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

                                      This is on my list to look at for the 2.01 release.

                                      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

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

                                        Hi Ian, please can you provide the links to a GCode file generated by slic3r that exhibits the problem shown in your video, and your config.g file.

                                        EDIT: I've just found a link to https://drive.google.com/drive/folders/0B_MwtHtQR_Zvd1BSd1RKSFYwbTQ in an older post of yours. Do those correspond to the video that you posted?

                                        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

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

                                          @dc42
                                          Hi David. Sorry that it took a while but yes, those files are the ones and that folder is still on my google drive and shared. My config.g has changed somewhat since then due to changing the Titan extruders for Bondtech ones and one or two other changes that I've made.

                                          For info, I've raised the uneven segment length as an issue on slic3r GitHub but I doubt if anything will come of it as it doesn't seem to affect print quality (as long as pressure advance isn't used).

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

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

                                            Thanks. Are you able to reproduce the problem using a cylinder sliced in vase mode?

                                            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

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