Page 1 of 2

Toggle dual nozzle temps with tool change script?

Posted: Thu Sep 01, 2016 2:24 pm
by zemlin
I don't have a lot of dual extruder experience at this point, but it seems apparent that ooze from the idle nozzle is going to be a constant battle, especially with PETG and other oozy materials.

I'm wondering if it's possible to create a tool change script that will move the print head off-part, toggle temperatures on nozzles, and then wait for them to stabilize before continuing to print. Thinking that a temperature drop of 40C, for example, should keep the idle nozzle from drooling. I understand the time implications of this practice, but I've been working with one part where the secondary nozzle only prints on the first layer. A 5-10 minute delay to print the first layer would be no big deal on that part.

My first thought is that I'd need to have two tool change scripts to accomplish this, and S3D only has room for one, unless there are ways to use conditional statements in the script.

Thoughts from the GCODE masters out there? FWIW, printer is a Makergear M2.

Re: Toggle dual nozzle temps with tool change script?

Posted: Thu Sep 01, 2016 3:05 pm
by dorsai3d
You can do exactly that thanks to the IF OLDTOOL and IF NEWTOOL statements. See this thread for an example of exactly what you're asking to do: viewtopic.php?f=8&t=1959

Re: Toggle dual nozzle temps with tool change script?

Posted: Fri Sep 02, 2016 1:10 pm
by zemlin
Great - I have some studying to do.
Thanks.

Re: Toggle dual nozzle temps with tool change script?

Posted: Sat Sep 03, 2016 7:44 pm
by blaknite7
you need something like this in the tool change script:

G1 X0 Y40 F4000 ; move to wait for temperatures
{IF NEWTOOL=0}M104 S165 T1; set T1, inactive extruder to 165 C
{IF NEWTOOL=0}M109 S205 T0; Set T0, new active extruder to T0 Temperature and wait for it to reach temperature before proceeding.
{IF NEWTOOL=1}M104 S165 T0; Cool T0 to 165
{IF NEWTOOL=1}M109 S205 T1; set T1, Heat T1 to T1 Temperature

Obviously you'll want to change a few things:

-Extruder temperatures for the materials you are using
-Different M-Code commands depending on the printer you have (this was based on a Wanhao Duplicator)
-Different X-Y location that is off of your part.

Re: Toggle dual nozzle temps with tool change script?

Posted: Mon Sep 05, 2016 12:17 am
by dorsai3d
blaknite7 wrote:Obviously you'll want to change a few things:

-Extruder temperatures for the materials you are using
If you use the extruder # variables, the script will automatically fill in the appropriate temperatures there, so you don't need to change that all the time. For example:

Code: Select all

{IF NEWTOOL=1}M109 S[extruder1_temperature] T1; set T1, Heat T1 to T1 Temperature

Re: Toggle dual nozzle temps with tool change script?

Posted: Sat Sep 10, 2016 12:00 pm
by zemlin
blaknite7 wrote:you need something like this in the tool change script: ... .
Running my first test print with your tool change script.
Seems to be off to a good start! Thanks.

Re: Toggle dual nozzle temps with tool change script?

Posted: Sat Sep 10, 2016 4:36 pm
by chief_hacker
blaknite7 wrote:you need something like this in the tool change script:

G1 X0 Y40 F4000 ; move to wait for temperatures
{IF NEWTOOL=0}M104 S165 T1; set T1, inactive extruder to 165 C
{IF NEWTOOL=0}M109 S205 T0; Set T0, new active extruder to T0 Temperature and wait for it to reach temperature before proceeding.
{IF NEWTOOL=1}M104 S165 T0; Cool T0 to 165
{IF NEWTOOL=1}M109 S205 T1; set T1, Heat T1 to T1 Temperature

Obviously you'll want to change a few things:

-Extruder temperatures for the materials you are using
-Different M-Code commands depending on the printer you have (this was based on a Wanhao Duplicator)
-Different X-Y location that is off of your part.

Additionally, you can create more temperature controllers on the Temperature tab and set them to 165C
T2= "Cool down" temp for extruder 0
T3= "Cool down" temp for extruder 1

and programatically set the "cool down" temp like this:

G1 X0 Y40 F4000 ; move to wait for temperatures
{IF NEWTOOL=0}M104 S[extruder3_temperature] T1; set T1, inactive extruder to 165 C
{IF NEWTOOL=0}M109 S[extruder0_temperature] T0; Set T0, new active extruder to T0 Temperature and wait for it to reach temperature before proceeding.
{IF NEWTOOL=1}M104 S[extruder2_temperature] T0; Cool T0 to 165
{IF NEWTOOL=1}M109 S[extruder1_temperature] T1; set T1, Heat T1 to T1 Temperature

Re: Toggle dual nozzle temps with tool change script?

Posted: Tue Sep 27, 2016 12:50 pm
by sreisig1
zemlin wrote:
blaknite7 wrote:you need something like this in the tool change script: ... .
Running my first test print with your tool change script.
Seems to be off to a good start! Thanks.
How did this go for you? I'm having the same issue with dual color prints with PLA.

Re: Toggle dual nozzle temps with tool change script?

Posted: Tue Sep 27, 2016 3:04 pm
by zemlin
sreisig1 wrote:How did this go for you? I'm having the same issue with dual color prints with PLA.
I'd say it was an 8 out of 10. I ran a few test parts with tweaks. I never got a CLEAN exterior - some little zits - and when the oozage on the idle nozzle cools it tries to wipe out the ooze shield.

Supported PETG material built on top of the PLA looked good, especially on simple flat supported surfaces. I tried a more complex part with large, curved supported areas and support on top of the part - the finished build didn't look any better than the straight ABS version.

Re: Toggle dual nozzle temps with tool change script?

Posted: Sun Dec 18, 2016 8:29 am
by Skimmy
Is there a list of all the available aliases and variables? I make heavy usage of this already and am questioning if there are more than just these few ones...