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

    Adjust printing parameters mid-print

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    6
    689
    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.
    • hauschkaundefined
      hauschka
      last edited by

      Hi Forum,

      I'm looking for a way to overwrite settings like print speed and extrusion speed mid-print. From what I've seen, these can only be adjusted by a percentage, is there also a way to use absolute values here?

      Can other actors (other than motors) that are connected via analog out be addressed in a similar way that the value set in the gcode will be multiplied by a percentage upon code execution?

      What are the relevant gcodes to add such a multiplication factor in the middle of an ongoing print?

      Best,
      -h

      moth4017undefined OwenDundefined deckingmanundefined hauschkaundefined 4 Replies Last reply Reply Quote 0
      • moth4017undefined
        moth4017 @hauschka
        last edited by

        @hauschka
        Hi if you use Prusa Slicer, simplify 3d and others to adjust Print speed and extrusion while printing

        <

        1 Reply Last reply Reply Quote 0
        • OwenDundefined
          OwenD @hauschka
          last edited by

          @hauschka
          The slicer puts absolute speed values into the gCode throughout the print.
          Typically they will vary depending on whether you're printing an outer wall , inner wall, etc etc
          The current method of using a percentage allows easy adjustments of all in a uniform manner.
          To achieve what you want would require the slicer or a post processor to replace all these speeds with a variable/global name.
          So instead of
          G1 F3600 ; inner wall speed
          you'd have
          G1 F{global.innerWallSpeed}
          You would declare all your globals at the start or in config.g
          global innerWallSpeed = 3600
          and adjust as required during the print
          set global.innerWallSpeed = 3200
          Any other setting can be handled the same way if it's embedded in the job file gcode

          1 Reply Last reply Reply Quote 2
          • hauschkaundefined
            hauschka
            last edited by

            Thanks @OwenD

            That's exactly what I was looking for.
            Thank you for your input.

            When you say

            set global.innerWallSpeed = 3200
            

            How would I send that?
            Can that be called via gcode? or somewhere else?

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

              @hauschka Bear in mind that the extruder speed and the axes speeds are synchronised. That is to say, a G1 Xn Yn En move means move Xn mm in the X direction and Yn mm in the Y direction while extruding En mm of filament. Which is why you can't change the axes speeds without a corresponding change in extruder speed and vice versa. So it is usually more convenient to change the overall speed as a percentage (the firmware will work out the necessary speeds for each axis motor and the extruder in order to keep everything synchronised).

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

              1 Reply Last reply Reply Quote 1
              • hauschkaundefined
                hauschka @hauschka
                last edited by

                @hauschka said in Adjust printing parameters mid-print:

                actors (other than motors) that are connected via analog out be addressed in a similar way

                Thanks @deckingman,

                Good point that this will change other speeds as well.

                Our main application would be other actors via anlog out, these shouldn't affect print speed.
                Another aplication would be globally adjusting temperature mid-print, for example.

                For print speeds, it def makes sense to adjust the overall speed.

                Regardless, how would I send this code?

                set global.innerWallSpeed = 3200
                

                Via the gcode console?

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