Jump to content

Multicolor print object at once


Recommended Posts

Posted · Multicolor print object at once

Hello, I want to print multicolor object... I know how to combine it, how to change filament... but..

Grey object is from 2 layers for "better color contrast". Current printing scenario is:

- printer finished light blue object

- filament change to GREY, printer continue to print first grey layer

- filament change to dark blue, printer print first layer of dark blue

- filament change to GREY, printer print second grey layer

- filament change to dark blue, printer continue to print dark blue..


How is possible to print selected GREY object at once? How to setup CURA? with this scenario:

- printer finished light blue object

- filament change to GREY, printer continue to print first and second grey layer - it is printed AT ONCE

- filament change to dark blue, printer continue to print dark blue..


Is it possible to do? I hope that it is understandable 🙂 Thank you.





  • Link to post
    Share on other sites

    Posted · Multicolor print object at once

    Cura works layer-by-layer so...

    With a single extruder printer, this would require much hand coding of the Gcode.

    With a Dual extruder printer there would still be a manual color change from light blue to dark blue.

    With a 3-in-1-out hot end this could be printed as you describe.


    If you were to print the gray parts ahead of time, and then print the light blue and dark blue pieces as 1 part with a color change, then the pocket would be there to glue in the gray pieces.


    When I print things like this I just allow the gray part to extend all the way out to the outside.  That way it's just another color change (light blue to gray to dark blue).  Yes, the outside would show a gray stripe - but for most pieces it doesn't matter.


  • Link to post
    Share on other sites

    Posted · Multicolor print object at once

    If I understand right you are trying to make layers a different color?  So like the first 10 layers grey then change the next 5 ect.


    If so goto the extensions menu then post processing.  Then add a filament change.  Be sure that you insert the correct layer.  You want the very first layer that should be the new color and not the layer previous to your color change.  You can keep adding more of these for each color change you want.


    It adds an M600 into the g-code (assuming your printer supports this is a change filament code).  Printer will wait for you to change the filament with the build plate hot.

  • Link to post
    Share on other sites

    Posted · Multicolor print object at once

    I was thinking (scary, I know)...if you install a Geeetech A20T in Cura it's a three extruder printer.  You can set it up with the shared nozzle and shared heater (in Printer Settings) and set all the material standby temperatures to your printing temperature, and then when you slice, the Gcode will reflect where you need to hand code.  T0, T1 and T2 will be located in the code where you need to make color changes.  Many changes will be mid-layer.  You would need to sync the XYZ and E locations every time so it will still be tedious but searching through the gcode for every change location would be a lot mor tedious and it would be easier to make mistakes.


    I checked a simple 3 color print and there were 260 tool changes (in 253) layers and each one would need hand coding for the color change.  They would all follow the same form but none would be identical and a typo could ruin your whole day.  I know yours won't be that complicated but still...


    Cyano-Acrylic Super-Glue.  It works well.  It's simple and easy to understand.  It would only require 1 color change during 1 print and none in the other.

  • Link to post
    Share on other sites

    Posted · Multicolor print object at once

    @pmp and @woodworker2001

    I spent some time playing with this concept of "mid layer pausing" to change colors.  What I came up with is a method to manually emulate a dual extruder printer.  I think it shows promise for prints with limited tool changes.  I sliced a dual color 3d Benchy and there were 177 tool changes that become manual filament changes.  That would be no fun.


    In Cura I have a "Virtual Ender 3 Pro" configured for up to 4 extruders as a "multi-in and 1 out" machine.  Shared Nozzle, Shared Heater, no retraction at tool change, all standby temperatures are set to printing temperature.

    By playing with the settings (retraction at tool change is an example) I'm able to get it to change tools with no waiting for heating, or cool down - it switches tools and goes right to work (virtually of course).  I configured it with three extruders for testing and the model is kind of like the one in PMP's pictures.  The key is that "Search and Replace" allows for multi-line replacement strings using the "\n" newline characters.

    I brought 3 models into Cura and assigned extruder 1 to model A and extruder 2 to model B and extruder 3 to model C.
    I add (1) instance of the Cura "Search And Replace" post-processor for each extruder.
    In one "Search box" was T0 and in the Replace box was this:
    ;\n;Color Change\nT0\nM84 S1000\nG91\nM83\n;G1 E-5\nG1 Z10\nG90\nG1 X0 Y0 F7200\nM118 COLOR\nM300\nM0\n;G1 XY ;Return to XY\n;G1 Z ;Return to Z\nM82\n;End of Color Change\n;

    In the second search box was T1 and in the third search box was T2.  The replacement strings were the same as for T0.


    So Search and Replace inserts this snippet into the Gcode whenever there is a tool change.  You may notice that it is much like the Pause at Height code inserted by that plugin.  There are only so many ways to do this:

    ;Color Change
    T0        ;All the tool changes are now T0 as a single extruder machine will pick up other tool numbers as errors.
    M84 S1000    ;Stepper timeout set to 1000 seconds
    G91        ;Relative positioning
    M83        ;Relative extrusion
    ;G1 E-5        ;Retract 5mm - some prints need this additional extrusion and some don't
    G1 Z10        ;Move up 10mm
    G90        ;Absolute positioning
    G1 X0 Y0 F7200    ;Move to the left front corner

    M118 BLACK   ;M118 sends a response from the printer back to Pronterface or other control software set up to receive.
    M300        ;Beep
    M0        ;Pause
    ;G1 XY         ;"Return to" XY location (if required) is manually pasted in.  It's the last XY location before the pause. - some prints need this and some don't
    ;G1 Z         ;"Return to" Z location also might need to be pasted in.  It is the last Z location before the pause. - some prints need this and some don't
    M82        ;Absolute extrusion
    ;End of Color Change

    The very first occurrence of the "T" command occurs before the startup gcode and will need to have the pause lines removed as it doesn't need them.

    I did use the prime tower and it needs to be located near the "park" position to keep stringing off the print.

    All-in-all I was pleased with how the print came out.  I really expected clumsier transitions but they come out well with little to no blobbing.  The bottom line is that this shows promise at least for those projects that don't require a boat load of tool changes.  I know some printers don't support the M0 command, but there are other commands that could work.  It's just a glorified copy-and-paste routine but it takes nearly all of the tedium out of doing something like this (although you do have to sit there and wait for filament changes).

    • There were "extra" filament changes to color 1.  It would do the prime tower and then there would be an immediate color change to the next color.
    • Things rapidly got confusing as to which color to change to and so I added the M118 line as I use my own bit of software to monitor the printer at all times.  I tried M117 to send the color to the LCD but it was immediately over-written by "Click to resume" from the M0 command so M117 didn't work for me.  I would highly recommend having Pronterface running so the M118 will send the message back to the computer.

    There is no doubt that this will take practice.  I was able to print the files with no hand coding beyond removing that very first Pause code from the front of the file.

    I am now fully proficient at trimming and loading filament.


  • Link to post
    Share on other sites

    Posted · Multicolor print object at once

    @GregValiant That is cool.  I had not considered the idea of the filament change being during the same layer.  I have a Prusa mk3s with mmu2s, but use prusa slicer for that.  This is pretty cool and some neat programing you have come up with here!

  • Link to post
    Share on other sites

    Posted · Multicolor print object at once

    Thank you @woodworker2001. This is hot off the printer.  It still needs the windows and curtains and so forth.  All in all I'm pleased but I wish I would have dried the silver first (it's a little blobby in person).  Now there isn't enough left for another Airstream.  We belong to the Tin Can Tourists and I sell these with a set of drink coasters (for a pittance) at our vintage trailer rallies.  Ours is a 1972 Shasta Compact.

    But my hands are tired of pulling, pushing, and trimming.  There were 66 color changes in the silver trailer and only 8 in the rainbow one (my previous record holder).  The process worked though and there was no hand coding.  I think I'll put this process in the toolbox and bring it out for special occasions.  The constant filament changing got real old real fast.  The trailers are shells with no infill and no internal support so the layer time is short.  Filament changes were every 30 seconds or so.


    BTW I checked in fdmprinter.def.json and the max number of extruders is 16.  I think trying something with 16 extruders would define "tedium ad nauseum"





    • Like 1
    Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • Introducing the UltiMaker Factor 4
        We are happy to announce the next evolution in the UltiMaker 3D printer lineup: the UltiMaker Factor 4 industrial-grade 3D printer, designed to take manufacturing to new levels of efficiency and reliability. Factor 4 is an end-to-end 3D printing solution for light industrial applications
          • Thanks
          • Like
        • 3 replies
      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
          • Like
        • 26 replies
    • Create New...