How to change filament at a layer without an AMS
Any FDM printer can print in more than one colour if it pauses at the right layer so you can load the next filament. You add the change in your slicer before you print. This is how the colour makers on Shapekit work when you choose Filament swap.
What you need
- The layer numbers or heights where the colour changes. The Shapekit makers give you a filament plan with both.
- The 3MF or STL from the maker, and your slicer.
- To be near the printer when it pauses. A swap takes a minute or two.
Adding the change in your slicer
| Slicer | How |
|---|---|
| PrusaSlicer | Open the 3MF from the maker: the colour changes are already in it. Check them on the layer slider in the preview. To add one by hand, move the slider to the layer and click the orange +. |
| Bambu Studio | Slice, then drag the layer slider on the right to the layer from the plan. Right-click the + next to it and choose Add pause. On a printer without an AMS, the pause is what lets you swap by hand. |
| OrcaSlicer | Slice, move the layer slider to the layer, right-click the + and choose Add pause or Add color change. Use a pause if your printer doesn't support colour changes (see below). |
| Cura | Extensions › Post Processing › Modify G-Code › Add a script › Filament Change (or Pause at height), and fill in the layer number from the plan. Add one per change, or list the layers with commas. |
The change goes in before the layer you pick is printed. Check that the height shown next to the slider matches the height in the plan. If the plan says “Layer 7 (Z 0.68 mm)”, the slider should show layer 7 at 0.68 mm. If the heights don't match, the first layer height or the layer height in your slicer differs from the one in the maker; set them the same and slice again.
Colour change or pause?
- Colour change (G-code M600) moves the head aside, unloads the filament and waits for the new one. Prusa printers and most Marlin and Klipper printers with a filament change macro support it.
- Pause just stops and waits. You unload and load the filament yourself from the printer's menu. This works on every printer, and it is the way to go on a Bambu Lab printer without an AMS, or on a printer that ignores M600 (some older Marlin firmware).
At the printer
- When the printer stops, unload the filament from the screen (or pull it out once the nozzle is hot).
- Load the next colour and let it push out plastic until the new colour comes out clean, with no streaks of the old one. Light colours after dark ones need the most.
- Pull away the purged strand with tweezers, so it doesn't land on the print.
- Resume. Don't touch or move the print while it waits: the next layer has to land exactly on the last one.
Example: the filament plan from Photo to STL for a 120 × 90 mm photo in four colours (36 layers, about 18 g):
- Layers 1 to 6: black
- Layer 7 (Z 0.68 mm): change to grey
- Layer 13 (Z 1.16 mm): change to light grey
- Layer 23 (Z 1.96 mm): change to white
That is three pauses: in Bambu Studio, three times Add pause, at layers 7, 13 and 23.
Common problems
- The new colour starts one layer too early or too late: the first layer height in the slicer is different from the one in the plan. Use the same one.
- A streak of the old colour in the new one: purge more before you resume.
- A blob or a gap where it paused: the nozzle cooled down or leaked during a long pause. Swap within a few minutes, and wipe the nozzle before you resume.
- The printer didn't stop: it doesn't support M600. Use a pause instead.
Makers that print with filament swaps
All of these give you a plan with the layers to change at: Photo to STL (2 to 8 colours), Map to STL, the spiral portrait and halftone (one swap each), the photo puzzle, the photo wall clock, the photo coasters, pixel art and the keychain and name sign maker.
Try it with a photo: Photo to STL makes the model and the filament plan for your printer.
Open Photo to STL