Multiple poops with high flush volume please

i’m using an ams with my x1c. i’m printing large petg models with pla support interface. i need to do high flush volumes on filament changes so as not to mix the pla with the petg model as it will make the print weak.

if i set the flush volume to 800, i would like to poop 200, wipe and flush down the chute, poop 200, wipe and flush down the chute, poop 200, wipe and flush down the chute, poop 200, wipe and flush down the chute.

currently, the high volume flush builds up until it hits the nozzle, and occasionally sticks to the nozzle and ruins the print by bringing the flush onto the print. please add this feature as i can’t print my objects that need support because of this.

You can add this by modifying the “Change filament G-code” in Printer settings.


i dont know how to read, let alone modify g-code

1 Like

If you don’t want to change the GCODE, then other ideas are

  1. Introduce one or two purge-to objects - that should reduce or eliminate the purge going down the shoot - and instead it will be spread out over the objects
  2. Increase the prime length - and reduce the purge length by a corresponding amount - that will cause some of the purge to go onto the prime tower instead of down the chute.

Wait, can I specify which object to purge too? If memory serves, there’s only purge into infill or support in my slicer as options.

For the second, you mean increase the size of my prime tower correct? Does the slicer take that into account for flush volume? Or do I reduce the flush volume by increasing the size of the prime tower?

Thank you!

Ps I don’t mind changing the gcode, I just don’t know how.

Re 1 - if you add some extra objects, then right click on them, select ‘edit process settings’ then you should hopefully see flush to object as an option against them. (As well as FT support and FT infill).

Note that the flush-to objects need have plenty of extrusion at the exact height of your material changes in order for them to take up a good amount of your 800mm of flush per material change - so something like the top few layers of a cube. You should see the flush total in the slicer go down if they are ok.

With careful selection and sizing of purge-to objects I have managed to get purge down to practically nothing (see my thread in the AMS section for some examples).

Re.2 based on some experiments I did, When you increase the prime lengths it doesn’t seem to reduce the flush totals - so the prime lengths are I think added to the model total instead. Therefore I think you would need to manually reduce the flush lengths if you increase the prime length if you wanted to go that way.


Wait, so the object has to be the same height as my print then right? Is there a simple way to do this?

It doesn’t have to be the same height - just high enough to overlap the layers with colour changes. Plus if it is just for example a layer with just an outline and some fairly sparse infill they it won’t take up much of the purge/flush - so having fuller layers at the heights of the colour changes helps to maximise the benefit,



this isn’t for color changes, but material changes throughout (pla supports on a petg print). i can’t seem to find on the slicer how to create an object to flush the filament into. i think i have to wait for a software solution from bambu because no one seems to know how to do it.

I am currently writing a new version of my Better Purge G-Code and have included this feature. My printer literally is running the trials at the moment.

I settled with the following subdivision:

exactly 0mm³ = no extrusion at all
0mm³ to <107mm³ = 107mm³ (because retraction would not work)
107mm³ to 400mm³ = one poop (because standard range, I think)
401mm³ to 600mm³ = divided into two poops
601mm³ to 850mm³ = divided into three poops
851mm³ to 1100mm³ = divided into four poops (999mm³ is the normal limit)

But since this is only derived from my usage, more input from others would be welcome.

What is the typical range of your flushing volumes?
  • 107mm³ to 200mm³
  • 201mm³ to 400mm³
  • 401mm³ to 600mm³
  • more than 600mm³
0 voters

i figured out how to put an object, and use that for flush. what do you think i should set the infill density to?

Omg you’re amazing, this is exactly what I’ve been looking for!!! I hope your tests prove fruitful!!! Though I think the max should be 300 before splitting into two. I do 500 right now and it’s too much for the chute

just a heads up, if you’re using PLA and PETG I wouldnt recommend flushing into an object. The layer where the flush occurs will have a definite weak spot where it is likely to split, as the adhesion will be very poor (the same reason you are using it for a support interface on your main model). It’s a good trick for not wasting filament during color changes, but doesnt really work for this application, other than to prevent the printer from producing excessively large poops.

Oh I’m not flushing into my main model, I added a waste cube to the plate and I am flushing in to that.

If you are adding cube objects purely for purge-to (pending the AMT_MW gcode solution) then you might as well make the infill 100% - ideally only at the layers where your support interface material changes are occurring (via modifier cubes - rescaled on the Z axis to only a few layers, then moved up to the correct height).


The new G-code is online. Bambu Lab AMS - Calibration & new G-code
A description on how to implement the code is given under “2. Optimized filament change & save filament”, the file with the G-code itself is in the “Documentation” section.

I settled with > 200mm³ for the individual poops for now. - Reasoning being that some extreme PETG filament I used simply wouldn’t disconnect (too light of a poop).

Feedback is welcome :slight_smile:


Do I need to print to use he code? Also does it matter that my filament change is due to different materials not necessarily layers?

If you already know your setting and necessary flushing volumes there is no need to print the calibration files.
The stock code from BL as well as mine simply kicks in where ever it is set to do so, no difference at that.

Really nicely done and documented!


Just finished uploading it. - And what does greet me down at the Related Models section?!
Exactly, something I do consider as a skim off of my previous version on printables. Even bragging: “…without having to make any modifications to the gcode or anything else.”

My original

vs skim off

I am so incredibly tired of this. Honestly, such things push me more and more towards not sharing at all. I am not built for it or sth … and find myself regularly pondering about what other people (that shared far more advanced/valuable/nicer things) feel like with this sort of thing happening.