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

    Varying the wipe location on toolchange

    Scheduled Pinned Locked Moved
    Gcode meta commands
    4
    5
    233
    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.
    • DaBitundefined
      DaBit
      last edited by

      I am using RRF 3.1.1 on my Duet2Wifi with conditional G-code during a toolchange. The conditional G-code goes to a location outside the print area with a silicone strip, heat up/cool down the nozzles, purges filament, and wipes the nozzles over the silicone strip to get rid of ooze and purged material.

      The thing is; the wipe location is currently fixed. And when an object with soluble support is 500 layers tall, there are possibly 1000 toolchanges and even more wipes. This wears a groove in the silicone, and the nozzle starts picking up material that should have been dumped in the waste bucket.

      I would like to vary the X position of the wiping action on each toolchange so wear on the silicone strip is more even, but as far as I know variables are not supported yet (and I actually need static ones that keep their value between macro invocations), and there is no rand() function either.

      What would be the best method to work around this?

      deckingmanundefined 1 Reply Last reply Reply Quote 0
      • A Former User?
        A Former User
        last edited by

        think dc42 proposed using the runtime property in the object model as a source for psuedoramdom values. its in a post here somewhere.

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

          @DaBit You could use different wipe locations based on tool number which might help. If you only have 2 tools, there would of course only be 2 different wipe locations but that's better than 1.

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

          1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @A Former User
            last edited by

            @bearer said in Varying the wipe location on toolchange:

            think dc42 proposed using the runtime property in the object model as a source for psuedoramdom values. its in a post here somewhere.

            Yes, AFAIR I suggested using something like mod(state.upTime, 10) to generate a pseudorandom number between 1 and 9, and incorporate that in the coordinates for the wipe location.

            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
            • DaBitundefined
              DaBit
              last edited by

              Yes, that probably works nicely. I will implement that.

              (Still, I could use variables well from time to time, and persistence would be nice too. Isn't is possible to add a few user locations to the object model, or is the object model readonly from g-code anyway?)

              Now I only have to find out why that Scaffold stuff keeps plugging the heatbreak, even with very little retraction, cooling the inactive nozzle and moving a bit of the stuff each layer.

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