Solved - Custom G-Code for " Pause - Wipe - Resume"

I like many others have a problem when printing PETG-CF. The nozzle seems to collect filament and then after enough accumulates it deposits it on the print. This can result in many different issues depending on where it drops it.
I have my filament tuned very well and my prints look great, until the blob comes off. If the prints are small, less than an hour or two it does not accumulate enough to be a problem but long prints always suffer. If I do a manual pause and wipe the nozzle with a brass brush then resume, all is well. But I do not want to babysit long prints.
The stock nozzle wiper is ineffective for this problem as it just moves the blob to the front and back of the nozzle and then it will deposit 2 blobs somewhere. I have printed the ā€œBrass Brushā€ nozzle wiper to replace the stock unit and it works very well at removing the build up from all sides of the nozzle.
But I am still using the ā€œManualā€ Pause and resume.
Can someone help me with some custom G-Code that I can insert every so many layers that will Pause , wipe and resume after the wipe ?
I have not experienced the layer shift issue after pausing or a filament change but maybe an X-Y home would also be a good idea to have in the code.

P1P no AMS

Thanks in advance

Scott

3 Likes

This sounds feasible using the ā€œTemplate Custom G-codeā€ insert. This can then be used by right clicking the appropriate layer and selecting ā€œAdd Custom Templateā€. The wipe g-code can be found in the ā€œMachine start G-codeā€ section. Something like code below. I added the filament retract which might not be needed. Please use this at your own risk as I have not had a chance to verify it.

G1 X60 Y265 F15000 ; nozzle wipe position
G92 E0 ; zero extruder
G1 E-0.5 F300 ; retract filament
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X60 F5000 ; clearance
5 Likes

Hi Jon
Thank you for your reply!

That looks good. So just add the pause command before it ?

M400 U1 ; Pause

What I cannot find is the ā€œResumeā€ command.

Which I think I would add
G28 X Y ; home X and Y
after the resume command to home X&Y to prevent layer shift

Scott

I just tried it.
With the pause command inserted in front of your code messed it up It prompted me to ā€œResumeā€

I took the pause command out and ran

G1 X60 Y265 F15000 ; nozzle wipe position
G92 E0 ; zero extruder
G1 E-0.5 F300 ; retract filament
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X100 F5000 ; wipe right
G1 X70 F15000 ; wipe left
G1 X60 F5000 ; clearance

G28 X Y ; Home X and Y

And it works great !!!

Not sure if the G28 command started it again or if it would have anyway. But It works!!

Thank you very much

Scott

As you figured out you don’t need the pause. The slicer inserts the gcode at the beginning of the layer and once complete it will continue on with the start of the layer.

Homing X and Y ā€œshouldn’t be neededā€ and might add a zit to the outside of the part as the nozzle returns to the part because of oozing. That was the only issue I found when I did some testing of homing XY during a print.

It will be interesting to see which works best for you situation, homing vs not homing.

4 Likes

The only thing I am concerned about is maybe The code should start with dropping the Z a bit before going to the poop shoot. If the layer ends in the front of the part it may leave a scar.

I will watch for the oozing issue you mention.

Thanks again !!
Big thumbs up

Scott

I too tried putting the Pause in front of the wipe code.
Unfortunately, when I hit the ā€˜play’ on the P1S screen, it went immediately back to the model (a small test cylinder), dragging s string of filament with it, THEN, it did the wipe.

Any ideas on having it execute the wipe command before going back to the model?

For Bambu A1 users, i have modified the above g-codes and meticulously matched the coordinates to perform a solid nozzle wipe wherever is needed.

There is no pause, it simply wipes and resumes wherever you enter custom g-code.

This basically performs a single standard left-right notched matching the default wipe before printing, plus a x-type cross wipe at the end which i think help remove grit and and accidental leftovers in the wipe surface and on nozzle

; CUSTOM NOZZLE WIPE START
G92 E0 ; zero extruder
G1 E-0.5 F300 ; retract filament

G1 X55 Y262.5 F15000 ; nozzle wipe position start

G1 Z0.4; nozzle down (matching default z height when original wipe happens)

G1 X20 Y262.5 F15000 ; first wipe

G1 X20 Y262 F15000 ; Y down
G1 X65 Y262 F15000 ; wipe

G1 X65 Y261.5 F15000 ; Y down
G1 X20 Y261.5 F15000 ; wipe

G1 X20 Y261 F15000 ; Y down
G1 X65 Y261 F15000 ; wipe

G1 X65 Y260.5 F15000 ; Y down
G1 X20 Y260.5 F15000 ; wipe

G1 X20 Y260 F15000 ; Y down
G1 X65 Y260 F15000 ; wipe

; X-cross wipe Start
G1 X20 Y262.5 F15000 ; starting position
G1 X20 Y260 F15000 ; down \ wipe
G1 X65 Y262.5 F15000 ; / wipe
G1 X65 Y260 F15000 ; down
G1 X20 Y262.5 F15000 ; \ wipe
G1 X20 Y260 F15000 ; down
G1 X65 Y262.5 F15000 ; / wipe
G1 X65 Y260 F15000 ; down
; X wipe End CUSTOM TOTAL WIPE END

not sure my comments are totally accurate, but if you enable travel lines on slice, you will see the exact path and accuracy limited to the original wipe zone. Let me know if this helps anyone! i’ve had great success removing blob/buildup on particular slice levels.

2 Likes

Worked perfectly first time, thanks.

1 Like