Notifications
Clear all

"Manual" multicolor  

Page 6 / 7
  RSS
T_om
 T_om
(@t_om)
Eminent Member
RE: "Manual" multicolor

By the way, not all Marlin firmware supports the M600 GCODE command, especially the older versions.  Just tossing that out there.

Tom

Posted : 21/08/2023 6:15 pm
ZzetT
(@zzett)
Member
RE: "Manual" multicolor

 

Posted by: @antimix

I tried to print in multicolor without the MMU on the MK4 4.7.2 using the manual filament change, and I noticed that at the end of M600 for the filament load, when the nozzle go back to print it first go back to the last position before continue to print, and often some plastic drops on that last position where is not expected to have the new loaded color. 😣 
Adding a retraction on the g-code for color change that prevents future leaking do not solve the situation, because when it resumes processing the the g-code, the next g-code instruction do not contain any small purge to balance the added retraction, and it could cause missing material with a defective starting line. 😒 

- Any idea how to solve ?

Just wanted to mention here that this is probably related to issue https://github.com/prusa3d/PrusaSlicer/issues/2672 Have a look there for more information (somebody also posted a script to postprocess the g code but I didn't try it out yet)

 

Posted : 10/09/2023 9:03 am
Bpendragon
(@bpendragon)
Active Member
RE: "Manual" multicolor

Tried these settings on my Mk4 and just needed to make a couple tweaks:

Posted by: @rnbarrett

Printer Settings -> Custom Go-code -> Tool change (the Gzero Xzero Yzero line is very important! as it moves the head to the front left so that blobs don't end up on your print)

    {if layer_num >= 0}
    G0 X0 Y0 ; go to front/left
    M600 ; change to filament for extruder
    {next_extruder + 1}
    {endif}

Printer Settings -> Extruder 1 -> Retraction when tool is disabled
      Length: 0

...

  • Removed the line to move to the front left, M600 on the Mk4 already moves the print head to the front right anyways. Don't move twice when you only need to move once. (Also it doesn't lift so it potentially drags across the print)
  • Set "retraction when tool is disabled" to the default of 4mm. This prevents stringing and helps form a better tip in the Mk4. 
  • Printer Settings > Extruder 1 > Retraction > Lift Z

    is set to 0.4mm to make sure any hops over other colors clear (useful with some filaments that ooze a bit)

 

Also: Because of the way M600 on the Mk4 behaves it's best to put your wipe tower near the front right to minimize extra moves

Even with its manual purge for color changes I still recommend the wipe tower so any touch off occurs off the model and in the wipe tower. 

 

Here's my PrusaSlicer config for anyone that wants it: https://drive.google.com/file/d/1PKu_Yl8mEa9GbdkrIM73kbconaARoVj0/view?usp=sharing   (As always with random files on the internet, double check them before using them)

 

 

In Progress:

Posted : 11/09/2023 3:19 am
Mike_GKA
(@mike_gka)
Active Member
RE: "Manual" multicolor

I have done some improvement to the Tool change G-code

; eliminate first tool change
{if previous_extruder != -1}
G0 Z{toolchange_z+10} F6000
M601 ; Pause
M400 ; wait until all moves are completed
; color notification
M117 Next color is { (extruder_colour[next_extruder] == "#00FF00" ? "GREEN"
:(extruder_colour[next_extruder] == "#FF0000" ? "RED"
:(extruder_colour[next_extruder] == "#FFFF00" ? "YELLOW"
:(extruder_colour[next_extruder] == "#0000FF" ? "BLUE"
:(extruder_colour[next_extruder] == "#FFFFFF" ? "WHITE"
:(extruder_colour[next_extruder] == "#000000" ? "BLACK"
:(extruder_colour[next_extruder] == "#999999" ? "GRAY"
:(extruder_colour[next_extruder] == "#D4AF37" ? "GOLD"
:(extruder_colour[next_extruder] == "#C0C0C0" ? "SILVER"
:(extruder_colour[next_extruder] == "#FF8000" ? "ORANGE"
:(extruder_colour[next_extruder] == "#800080" ? "PURPLE"
:(extruder_colour[next_extruder] == "#FF6600" ? "ORANGE"
:(extruder_colour[next_extruder] == "#F0F0F0" ? "TRANSPARENT"
:(extruder_colour[next_extruder] == "#800000" ? "BROWN"
:extruder_colour[next_extruder] ))))))))))))))};
G4 S4 ; wait 4 seconds
M600
{endif}

This will eliminate the M600 when start printing.

And the printer will pause before every tool change and after resume (Click continue) the printer will show the next color on the display for 4 sec.

Posted : 13/09/2023 4:39 pm
Yourigh and meltdown liked
mhacker
(@mhacker)
Trusted Member
RE: "Manual" multicolor

I upgraded my MK4 to 5.1.0, and now I can not print any multicolor prints using this method. When I start the print, the bed heater seems to come on (the LED lights up) but the screen remains blank. In the web interface of the printer, it only says "Printer status: Attention!". Has anyone gotten any success with this?

I did recreate the print profile based on the standard mk4 IS profile and the settings suggested by @minorhavoc to avoid the wipe tower blobs, but no luck.

Posted : 24/11/2023 6:11 pm
mhacker
(@mhacker)
Trusted Member
RE: "Manual" multicolor

 

Posted by: @mhacker

I upgraded my MK4 to 5.1.0, and now I can not print any multicolor prints using this method. When I start the print, the bed heater seems to come on (the LED lights up) but the screen remains blank. In the web interface of the printer, it only says "Printer status: Attention!". Has anyone gotten any success with this?

I did recreate the print profile based on the standard mk4 IS profile and the settings suggested by @minorhavoc to avoid the wipe tower blobs, but no luck.

It does work when I start the print from the web dashboard though, so there is a workaround.

Posted : 24/11/2023 6:19 pm
ironfan72
(@ironfan72)
Trusted Member
RE: "Manual" multicolor

 

Posted by: @mhacker

 

Posted by: @mhacker

I upgraded my MK4 to 5.1.0, and now I can not print any multicolor prints using this method. When I start the print, the bed heater seems to come on (the LED lights up) but the screen remains blank. In the web interface of the printer, it only says "Printer status: Attention!". Has anyone gotten any success with this?

I did recreate the print profile based on the standard mk4 IS profile and the settings suggested by @minorhavoc to avoid the wipe tower blobs, but no luck.

It does work when I start the print from the web dashboard though, so there is a workaround.

I can confirm this too. Upgraded to 5.1 firmware and prusaslicer 2.7 and when trying to do a single mmu print from the LCD the screen goes blank and the bed heater comes on but you can't see any useful information on the screen.

I can also confirm that starting the print from prusalink is a good workaround.

Posted : 25/11/2023 2:32 am
mhacker liked
mhacker
(@mhacker)
Trusted Member
RE: "Manual" multicolor

Reported as a bug: https://github.com/prusa3d/Prusa-Firmware-Buddy/issues/3525

 

Posted by: @ironfan72

 

Posted by: @mhacker

 

Posted by: @mhacker

I upgraded my MK4 to 5.1.0, and now I can not print any multicolor prints using this method. When I start the print, the bed heater seems to come on (the LED lights up) but the screen remains blank. In the web interface of the printer, it only says "Printer status: Attention!". Has anyone gotten any success with this?

I did recreate the print profile based on the standard mk4 IS profile and the settings suggested by @minorhavoc to avoid the wipe tower blobs, but no luck.

It does work when I start the print from the web dashboard though, so there is a workaround.

I can confirm this too. Upgraded to 5.1 firmware and prusaslicer 2.7 and when trying to do a single mmu print from the LCD the screen goes blank and the bed heater comes on but you can't see any useful information on the screen.

I can also confirm that starting the print from prusalink is a good workaround.

 

Posted : 28/11/2023 12:37 pm
ObedMuro
(@obedmuro)
Active Member
RE: "Manual" multicolor

Thanks to your answer I could see that at least from Prusa Link you can start the bgcode file without problem, I hope they fix this bug soon.

Posted : 28/11/2023 9:28 pm
mhacker
(@mhacker)
Trusted Member
RE: "Manual" multicolor

Great, I'll incorporate that in my setup. Meanwhile, I made a feature request to modify the M600 command so that it could display some meaningful help texts to help you remember which filament to insert to. If you agree, vote for the request so it gets picked up:

https://github.com/prusa3d/Prusa-Firmware-Buddy/issues/3536

 

Posted by: @mike_gka

I have done some improvement to the Tool change G-code

; eliminate first tool change
{if previous_extruder != -1}
G0 Z{toolchange_z+10} F6000
M601 ; Pause
M400 ; wait until all moves are completed
; color notification
M117 Next color is { (extruder_colour[next_extruder] == "#00FF00" ? "GREEN"
:(extruder_colour[next_extruder] == "#FF0000" ? "RED"
:(extruder_colour[next_extruder] == "#FFFF00" ? "YELLOW"
:(extruder_colour[next_extruder] == "#0000FF" ? "BLUE"
:(extruder_colour[next_extruder] == "#FFFFFF" ? "WHITE"
:(extruder_colour[next_extruder] == "#000000" ? "BLACK"
:(extruder_colour[next_extruder] == "#999999" ? "GRAY"
:(extruder_colour[next_extruder] == "#D4AF37" ? "GOLD"
:(extruder_colour[next_extruder] == "#C0C0C0" ? "SILVER"
:(extruder_colour[next_extruder] == "#FF8000" ? "ORANGE"
:(extruder_colour[next_extruder] == "#800080" ? "PURPLE"
:(extruder_colour[next_extruder] == "#FF6600" ? "ORANGE"
:(extruder_colour[next_extruder] == "#F0F0F0" ? "TRANSPARENT"
:(extruder_colour[next_extruder] == "#800000" ? "BROWN"
:extruder_colour[next_extruder] ))))))))))))))};
G4 S4 ; wait 4 seconds
M600
{endif}

This will eliminate the M600 when start printing.

And the printer will pause before every tool change and after resume (Click continue) the printer will show the next color on the display for 4 sec.

 

Posted : 29/11/2023 6:01 am
ObedMuro liked
ObedMuro
(@obedmuro)
Active Member
RE: "Manual" multicolor

Of course, I'm going to vote, your proposal is very very useful, it was my first attempt to print in multiple colors, and just today I came across the initial M600 color change , for now I can copy your code and paste it into the custom tool change gcode, right?

Posted by: @mhacker

Great, I'll incorporate that in my setup. Meanwhile, I made a feature request to modify the M600 command so that it could display some meaningful help texts to help you remember which filament to insert to. If you agree, vote for the request so it gets picked up:

https://github.com/prusa3d/Prusa-Firmware-Buddy/issues/3536

 

Posted by: @mike_gka

I have done some improvement to the Tool change G-code

; eliminate first tool change
{if previous_extruder != -1}
G0 Z{toolchange_z+10} F6000
M601 ; Pause
M400 ; wait until all moves are completed
; color notification
M117 Next color is { (extruder_colour[next_extruder] == "#00FF00" ? "GREEN"
:(extruder_colour[next_extruder] == "#FF0000" ? "RED"
:(extruder_colour[next_extruder] == "#FFFF00" ? "YELLOW"
:(extruder_colour[next_extruder] == "#0000FF" ? "BLUE"
:(extruder_colour[next_extruder] == "#FFFFFF" ? "WHITE"
:(extruder_colour[next_extruder] == "#000000" ? "BLACK"
:(extruder_colour[next_extruder] == "#999999" ? "GRAY"
:(extruder_colour[next_extruder] == "#D4AF37" ? "GOLD"
:(extruder_colour[next_extruder] == "#C0C0C0" ? "SILVER"
:(extruder_colour[next_extruder] == "#FF8000" ? "ORANGE"
:(extruder_colour[next_extruder] == "#800080" ? "PURPLE"
:(extruder_colour[next_extruder] == "#FF6600" ? "ORANGE"
:(extruder_colour[next_extruder] == "#F0F0F0" ? "TRANSPARENT"
:(extruder_colour[next_extruder] == "#800000" ? "BROWN"
:extruder_colour[next_extruder] ))))))))))))))};
G4 S4 ; wait 4 seconds
M600
{endif}

This will eliminate the M600 when start printing.

And the printer will pause before every tool change and after resume (Click continue) the printer will show the next color on the display for 4 sec.

 

 

Posted : 29/11/2023 7:04 am
David
(@david-11)
Active Member
RE: "Manual" multicolor

I've been playing with these settings on a new project and have to say for my printer: MKS3+ rnbarrett settings on page 5 worked marvelously!!

Tried other settings cause this is a long read and when just stuck to his, the stringing was gone on the text (that was where I was changing color). The only other thing did was set the wipe tower to the back and checked box for: No sparse layers (EXPERIMENTAL).

Got one little tiny sting on a dash between two numbers was all. That secondary blob after it goes back and starts printing didn't show up and extruder going back to the original spot before the color change didn't happen, it just went to the first text and started printing.

Posted : 18/12/2023 10:36 pm
rex555
(@rex555)
Active Member
RE: "Manual" multicolor

Just ran into the MK4 black screen issue, figured I would check this thread and of course y'all have it figured out and a workaround for me. Y'all are awesome! Thanks for this entire thread!

Posted : 26/12/2023 9:13 pm
Intveltr
(@intveltr)
Eminent Member
RE: "Manual" multicolor

Those settings work ok for a MK3 as well, the only thing is that I get a bit of oozies after the filament change, which ends up as a small blob on the wipe tower.  The extruder audibly has issues moving over that on subsequent passes.  I only use multi color to do text inlays on the first layer, so it's not a huge deal, but I wouldn't want to have to deal with this on prints that have color changes in every layer.

The Nextruder has some oozing issues in general.  I added some custom GCode to prevent this on single filament prints, maybe it'll work for multi color as well.

Posted : 27/12/2023 1:27 am
rex555
(@rex555)
Active Member
RE: "Manual" multicolor

Agree, I also tried actual MMU (PLA and PETG on same print) and it did not honor the different temp. This was a test print but it was not great 

Posted : 27/12/2023 1:31 am
Walter Layher
(@walter-layher)
Prominent Member
RE: "Manual" multicolor

Manual MMU printing with the MK4 also works via OctoPrint. I first tried to print the file via the USB stick but ran into the black screen bug where nothing happened printing-wise. Then I tried printing via OctoPrint. I just have "M600" as custom G-Code for tool change in PrusaSlicer. The extruder moves to the front right hand side just as with any M600 color change. I had to click away an error message in OctoPrint that "The T1 command was not sent to the printer ..." but the print continued fine.

Posted : 01/01/2024 8:17 pm
Rocket printer
(@rocket-printer)
Active Member
RE: "Manual" multicolor

Is this possible with an MK3s+, Thanks

Posted : 02/01/2024 8:59 pm
Gareth Bradley
(@gareth-bradley)
Member
RE: "Manual" multicolor

Just for anyone having issues with this method on Duet boards...There's a way of stripping out the T1 T2 etc. tool changes and replace them with T0. Gotta love a it of Regex.

Posted : 02/01/2024 11:32 pm
rex555
(@rex555)
Active Member
RE: "Manual" multicolor

 

Posted by: @mike_gka

I have done some improvement to the Tool change G-code

; eliminate first tool change
{if previous_extruder != -1}
G0 Z{toolchange_z+10} F6000
M601 ; Pause
M400 ; wait until all moves are completed
; color notification
M117 Next color is { (extruder_colour[next_extruder] == "#00FF00" ? "GREEN"
:(extruder_colour[next_extruder] == "#FF0000" ? "RED"
:(extruder_colour[next_extruder] == "#FFFF00" ? "YELLOW"
:(extruder_colour[next_extruder] == "#0000FF" ? "BLUE"
:(extruder_colour[next_extruder] == "#FFFFFF" ? "WHITE"
:(extruder_colour[next_extruder] == "#000000" ? "BLACK"
:(extruder_colour[next_extruder] == "#999999" ? "GRAY"
:(extruder_colour[next_extruder] == "#D4AF37" ? "GOLD"
:(extruder_colour[next_extruder] == "#C0C0C0" ? "SILVER"
:(extruder_colour[next_extruder] == "#FF8000" ? "ORANGE"
:(extruder_colour[next_extruder] == "#800080" ? "PURPLE"
:(extruder_colour[next_extruder] == "#FF6600" ? "ORANGE"
:(extruder_colour[next_extruder] == "#F0F0F0" ? "TRANSPARENT"
:(extruder_colour[next_extruder] == "#800000" ? "BROWN"
:extruder_colour[next_extruder] ))))))))))))))};
G4 S4 ; wait 4 seconds
M600
{endif}

This will eliminate the M600 when start printing.

And the printer will pause before every tool change and after resume (Click continue) the printer will show the next color on the display for 4 sec.

Hi there, this looks really cool but I am not exactly sure what is going on in the code. I write other code but have not started into gcode much yet so trying to start understanding what is going on rather than just using.

In this code, since you are skipping the first tool change does your GREEN line refer to the second filament? and do you need an entry for each tool change or just each virtual extruder? Sorry if these are dumb questions, or if there is a FM I can go to kindly RTFM can you point me to a good source? Thanks

Posted : 08/01/2024 1:42 am
Mike_GKA
(@mike_gka)
Active Member
RE: "Manual" multicolor

Hi rexx555,

Every defined virtual extruder has a number.  With extruder_colour(extruder_number) you will get the RGB-code of the colour associated to virtual extruder with the number extruder_number.

A tool change is done every time a new virtual extruder is used and this will run this code.

On start printing a virtual extruder is used and the virtual extruder before is not existent, therefor previous_extruder is -1.

With {if previous_extruder != -1} … {endif} everything (…) is skipped. So the whole code is not running on start printing.

On all other virtual extruder change the code (…) will run.

Instead of showing the RGB-code on the display for every tool change, I want to show the friendly name like green, yellow, red, ,,,.All statements like “(extruder_colour[next_extruder] == "#00FF00" ? "GREEN"” is a translation from the RGB-color to a friendly name. Because I can’t defined millions of friendly names the last statement “extruder_colour[next_extruder]” will show the RGB-code if no friendly name was defined.

Posted : 09/01/2024 10:41 am
Page 6 / 7
Share: