Clear all

Moving the nozzle wipe  

New Member
Moving the nozzle wipe


Is there any way to move the nozzle wipe?  There's a large area at the front of the build plate that could be used, but the printer always uses the bottom left section and in exactly the same place.  After lots of prints, it's getting increasingly difficult to remove the wipe from the build plate and it occurred to me that if it moved 2 mm further forward or back, or alternatively moved 60+ mm to the right, it'd be wiping on a fresh bit of build plate.

Is this something that's possible to configure?

In case I'm using the wrong terminology, it's this that I'd like to move:

Nozzle Wipe



Posted : 26/11/2022 5:08 pm
Veteran Member Moderator

in the 'printer settings>Custom Gcode>Start GCode, you will probably have something like this 

G1 Z0.2 F720
G1 Y-3 F1000 ; go outside print area
G92 E0
G1 X60 E9 F1000 ; intro line
G1 X100 E12.5 F1000 ; intro line
G92 E0
Will give  a Intro line to the left of the build plate

which effectively:-
positions the extruder Nozzle  at 0.2mm above the build plate, G1 Z0.2 F720
Moves the extruder Nozzle to the front of the build area, outside the normal build area, G1 Y-3 F1000 ; go outside print area
Sets the Extruder axis to 'Home Position'G92 E0
Prints part of the intro line G1 X60 E9 F1000 ; intro line
Prints the remainder of the intro line G1 X100 E12.5 F1000 ; intro line
Resets the extruder Axis  to a new 'Home Position'G92 E0

I suspect  Adding G1 X100 then changing  X60 to X160 and X100 to X200, will move the purge line towards the end of the X axis

G1 Z0.2 F720
G1 Y-3 F1000 ; go outside print area
G92 E0
G1 X100 ;Move Extruder nozzle to X100
G1 X160 E9 F1000 ; intro line
G1 X200 E12.5 F1000 ; intro line
G92 E0

will give  a revised Intro line

regards Joan

I try to make safe suggestions,You should understand the context and ensure you are happy that they are safe before attempting to apply my suggestions, what you do, is YOUR responsibility. Location Halifax UK

Posted : 26/11/2022 7:48 pm
New Member
Topic starter answered:
RE: Moving the nozzle wipe

Thank you, that worked perfectly and the nozzle wipe was much easier to remove.

Sorry for the slow reply: I did a few prints after changing the setting and it didn't work and it took me a while to realise there was an "if" statement in the custom g-code and I'd edited the code in the "if" block but not the "else" block.  As a result, it did absolutely nothing.  Once I'd fixed that, it worked like a charm.

Thanks again

Posted : 01/12/2022 1:48 pm
Reputable Member
RE: Moving the nozzle wipe


This is my Prime Line
Started with Bobstros code and did some changes to it.
Puts the Prime line in 6 different places depending on minute and second you "Export G-code

Necessary? Guess not!
Educational? Yes!
Overkill? Yes, waaay overkill 😀 

; ** START Prime line routine
M117 Printing prime line
M900 K0; Disable Linear Advance for prime line
; Adjust start position depending on minute and second
; My development on random X-position from RetireeJay and filip.m2
G1 Y{if minute >=40}-3 {elsif minute >=20}-2.5 {else}-2 {endif} F1000.0 ; move Y to -2, -2.5, or -3 depending on minute
G1 X{if second >=30}0 {else}125 {endif} F8000.0 ; move X to 0 or 125 depending on second
G0 Z0.30 ; Restore nozzle position a bit higher for less adhesion
G92 E0.0 ; reset extrusion distance
G1 E2 F1000 ; de-retract and push ooze
G91 ;Use relative positions (starting from the current X-position)
; Start prime line
G1 X20.0 E6  F1000.0 ; fat 20mm intro line @ 0.30
G1 X40.0 E3.2  F1000.0 ; thin +40mm intro line @ 0.08
G1 X40.0 E6  F1000.0 ; fat +40mm intro line @ 0.15
G1 E-0.8 F3000; retract to avoid stringing
G1 X-0.5 E0 F1000.0 ; -0.5mm wipe action to avoid string
G1 X10.0 E0 F1000.0 ; +10mm intro line @ 0.00
G1 E0.6 F1500; de-retract
G92 E0.0 ; reset extrusion distance
G90 ;Use absolute positions
; ** END Prime line routine

Prusa i3 MK3S+ FW 3.11.0 (kit dec -20), PrusaSlicer 2.5.0+win64, Fusion 360, Windows 10

Posted : 02/12/2022 12:31 pm
bobstro, Robin, Neophyl and 1 people liked
New Member
Topic starter answered:
RE: Moving the nozzle wipe

Love it!

Posted : 02/12/2022 12:41 pm
Randomized to one of 8 spots

I got bored.

Having spent my life writing computer code (and GCode feels like code to me) and after reading this thread, inspired by @Ringarn67 and @joantabb, and a bit of research I'm using the following which wipes to one of 4 start positions at Y-2 or Y-3. That is it randomises over 8 different locations.
(I used completely separate locations to ensure there was not additional wear in areas of overlap).
The wipe lengths etc are the same as the default Prusa slicer wipe.
It uses the current second of the time to determine the location, make an absolute move to that spot and then uses relative moves to do the wipe. And the code returns back to absolute positioning
I did consider wiping right to left to get an extra location left of 40mm but I didn't want the head to come back across its tracks and risk picking up rubbish it had already dropped.

On a MK3 with a 250mm bed (bed needs to be more than 230mm) I'm using:

[Use at your own risk, I'm certainly not qualified to debug Gcode for the specific printer and its mods that you use]

;Random Wipe
G1 Z0.2 F720 ;As prusa wipe (Set Z height)
;Move to Y-2 or Y-3, and 0, 40, 80, or 120 to start move
G1 X{int(second/15)*40} Y{-2-int(second/30)} F1000 ;Move to start with no extrude
G92 E0 ;As prusa wipe (Set extrude position)
G91 ;Set relative positioning
G1 X60 E9 F1000 ; intro line (as prusa wipe, executed relative)
G1 X40 E12.5 F1000 ; intro line (as prusa wipe, relative 40)
G90 ;Return to absolute positioning
;End Randow Wipe

For me this code is all I have between the {Else} and {endif} of the "{if filament_settings_id[initial_tool]=~/.*Prusament PA11.*/}" block.

Have fun with it and thanks for this forum thread and the contributions.

Posted : 22/12/2023 5:22 pm
Trusted Member
RE: Moving the nozzle wipe

The MK4 has a much improved purge/wipe which has a little curly handle on it. I've merged that from the MK4 startup g-code and added it to my MK2.5S+ (which is essentially a MK3 except for 12V electronics). Mesh-bed levelling at 170C to avoid oozing then the cute little squiggle it does to purge/prime the nozzle. With this I get perfect prints every time with no dingleberries, and removing the purge/wipe line is a breeze.

M862.3 P "[printer_model]" ; printer model check
M862.1 P[nozzle_diameter] ; nozzle diameter check
G90 ; use absolute coordinates
M83 ; extruder relative mode

; initial warmup routine
M104 S170 ; set extruder temp 170 to minimize oozing
M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp
M109 S170 ; wait for extruder temp

; bed levelling
G28 W ; home all without mesh bed level
G80 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} W{(first_layer_print_max[0]) - (first_layer_print_min[0])} H{(first_layer_print_max[1]) - (first_layer_print_min[1])} ; mesh bed levelling

; prepare for purge
G0 X0 Y-4 Z15 F4800
M104 S[first_layer_temperature]
M109 S[first_layer_temperature]

; purge line
G92 E0 ; reset extruder position
G1 E{(filament_type[0] == "FLEX" ? 4 : 2)} F2400 ; deretraction after the initial one before nozzle cleaning
G0 E7 X15 Z0.2 F500 ; purge
G0 X25 E4 F500 ; purge
G0 X35 E4 F650 ; purge
G0 X45 E4 F800 ; purge
G0 X{45 + 3} Z{0.05} F{8000} ; wipe, move close to the bed
G0 X{45 + 3 * 2} Z0.2 F{8000} ; wipe, move quickly away from the bed

; reset extrusion distance
G92 E0
Posted : 23/12/2023 2:44 am