Varying the wipe location on toolchange



  • 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?



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



  • @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.


  • administrators

    @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.



  • 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.


Log in to reply