nozzle wipe
-
if !move.axes[0].homed || !move.axes[1].homed echo "X and Y axes not homed, aborting the wipe" M99 if state.currentTool < 0 echo "No tool loaded, aborting the wipe" M99 if heat.heaters[tools[state.currentTool].heaters[0]].current < 200 echo "Extruder too cold, no point wiping, aborting the wipe" M99 ; Drop all motor currents down M400 M913 X30 Y30 Z25 ; relative extruder (if I understand how push/pop work in RRF ; this should be returned to what it was on exit from this macro) M83 while true ; go around the stripe G0 X-110 Y40 F9000 G0 X-135 Y40 F9000 G0 X-135 Y{100 - iterations * 3} F9000 ; wipe G0 X-120 Y{100 - iterations * 5} F6000 if iterations == 6 G1 E-3 F3000 if iterations == 8 break ; go to park position G0 X-135 Y40 F9000 ; Return all motor currents to 100% M400 M913 X100 Y100 Z100
I need to clean from the same side always cause the silicone is not stiff enough and I didn't want to cut it too close to the petg holder but looks like it works now
-
actually turned it around so that the "bend" of the .5mm silicone is what i brush on .. stiff enough so I can go both directions ... this is great
if !move.axes[0].homed || !move.axes[1].homed echo "X and Y axes not homed, aborting the wipe" M99 if state.currentTool < 0 echo "No tool loaded, aborting the wipe" M99 if heat.heaters[tools[state.currentTool].heaters[0]].current < 200 echo "Extruder too cold, no point wiping, aborting the wipe" M99 ; Drop all motor currents down M400 M913 X30 Y30 Z25 ; relative extruder move M83 ; X-135, Y100 ; X-120, Y60 G0 X-110 Y40 F9000 G0 X-135 Y40 F9000 G0 X-135 Y100 F9000 while true G0 X-135 Y{100 - iterations * 3} F9000 G0 X-115 Y{100 - iterations * 5} F6000 if iterations == 6 G1 E-3 F3000 if iterations == 8 break ; go to park position G0 X-135 Y40 F9000 ; Return all motor currents to 100% M400 M913 X100 Y100 Z100
What I just figured out is that I have this ~1cm of space on the left side of the bed for the whole Y length and that it would be way smarter to use a stiff piece (like @deckingman made taht milled channel) of 1x1cm square "rod" and attach it to front left and back left frame so I have stiff wiper along the whole depth of the printer... need to figure out how to do it, none of my CNC machines have working range of 30cm, maybe do it in 2 passes or just pay someone to do it for me after things go back to normal. Anyhow, this works, yeeey and this new programable g-code is awesome
-
@arhi For info, I'm currently working on a better "bucket". What I mean by that is with a mixing hot end, I sometimes have to purge as well as wipe. That purged plastic has to be collected, otherwise it would end up getting onto the belt that drives the lead screws. My current "bucket" is too shallow and I have to empty it more often than I would like.
-
@deckingman said in nozzle wipe:
@arhi For info, I'm currently working on a better "bucket". What I mean by that is with a mixing hot end, I sometimes have to purge as well as wipe. That purged plastic has to be collected, otherwise it would end up getting onto the belt that drives the lead screws. My current "bucket" is too shallow and I have to empty it more often than I would like.
Conditional g code on the horizon.... If bucket.purge == full then empty.
-
@mwolter said in nozzle wipe:
There might be a cleaner way but couldn't think of one without a modulus or "is even" operator.
There is a mod(a,b) function but I forgot to document it at https://duet3d.dozuki.com/Wiki/GCode_Meta_Commands#Section_Functions. I'll fix that now.
-
@dc42 said in nozzle wipe:
There is a mod(a,b) function but I forgot to document it at https://duet3d.dozuki.com/Wiki/GCode_Meta_Commands#Section_Functions. I'll fix that now.
great
how come you skipped the % operator?
-
Simplified the conditional script a little with the use of mod (thanks @dc42) and added comments. Might help those interested in learning conditional gcode.
Overview: The code below moves the nozzle to the right and left of the nozzle wiper blade. Each move also moves the nozzle forward 2mm. Mod is short for modulus and returns the remainder. For instance, mod(10,4) returns 5. 10 / 4 = 2.5 or .5
G1 X-12 Y332 F24000 ; rapid to inital point outside the wipe strip while true ; continually run everything within this while loop if mod(iterations,2) = 0 ; if iterations is an even number G1 X-4 Y{332 - iterations * 2} F1200 ; move to right side of wiper and forward 2 * iterations else ; if the if condition above is not met G1 X-12 Y{332 - iterations * 2} ; move to left side of wiper and forward 2 * iterations if iterations = 6 ; if this is the seventh time running the while loop (0 is always the first iteration) break ; exit the while loop
-
For completeness, here is my non-conditional gcode nozzle wipe macro........
G90; set to absolute coordinates
G1 X50 Y363 F12000; move quickly to rear left
G1 X80 Y352 F900; slowly right 30, forward 11
G1 X110 Y363; slowly right another 30 and back 11
G1 X140 Y352; slowly right another 30 and forward 11
G1 X170 Y363; back and right -
Looking at the video how efficient @deckingman cleanup is I think we'r moving nozzle over the silicone this many times just 'cause it's easy in the loop and not 'cause it's needed :D. It's fun for sure.
-
@deckingman question, does these look like your stripe?
https://www.aliexpress.com/item/10000000975575.html
https://www.aliexpress.com/item/32953108608.html
https://www.aliexpress.com/item/32947574656.htmlThey are silicone stripe in different dimensions but "high temperature resistant silicone rubber foam sealing strips". The "foam" part is weird never seen silicone foam. Will this maybe be too soft? Looking at your video, your stripe seem to be rather hard
-
@arhi That stuff looks a bit spongy. Definitely not like the stuff I used.
EdIt ....but it might work - dunno.
-
@arhi I can't be sure but the stuff I used was more like this https://www.ebay.co.uk/itm/SOLID-SILICONE-RUBBER-STRIPS-3MMTHK-X-5MTRS-LONG-WHITE-60-SHORE-FDA-GRADE/331230136018?hash=item4d1edac6d2mM0icdmB-aIKG93gQRG6wvw. The listing is for 3mm thick (which is what I think I used), but the picture looks like 1mm thick. But it's definitely "solid".
-
This is what I have. The picture is a bit out of focus but it's solid and about 3mm x 10mm.
-
@deckingman thanks, I was afraid of that "sponge" part too .. both looks spongy and title say sponge .. from what I see it is insulation strip so it's expected to be pressed between something I think...
-
@arhi It might still work. Or to put it another way, I do know the solid stuff works, the spongy stuff might work but I don't know for sure if it will.
-
Here's what I've been using with success. Tested the silicone blade and 250c nozzle temps didn't affect it. Also tried a soldering iron at 350c and it couldn't touch it. Should be safe with the temperatures I plan to use for ABS, PC and Nylon.
Link to Product
https://www.amazon.com/gp/product/B000BQU0CQ/ref=ppx_yo_dt_b_asin_title_o04_s00?ie=UTF8&psc=1The blade itself is about 2.2mm wide, has a flat edge on one side and a round key on the other. Total height is about 20mm and it's 200mm long. Enough to do several printers.
The blade is easily mounted and prevented from sliding out by a wall on the opposite side. Macro starts on the side closest to the camera and zig-zags away. -
I tried one blade and it didn't hold up on 200C
I ordered some of that spongy things + I found solid one too so ordered that too we'll see when/if arrives... found something super cool now amongst baby things need to test for temp might be a win ... another kitchen utencil, found between baby things ... temp. resistent -
@arhi said in nozzle wipe:
I tried one blade and it didn't hold up on 200C
This one should sustain high temperature. It is used to hold hot solder iron tips.
https://www.tequipment.net/Metcal/AC-CP2/Soldering-Accessories/?Source=googleshopping
The one I have is 2.3mm in thickness and the square portion is 75mm x 75. It's a rubbery thing.
-
@zapta ha, I have exactly the same thing that I got with my PACE ages ago, you are supposed to use it to grab your hot tip to replace with another one but it's very soft, it's like the stuff I already have in the wiper right now. This "cup" will work great till I get the long strips, it is much stiffer, and when long strips arrive cup will be cool to hold the bits of plastic
-
One thing I did was collect all the old and torn silicone socks I had lying around and made a wipe.
I just sliced off the sides and kept the face, then alternated them with washers. Used RTV on the bottom to bind them.