Notifications
Clear all

Random purge line start  

  RSS
chmax
(@chmax)
Estimable Member
Random purge line start

I did publish back in my mk4(s) days a change in the initial purge line code to randomize its starting place after having noticed that using always the same location dug a groove in my printing plate. I did submit it in github for "adoption" but Prusa never took it up.

I have upgraded to a CORE One and here the modified code to do the same on that platform.

CORE One
original snippet
;
; Extrude purge line
;
G92 E0 ; reset extruder position
G1 E{(filament_type[0] == "FLEX" ? 4 : 2)} F2400 ; deretraction after the initial one
G0 E5 X235 Z0.2 F500 ; purge
G0 X225 E4 F500 ; purge
G0 X215 E4 F650 ; purge
G0 X205 E4 F800 ; purge
G0 X202 Z0.05 F8000 ; wipe, move close to the bed
G0 X199 Z0.2 F8000 ; wipe, move quickly away from the bed

this is the changed version (works for my setup, use at your own risk in yours!):

custom snippet
;
; Extrude purge line
;
G92 E0 ; reset extruder position
G1 E{(filament_type[0] == "FLEX" ? 4 : 2)} F2400 ; deretraction after the initial one

; Random start of purge line inside the first half of the plate
{
local rndpos = int(random(print_bed_max[0] / 2, 235));
"M117 Purge begins at " + rndpos + "; share the new start\n";
"G0 E7 X" + rndpos + " Z0.2 F500 ; purge\n";
rndpos = rndpos - 10;
"G0 X" + rndpos + " E4 F500 ; purge\n";
rndpos = rndpos - 10;
"G0 X" + rndpos + " E4 F650 ; purge\n";
rndpos = rndpos - 10;
"G0 X" + rndpos + " E4 F800 ; purge\n";
"G0 X" + (rndpos-3) + " Z0.05 F8000 ; wipe, move close to the bed\n";
"G0 X" + (rndpos-6) + " Z0.2 F8000 ; wipe, move quickly away from the bed\n";
}
Posted : 21/08/2025 10:15 am
1 people liked
gb160
(@gb160)
Reputable Member
RE: Random purge line start

I like this, its always something that irked me.

Posted : 21/08/2025 12:22 pm
1 people liked
gb160
(@gb160)
Reputable Member
RE: Random purge line start

Probably a daft question:
So am I right in seeing this as only X is randomised, Y will be the same ?

Posted : 21/08/2025 1:08 pm
chmax
(@chmax)
Estimable Member
Topic starter answered:
RE: Random purge line start

correct, this only moves the X starting point of the purge line inside the right half of the plate lenght instead of just using a fix value for it (235). It then does exactly the same steps from that point. no changes on Y. In my case I have been running this for a couple of years on my mk4(S) and it worked like a charm.

Only difference from the old one is that the core one starts from the right corner instead of the left one...

Posted : 21/08/2025 1:33 pm
1 people liked
Share: