Printing With Dual Extruders - My Early Lessons Learned

All things related to the Rostock MAX 3D Printer, the worlds FIRST Delta kit!
Post Reply
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Hello to all,

I have been working to align/calibrate my dual extruder Rostock MAX for several days. I have been using Cura 14.01 as my slicer for the test parts, and have been printing with black ABS and natural HIPS (used as a "dissolvable" support material). The part I have been using for tests is a small but complex thing, that includes many problematic features (overhangs, gapped end, internal small diameter hole, etc.).

I believe I am close to having routines developed that will allow me to print "A+" parts (right now I'm at about an "A-" to "A" level).

If others are interested I will be glad to write up my experience and include both Rostock MAX settings, the Cura configuration settings and a couple of photos.

Bill
"So many windmills, so little time." - Don Quixote
enggmaug
Printmaster!
Posts: 301
Joined: Wed Nov 13, 2013 3:54 am
Location: Antony, France

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by enggmaug »

Of course we are all very interrested !!
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Okay. I'll take a stab at writing this up in a manner that is useful to everyone. Please understand I don't pretend to have the answers. I am simply sharing my experience with dual hotend printing to date.

First, I modified my Rostock MAX for dual hotends using the simple adapter you will find here: http://www.thingiverse.com/thing:243270. This is a very simple adapter I designed that takes a lot of the guesswork out of aligning dual hotends (more on this later).

I have recently "upgraded" my stepper motor pulleys from the original 15 tooth design to the current 20 tooth design. On X, Y, and Z this leads to 80 steps per mm of movement compared to the original 106.666... steps per mm of the original pulleys. I think the original pulley "math" led to "rounding errors" that were transferred to the "looks" of printed items. I may be wrong but I believe it is easier to get good-looking prints with the 20 tooth pulleys. Or maybe its a "placebo effect." I dunno'.

I am still running Repetier Firmware 0.83seemeCNC. It has worked well for me so I have not upgraded.

I am using Cura 14.01 as my preferred slicer as I learn to use dual hotends. I also use it when I am using a single hotend. If you want to follow along with the following discussion you might go ahead and download Cura from this link: https://www.ultimaker.com/pages/our-software.

To follow along with this example and use Cura to slice the model (see below) you will need to create a dual hotend machine in Cura. Here are the settings for my Rostock MAX:
Dual Head Machine Settings.jpg
After you create your dual hotend machine in Cura download the following .stl file and load it in Cura.
Adjustable Socket.stl
(322.45 KiB) Downloaded 623 times
Next you will want to download the "Tweak-At-Z" plug-in I use with this file. Download or copy the "3.1" version of the plug-in from this site: http://wiki.ultimaker.com/CuraPlugin:_TweaktAtZ. Copy the plug-in to the plugins folder in Cura (in Windows that's Program Files > Cura_14.01 > Cura > plugins).

The next thing to do is to adjust all of the default settings in Cura to match the ones I am using. Here's the easy way to do that - download the following "profile" and save it somewhere on your computer (it is a Windows file - I don't use my Macs for printing. Sorry!).
Dual_Head_Socket_.50_Nozzles.ini
(4.97 KiB) Downloaded 623 times
Under the "File" menu in Cura choose "Open profile..." and load the .ini file you just downloaded on your computer. Now you have all of the settings set just the way I sliced and printed the .stl file, above.

If you are watching carefully you will notice that Cura "re-slices" the file every time you change any of the settings in the "profile." So, it has already sliced the .stl file as you loaded it. Click on the "View Mode" icon in the upper right corner of the Cura window and move your mouse down to the "Layers" icon. Select it and Cura will display all of the layers in the gcode it has developed. Use the slider in the lower right corner of the Cura window to inspect the layers. You'll notice there is no support material plotted. (That's the whole purpose of this exercise!)

Click on the "View Mode" icon again and this time click on the "Normal" view icon. Then click on the model in the middle of the build area. When you do that a set of icons will appear in the lower left corner of the build area. Select the "Rotate" icon and a set of "gumball" circles will appear centered on the three axes of the model (the X, Y, and Z axes). Click and drag the Y axis circle and rotate the model clockwise 90°. Here is an image of this technique in process:
Rotating On Y Axis.jpg
As soon as you release your mouse button Cura will "re-slice" the model. Use the View Mode > Layers icon to view the layers of the re-oriented model. You'll see support material generated on several of the layers.

The most troublesome layers of this model are the transition from Layer 30 to Layer 31. Layer 31 presents a huge unsupported overhang (over the horizontal cylinder in the middle of the model). I have not found a way to "force" Cura to build support in that area. So, I have attempted to use the "Plug-Ins" feature of Cura to adjust both print speed and temperature as these layers are printed (see the Plug-Ins Tab in the Cura window to see some of the settings that change as the print runs). Here are screen shots of layers 30 and 31.
Layer 30.jpg
Layer 31.jpg
You will notice I am using the "Prime and Wipe Tower" in Cura. The name of this feature says it all; when it is an extruder's time to print it first puts down a layer on the top of this tower (it primes the extruder) and then the gcode "drags" both extruders over the surface of the tower (or vice versa - heck, I'm tired and confused). This wiping removes "drool" from the extruder that has been "turned off" and cleans the tip of the extruder that is about to print. After the extruder primes the gcode "hurries" the active extruder to its starting point and it lays down its print layer.

I will quit here and let you study and/or explore what I have done thus far. But first, let me say that the HIPS I am using for support material is interesting stuff. It doesn't "drool" much; ABS drools like crazy! So HIPS seems to be a great choice for two extruder prints where support material is needed but is not laid down frequently.

If you see things I might improve please let me know.

More later.

Bill
Last edited by Bill Havins on Tue Feb 18, 2014 11:57 pm, edited 1 time in total.
"So many windmills, so little time." - Don Quixote
User avatar
Eaglezsoar
ULTIMATE 3D JEDI
Posts: 7159
Joined: Sun Apr 01, 2012 5:26 pm

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Eaglezsoar »

Thank you, Bill!
This is the kind of information we need and the time it took you to learn it and type it here so that we all
will learn is much appreciated by us all. Thanks for sharing your knowledge.
User avatar
mhackney
ULTIMATE 3D JEDI
Posts: 5391
Joined: Mon Mar 26, 2012 4:15 pm
Location: MA, USA
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by mhackney »

I concur, thank you Bill. And we thought 3D printing was the wild west, multi-extruder printing is like the remote outpost of the wild west!

Sublime Layers - my blog on Musings and Experiments in 3D Printing Technology and Art

Start Here:
A Strategy for Successful (and Great) Prints

Strategies for Resolving Print Artifacts

The Eclectic Angler
User avatar
DavidF
Printmaster!
Posts: 779
Joined: Thu Aug 29, 2013 12:12 pm
Location: Delaware

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by DavidF »

Well after reading this post I have decided its time to order another E3D hot end :D
http://www.youtube.com/user/aonemarine" onclick="window.open(this.href);return false;
Lost pla castings? see me
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Thanks for your thoughts, guys. This Rostock MAX thing continues to be an adventure.

Moving on with what I have posted so far, it is important to note I call the left hotend "Extruder 1" and the right hotend "Extruder 2." Take a look at the image that shows my "Machine Settings," above. The only thing really "new" there is the Extruder 2 "offsets." In Cura it is expected that Extruder 1 is located at 0,0. There's no way around it. So all of the offset has to be attributed to Extruder 2. No big deal.

When I designed my dual hotend mounting plate I set the centers of the hotends mounting holes 25mm apart. I expected to have to "ooch" the offset a little, and the reality is reflected in my Extruder 2 offset entries, above. So my hotends are actually 25.1mm apart, and Extruder 2 is located some .3mm below the vertical plane of Extruder 1 (i.e., "-.3mm"). That's a "mounting error" of about .004" on the X axis and .012" on the Y axis. I can live with that.

IIRC there are spots for offsets for both extruders when you indicate you are using two extruders in Slic3r. But the entries must have positive values; negative values will crash the program (ask me how I know). To achieve a set of offsets like mine in Slic3r it is necessary to set the Extruder 1 offsets to "0" on X and ".3" on Y. The offsets on Extruder 2 would need to be set to "25.1" on X and "0" on Y. That achieves the correction seen in my Cura settings without using a negative number. But it moves Extruder 1 off of 0,0 (aw, shucks!).

More later.

Bill
"So many windmills, so little time." - Don Quixote
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Here's a big issue that has to be managed with dual extruder printing, "drool." Yep, drool.

If you have ever printed with ABS and left a heated extruder "idling" you have seen how the ABS slowly "oozes" out the end of the nozzle. When you are printing with two extruders this ooze or 'drool" thing really makes a mess - strings of extruded filament get stuck all over your model as the hotends move about; drool from one hotend can contaminate a print layer put down by the other.

So far I have managed drool with two techniques included in Cura - retraction (not a really new thing) and the "Wipe & Prime Tower."

If you have set up a dual extruder machine in Cura and have loaded my sample profile (above) click on the "Advanced" tab. The second category of settings on that tab is "Retraction." The first entry under that heading is "Speed" (mine is set to 15) and the second is "Distance" (set to 4.5). These are not that unusual for printing with ABS.

The third entry under the "Retraction" heading is new; it is labeled "Dual extrusion switch amount." In my settings this is set to 16mm. That's quite a retraction (a big suck!).

The "Dual extrusion switch amount" appears to attempt to limit drool by removing all of the pressure inside the cavity of the hotend; indeed it may even pull a vacuum. This limits the amount of molten filament that might leak out the end of the nozzle while the hotend is not printing. But it's not perfect.

To make things better, Cura includes the "Wipe & Prime Tower." I mentioned this in my first post. But there is a little more detail you might need. Here's where you'll find it. Under the "Expert" menu, click on "Open expert settings..." That opens the "Expert Configuration Settings." The first category listed in that window is "Dual Extrusion" and it includes a single entry, "Wipe & prime tower volume per layer (mm3)." This number must be set high enough to completely prime an extruder after the "Dual extruder switch amount" retraction, above. In my example I set the "Wipe & prime tower volume per layer" to 20. This seems to completely prime an extruder after it has been idling.

Okay. Enough of this. I'll be glad to try to answer any questions others may have about using Cura to print with dual extruders on a Rostock MAX. But please remember, there is a lot I don't know. We are going to have to make up a lot of this as we work at printing with dual extruders, and the only way to do that is through "informed" trial and error.

Cheers!

Bill
"So many windmills, so little time." - Don Quixote
User avatar
DavidF
Printmaster!
Posts: 779
Joined: Thu Aug 29, 2013 12:12 pm
Location: Delaware

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by DavidF »

ok so I down loaded cura 14.01 and threw this file at it http://www.thingiverse.com/thing:244578
support every where, .1 mm layer... Holy Crap!!! :D
http://www.youtube.com/user/aonemarine" onclick="window.open(this.href);return false;
Lost pla castings? see me
enggmaug
Printmaster!
Posts: 301
Joined: Wed Nov 13, 2013 3:54 am
Location: Antony, France

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by enggmaug »

thanks Bill.

I don't have dual extruder yet, but I'll follow this thread with interrest.
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Now that I have slept I remembered there is a big problem using Cura 14.01 with a Rostock MAX (well, really with Repetier Firmware). MSURunner covers the issue in this thread: http://forum.seemecnc.com/viewtopic.php ... ock#p27290.

The Cura Engine is written such that it is easy to share configuration files (or "Profiles" as they call them). These are all of the settings used to print a specific file. The Cura Engine (I think I'm saying this correctly) embeds all of these profile entries as a one-line comment on the last line of the gcode file. It is a very, very, very long line of code and Repetier Firmware doesn't know what to do with it - your Rostock MAX will hang up; I don't remember if it leaves the print nozzle on/in the print, but it gave me the "heebies" when it first happened.

MSURunner may have developed a solution for this (I haven't tried his fix). I simply go into the GCode editor in Repetier Host, delete the last line (the long comment) from the gcode, save the file, and go on with my printing. If I'm tired and forget to delete the last line of code...

So much to learn!
"So many windmills, so little time." - Don Quixote
geneb
ULTIMATE 3D JEDI
Posts: 5358
Joined: Mon Oct 15, 2012 12:47 pm
Location: Graham, WA
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by geneb »

Bill, are you using 0.95F of Repetier-Host? I ran a file the other day that was sliced with Cura and it finished without issue.

Maybe you're just missing a G28 in the end.code block?

g.
Delta Power!
Defeat the Cartesian Agenda!
http://www.f15sim.com - 80-0007, The only one of its kind.
http://geneb.simpits.org - Technical and Simulator Projects
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Hi, Gene.

Yes, I'm running RH 0.95F (e-i-e-i-o :D ). Version numbers make me a little crazy.

It's not a missing G28. It's that long profile comment stored as the last line of the gcode.

Daid just released a beta of Cura 14.02 (e-i-e-i-o) yesterday(?). And there is some mention of "fixes" that I scanned a few moments ago; I "think" I saw this specific issue addressed.

The beta release also includes specific delta-bot configurations (yippee!). After I have a little more coffee I'm going to dive into it. Well, I have to get a print job sliced and on the SD card, and then I have to work in Rhino for about six hours, and then... But I AM going to dive into it some time in the next 24 hours.

Thanks!

Bill
"So many windmills, so little time." - Don Quixote
User avatar
MSURunner
Printmaster!
Posts: 200
Joined: Thu Jan 03, 2013 1:28 pm

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by MSURunner »

Bill Havins wrote:Now that I have slept I remembered there is a big problem using Cura 14.01 with a Rostock MAX (well, really with Repetier Firmware). MSURunner covers the issue in this thread: http://forum.seemecnc.com/viewtopic.php ... ock#p27290.

The Cura Engine is written such that it is easy to share configuration files (or "Profiles" as they call them). These are all of the settings used to print a specific file. The Cura Engine (I think I'm saying this correctly) embeds all of these profile entries as a one-line comment on the last line of the gcode file. It is a very, very, very long line of code and Repetier Firmware doesn't know what to do with it - your Rostock MAX will hang up; I don't remember if it leaves the print nozzle on/in the print, but it gave me the "heebies" when it first happened.

MSURunner may have developed a solution for this (I haven't tried his fix). I simply go into the GCode editor in Repetier Host, delete the last line (the long comment) from the gcode, save the file, and go on with my printing. If I'm tired and forget to delete the last line of code...

So much to learn!

That wasn't working for some strange reason on my machine, but I did go through and generate a patch for Windows based Cura that seems to take care of the problem by replacing the LOOOOONG profile string with a blank string (that way Cura's not freaking out when trying to slice and generate strings).
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Here's an interesting and important tidbit of information. When you install dual hotends on a Rostock MAX you effectively reduce the printable area of your build plate. We are used to typing in a radius of 190mm, or a build plate that is 280 X 280 (depending on the slicer). And then we go on and generate gcode that prints in this 280mm diameter.

I haven't tried to calculate the "new" build area when two hotends are installed side-by-side in a Rostock MAX. But I "think" we're giving up a minimum of 25mm of the diameter. So the "new diameter is about 255mm; it is probably better to call it 250mm just to be safe.

A moment ago I was printing (with my build plate set with a 280mm diameter) and the gcode pushed my #1 hotend outside the 280mm diameter (it was trying to print near the outer limits of the diameter with the #2 hotend). We all know what happens when the gcode forces such a move - SLAP! My Y axis bearing set fell to the bottom of the tower! I quickly stopped the print and all is well with my Rostock MAX (but not with the print).

The lesson learned here is the printable diameter is reduced when dual hotends are mounted side-by-side.

More later.

Bill
"So many windmills, so little time." - Don Quixote
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Oops! I misinterpreted what happened to my Rostock MAX in my post immediately above. I was trying the beta version of Cura 14.02 and the slicer is generating travel moves that want to take the hotend well off of the build plate. Look at the 4th line in this code snippet:

G1 F420 X-96.56 Y7.33 E15.61459
G1 F900 E11.11459
G1 Z0.80
G0 F7200 X-6493.01 Y-6289.32
G0 X-82.10 Y-31.31
G1 Z0.30
G1 F900 E15.61459
G1 F420 X-82.10 Y-21.88 E16.32066

Can't go there! So, Cura 14.02 may not be ready for "prime time." I've posted a "bug" on the Cura support forum. Back to Cura 14.01.

Bill
"So many windmills, so little time." - Don Quixote
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Daid has published Cura 14.02_RC4. The erroneous moves noted in my above post have been corrected. There are many features in this beta version that have great promise. You can find Cura 14.02_RC4 in a post on the Ultimaker User Forum (http://umforum.ultimaker.com/index.php?/page/index.html). Join the forum to get access to the beta version of Cura 14.02.

Bill
"So many windmills, so little time." - Don Quixote
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

Daid has posted Cura 14.02_RC5. This appears to solve a number of Mac build problems. It appears to be working well on my Windows 7 machine.

Bill
"So many windmills, so little time." - Don Quixote
cjdavis618
Printmaster!
Posts: 78
Joined: Mon Feb 18, 2013 4:08 pm

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by cjdavis618 »

Speaking of Cura,

I had beed using Slic3r but decided to try it. Immediately better prints but there are problems. I was running 14.01 but tried 14.02 RC05 after a bug was found. (If you set your machine to reprap, then add a makerbot also, all gcode flavors after that are makerbot and added to evey gcode, regardless of what machines you choose or if you delete the makerbot.)

In the gcode, it adds that profile data, which when I remove it doesn't cause any problems and my last "end gcode" is a g28. But at random times, after the prints are finished, the printer goes nuts and slams the head down on the prints, and then other times will move to g28, disable steppers, and shut down properly. If I leave the printer on overnight (not printing, and I know this is bad to do) it will randomly run the head back down on the plate at the bed. I think there is something in the code that is being interpreted, run after the code ends. I know it isn't just the machine dropping the effector to the part, because with my machine off, they stay put and don't fall on their own. Something is causing the motors to slam the head down long after the print is finished and the gcode has been run. It happens even if the usb cable is unplugged.

The last time was last night. It was on a 5 hour print job of a scaled up saturn v rocket tip. It destroyed my print by melting the part onto the hotend and ripped the hotend thermistor and one heating element lead out of the end. Unless the effector was powered this couldn't have happened. (On the other hand, the rest of the print was perfect.. lol)
20140304_095119.jpg
I love Cura for the simplicity and so far it just works for me. But the "Profile extra" and the random slamming is about to end it for me. I never had that problem with Slic3r, just not as good print quality.

The profile code looks like this at the end for those that want to see what I am talking about:

;End GCode
M104 S0 ;extruder heater off
M140 S0 ;heated bed heater off (if you have it)
G28
M84 ;steppers off

(well, tried to post it but it breaks the site formatting too.. Good grief.)
cura.jpg
Last edited by cjdavis618 on Tue Mar 04, 2014 2:37 pm, edited 1 time in total.
Bill Havins
Printmaster!
Posts: 88
Joined: Sun Mar 03, 2013 6:46 pm
Location: Abilene, Texas
Contact:

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by Bill Havins »

cjdavis618,

I must "retract" my endorsement of Cura 14.02_RC5. It still has many bugs in it that have yet to be worked out. Cura 14.01 is a stable performer (once you remove the last line from the g-code). But the bugs in RC5 make it too scary! Don't use it...yet.

I have just completed a new PC build based on Windows 7 64-bit and have seen quite a change in the behavior of RC5. Daid is still working on the problems.

Cheers!

Bill
"So many windmills, so little time." - Don Quixote
cjdavis618
Printmaster!
Posts: 78
Joined: Mon Feb 18, 2013 4:08 pm

Re: Printing With Dual Extruders - My Early Lessons Learned

Post by cjdavis618 »

Agreed, but it prints so well in comparison. I think I am still going to use it, but make some changes to the code so after the print is done, an emergency reset is triggered to clear out the rambo. The option to add or remove that profile code needs to be in the program. I haven't found a way to automatically remove it as code is posted. I have been editing manually.


I have new parts on the way to fix this and I was already printing parts to go dual extruder. So now that it is apart, why not. :D

With the info you have provided (Which is greatly appreciated) i see no reason not to join the fun.
Post Reply

Return to “Rostock MAX”