Ideas on boosting speed for multi-color printing with AMS

The 3code.3mf file you get out of export plate sliced file is actually a zip file, if you rename it to zip and then extract it you will find the raw gcode files under the metadata folder.

Or alternatively to get a raw gcode file directly out of BS you can use file/export/export gcode.

1 Like

Firstly, thanks very much for your work on this, I really hope that BambuLabs integrate this into available BS profiles.

I have come to this a little late, as a new owner, so have some questions.

Is the gcode portable across the P1S/P1P range (I’m sure it will be different across the A1 printers due to their different geometry), or is it specifically for X1C ?
I know that the great purge reduction work by Reduce purge by up to 60%. by leon.fisher.skipper.18 - MakerWorld has multiple variants for the different models.

Did you manage integrating those reduced purge code mods? I can’t see it in the code history.

Also, did you manage to post your work on makerworld or printables? Github isn’t the clearest medium for the average user.
Thanks again

1 Like

I’ve been using the code in the github on my P1S for a while now with multiple 1000 swap prints and no issues. I AM still using a prime tower, but greatly reduced.
the biggest improvement BY FAR was shortening the PTFE tubes though, all totaled I’ve saved almost 3h in a 17h 800 swap print, finishing at 13h 15min ish


Thanks for confirming @mordekain,
The huge increase in print times for multi-colour has definitely been affecting my choice of prints and my experience with the printer in the first month.
I expect I’ll be giving this a try in the upcoming weekend, and I’ll feed back my experiences.

I’ll be trying this this week. I liked the length originally because it allowed me to set the AMS off to the side (on the same table as the printer) but I think I’m going to mount the AMS on a shelf on the wall so I don’t need to move it to get into the top of the printer.

You can still place it on the side no problem, this is my current setup:

Don’t even need the stand, it works fine on the desk beside the printer.

if you unscrew the buffer you get a lot more flexibility:

I put a cover on it to protect from dust a bit.

1 Like

Is there any way to set up the Bambu to just use regular infill space as the wipe tower, thus reducing the need for the tower at all?
If I could have the printer wipe off the color as infill, that could be helpful. This would obviously only work with dark colors but it was a thought

That’s in the slicer settings, just a checkbox, unless I misunderstood the question.
No way to control what colours go in though, so if you have dark infill with a light shell it might be visible.

1 Like

Purging and priming are different things though. We can purge to infill instead of the poop chute, but we’ll need priming regardless. If we could prime to infill instead of building a prime tower the volumes should be small enough that the risk for see-through is lower (but still a caveat).

Might be worth a feature request in Orca, though the only good reason would be for models so big you can’t fit a prime tower. The savings are miniscule - the prime tower is very low density.

1 Like

Just wanted to bring this alive again due to Bambu Lab’s recent firmware update involving a 25% reduction in purged waste.

I’ve been using @DzzD filament color change code for months now and haven’t had a single issue. I’ve only saved numerous hours of print time and filament from it. Noticing the new firmware from BL I don’t see it more beneficial than DzzD’s code…

The ultimately only implemented the retraction & cut then purge but still doesn’t save time nearly compared to his or the small corners cut for speed and filament feeding. (not to mention the LiDar LED turning on for purging, simply genius)

I hope this makes way to engineering @ BL’s because this could potentially improve upon what they should’ve had going this whole time

You can do multicolor without tower. Tik it out in Orca. I nearly never use a tower. Just make sure enough filament is pooped and start layer with inner wall (I do) or with infill. Works very well for me.
–>add: together with DzzD’s filament change gcode


I used some retraction \ anti-waste code originally posted but is there newer\updated?
Did you shorten your PTFE tubes?
Anything else to benefit?
My LiDar doesnt turn on\off with purging so … must be old code etc.

Any chance I could get some specifics, eg link or speciffic revsion and steps?

1 Like

uhm… Now you have me questioning it… I copied and pasted the most recent updated code from DzzD’s Github. I’ll post the link here in a bit or attached my code within.

I reduced my PTFE line to the bare minimum while still suiting my setup needs. I’ll get those specs too if you want.

The biggest benefits are

  • Faster purge ~ hard poops become simple stringy poops & like 20% hard from the end of purging
  • No prime tower needed
  • Color change significantly quicker / extra reduction in time when reducing PTFE from AMS - Buffer
  • little to no risk of purge chute clogs ~ faster extrusion allows the initial purge to reach the bottom of “chute door” and the weight from the last bit of hard poop adds weight for poop to slide down the chute
1 Like

Hi, everyone. I’m totally new here. Just googled and found this thread…read through all the great ideas but did not see mine covered. Is anyone working on a way to take advantage of the fact these machines should know the exact nozzle and head geometry in space while also knowing the exact geometry of what’s being printed in space…together? Every time I watch my (new and very cleverly designed) bambu x1 print I wonder if there’s a way to make it smart enough to print say 25 layers of one color and then, if the clearance is available, dive back in and catch up on the other 25 layers. It would do this WITHOUT changing filmament between every layer. I’m fairly certain this would speed multi-color printing WAY up. The programming would be very similar to what manufacturing programmers do in software like surfcam for cnc machines (3 axis or higher) where the software can optimize end mill clearance relative to the part and generate tool paths. What am I missing? Would love to hear some thoughts…


I’ve had similar ideas and yeah it should be very effective when applicable. The only current optimization is that when a layer is complete it starts the next layer with whatever color is already loaded.

That current scheme is low hanging fruit though while your idea is likely really tricky to implement. You could try adding a feature request to Bambu Studio and/or Orca Slicer. If you do, please post the issue number(s) here bc I’d want to track them for possibly interesting discussions.

if the clearance is available, dive back in and catch up on the other 25 layers

you don’t only need clearance from the nozzle, toolhead, fan duct etc but your airflow from the aux & parts cooling fan will not get there if you are printing inside an enclosed geometry and it’ll create artifacts —> inhomogeneous print quality


It often wouldn’t apply though: imagine printing a flag upright. I think the only optimization possible is what’s already implemented. Only single colored objects separated with enough clearance (or when colors otherwise don’t touch any other color bc of voids) would apply - much like current ‘print by object’ but with less restrictions because like you say we could print eg. 25 layers at a time as opposed to the entire object.

Yeah unfortunately that might be an even worse problem than the complexity of implementing it

“it often wouldn’t apply”

^— correct. software would need to be developed to do this. I’m not saying it’s easy. it would need to run optimization during slicing and identify, for lack of a better term, dive pockets. these dive pockets would need to have geometry that protruded upward at some maximum slope angle (due to nozzle tip geom) and only a couple dozen layers (due to head clearance). It would be very complex to implement but could save a bunch of time on the thing I’m printing now…certainly small portions of most multi color models could benefit. No idea what percent…haven’t thought about it that much.

Thanks for the great feedback!

great point… but for 25 layers I think there’s still a chance airflow would be sufficient.