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

    Speed factor (M220) doing absolutely nothing

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    5
    14
    2.5k
    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.
    • dc42undefined
      dc42 administrators
      last edited by

      The speed slider won't affect moves that are already in the DDA queue, so you may have to wait for ~30 moves to complete before the speed change takes effect. When printing curves this happens quite quickly, but when printing rectilinear infill it can take a while. OTOH there is code to prevent the DDA queue from being filled with a lot of slow moves, so I am surprised you are seeing this.

      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
      • deckingmanundefined
        deckingman
        last edited by

        @ David, Yes I'm aware of the queue thing - as I explained in my OP, I ran it for 20 minutes after changing the slider .

        OK this is weird. I started a print (a 100mm x 100mm x 3mm "cube") and about 10 seconds after it started doing the zig zag inside moves, I set the slider to 20% and checked the gcode console to make sure that M220 S20 had been sent (which it had). The speed remained unchanged for the entire layer until it changed layer, then it slowed right down. While it was doing the perimeters, I changed the slider to 200%. It did a few more perimeter moves then sped up to twice the "normal" speed but after that, while it was doing the zigzag moves, the slider had no effect and I couldn't slow it down again until the next layer change/perimeter moves. (I did discover that my hot end won't melt filament fast enough for 200% speed but that's another story).

        So in summary, M220 changes speed for non-print moves while the printer is idle but only for X and Y, (not Z). This is contrary to my understand of what the firmware should now allow. As if the logic for the firmware override of the speed override was inverted.

        During a print, M220 has no effect when doing zigzag moves. I initially thought that it was becoming effective at layer change but now I'm leaning towards the theory that it is only effective during straight up and down or left to right moves (i.e pure X or pure Y but not X plus Y ). I know that sound hard to believe but that's what I am observing. I'm going to slice the same "cube" again but orient it at 45 degrees to the build plate so that the perimeters are at 45 degrees but the inside should get printed with pure X and Y moves to see if that proves the point.

        Just a reminder again, it's coreXY - just in case that has any effect.

        Ian

        Ian

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

        1 Reply Last reply Reply Quote 0
        • InSanityundefined
          InSanity
          last edited by

          The speed factor worked for me yesterday (1.17b), had an 80mm/s print that I kicked up to 160mm/s (200%) with 4000 acceleration. Quality suffered a bit, but no missed steps 🙂

          Jeff

          Duet WiFi Powered FFCP with E3D legends hotend system. BLTouch grid leveling.

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

            Well bang goes that theory - it's not to do with zigzag vs pure X or Y moves. I ended up setting the fill angle to 90 degrees in order to get it to print with all pure X or Y moves. The same thing happened. That is to say that moving the slider or sending M220 commands has no effect doing the first layer. Again, about 10 seconds after it had finished the perimeters and started the print proper, I set the slider to 20% and nothing happened until the first layer change where it immediately slowed to 20% speed.

            Interestingly, while it was doing the perimeters I changed the slider to 100% and a few moves later, while still doing perimeters, it sped up to 100% but for the rest of the next layer, moving the slider had no effect again.

            Maybe the speed change only happens when a non-print move occurs? i.e. when moving from the inner perimeter to the outer or on layer change? Dunno, I give up on postulating theories.

            Let me know if there is any more testing I can do but I'd really like to have his working again.

            Ian

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

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

              @(In)Sanity:

              The speed factor worked for me yesterday (1.17b), had an 80mm/s print that I kicked up to 160mm/s (200%) with 4000 acceleration. Quality suffered a bit, but no missed steps 🙂

              Jeff

              Try doing a 100mm x 100mm "cuboid" as I am doing and see if the speed factor still works.

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

              1 Reply Last reply Reply Quote 0
              • InSanityundefined
                InSanity
                last edited by

                @deckingman:

                @(In)Sanity:

                The speed factor worked for me yesterday (1.17b), had an 80mm/s print that I kicked up to 160mm/s (200%) with 4000 acceleration. Quality suffered a bit, but no missed steps 🙂

                Jeff

                Try doing a 100mm x 100mm "cuboid" as I am doing and see if the speed factor still works.

                So your saying you can't slow it down, or can't speed it up ? The slowdown of course should always work however the speed up will be limited ultimately to your max speed and acceleration settings. I've done speed ups before with test towers with expected results. If your doing a lot of long straight extrusions your not going to see the speed change for some time due to the queue.

                Jeff

                Duet WiFi Powered FFCP with E3D legends hotend system. BLTouch grid leveling.

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

                  @(In)Sanity:

                  @deckingman:

                  @(In)Sanity:

                  The speed factor worked for me yesterday (1.17b), had an 80mm/s print that I kicked up to 160mm/s (200%) with 4000 acceleration. Quality suffered a bit, but no missed steps 🙂

                  Jeff

                  Try doing a 100mm x 100mm "cuboid" as I am doing and see if the speed factor still works.

                  So your saying you can't slow it down, or can't speed it up ? The slowdown of course should always work however the speed up will be limited ultimately to your max speed and acceleration settings. I've done speed ups before with test towers with expected results. If your doing a lot of long straight extrusions your not going to see the speed change for some time due to the queue.

                  Jeff

                  Just read my previous posts please, especially the very first paragraph of the very first post. (It'll save me having to repeat myself yet again).

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

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

                    I'm now doing a more "normal" print with lots of direction changes, arcs, and non-print moves. By observation, I'm 99% convinced that the speed modifier (M220 command) is only acted on when the printer next encounters a non-print move. That is to say that while the printer is doing normal print moves (those that require extrusion) the M220 command is ignored until the printer does a non-print move. At that point, the speed is modified and will remain so.

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

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

                      I can imagine how that type of issue may have crept in at version 1.17, so I'll check the code.

                      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 1
                      • dc42undefined
                        dc42 administrators
                        last edited by

                        I found the problem. It's because each input channel now has its own current feedrate setting. When you send M220, it needs to update the feed rate on all input channels, not just the one that sent the M220 command. I've fixed the code and I will do a 1,17c release when I've looked at a couple of other issues. Thank you for your patience.

                        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
                        • jrledererundefined
                          jrlederer
                          last edited by

                          David you are amazing. Thanks for being so sharp and responsive in here. I'm in awe of your firmware mastery and technical prowess. Bravo!

                          –

                          "Insanity is doing the same thing over again, yet expecting different results..." --Albert Einstein

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