Reduce material swaps during support interface printing

When printing with multi-material (for example using a different material for support interface), the printer currently performs a material swap for every layer where the interface is present.

A potential optimization would be the following workflow:

  1. Finish printing layer N with the main material.

  2. Swap to the support interface material and print the interface for layer N+1.

  3. Instead of immediately swapping back, continue printing the interface for layer N+2 as well.

  4. Only after this, swap back to the main material and resume normal printing.

In other words, when a support interface layer is printed, the printer could print two interface layers instead of one before switching materials again.

Benefits:

  • Reduces the number of material swaps and purge cycles

  • Potentially halves the time spent printing interface layers

  • Provides measurable time and material savings on prints with frequent material changes

Technical consideration:
Nozzle height should not pose a problem. After completing layer N, the printer would simply print the interface for N+1, then N+2, before returning to the primary material. The Z height would still remain consistent with the layer structure.

This could significantly improve efficiency for prints that require many material changes.

bambu-studio-feature

maybe I’m not seeing it, but I thought that was what was being done for both main and support filament.

I was looking into my latest sliced file conatiningNot quite. Right now the printer swaps material every layer when a different filament is used for the support interface.

So the sequence looks like this:

Layer N:
• Print model (main filament)

Layer N+1:
• Swap filament
• Print support interface
• Swap back
• Print model

Layer N+2:
• Swap filament again
• Print support interface
• Swap back
• Print model

Even if the support interface continues for many layers, the printer still performs two swaps per layer.

What I’m suggesting is slightly different:

Layer N:
• Print model (main filament)

Layer N+1:
• Swap filament
• Print support interface

Layer N+2:
• Print support interface again without swapping

Then swap back once and continue with the model. This means the interface material is used for two layers per swap cycle, reducing the total number of swaps.

Example comparison (simplified):

If a support interface exists for 10 consecutive layers:

Current behavior:
10 layers × 2 swaps per layer = 20 swaps

Proposed behavior:
Print two interface layers per swap cycle →
10 layers ÷ 2 = 5 cycles → 10 swaps

So even in a small example the number of swaps is cut in half.

Example time impact:

If a material swap including purge takes about 30 seconds and the interface is present for 200 layers:

Current behavior:
200 layers × 2 swaps = 400 swaps
400 × 30 s = 12,000 s ≈ 3 hours 20 minutes

Proposed behavior:
200 layers ÷ 2 cycles = 200 swaps
200 × 30 s = 6,000 s ≈ 1 hour 40 minutes

That is roughly 1 hour 40 minutes saved, plus less purge waste.

This idea is mostly theoretical from my side. I have not validated it yet so there may be edge cases I have not considered. That said, grouping two interface layers together should not cause issues with nozzle height or layer order, and I have not yet found any obvious reason why it would not work.

Could you post your test file? I’m not seeing the same behavior you describe, on a simple example with just a couple cubes. The interface is printed sequentially, meaning it finishes one interface layer then starts the next interface layer before swapping the filaments back.

Of course if there’s an odd number of interface layers (3) then the last one is going to be a nozzle swap just for that layer. The Studio UI doesn’t allow for more than 3 layers (and I’m not sure why more would be needed) though I suppose the project file could be altered manually.

I’ve observed the same thing with other filament swaps as well, where it keeps printing the next layer with currently loaded filament instead of the redundant switchover on every layer.

Note that “filament sequence” can be adjusted also, eg. per plate, though I’m not sure that would make any difference for the actual nozzle swaps.

Interface material test.bs.3mf (88.8 KB)

-Max

PS. Don’t know which printer you’re using… my test is with an H2C but I grouped both filaments onto one print head.