Dual Extrusion Calibration using Slic3r
by doctek, published
As promised in http://www.thingiverse.com/thing:123609 showing my dual extruder in successful operation, and http://www.thingiverse.com/thing:124448 giving the Marlin code and showing how to set up Pronterface , here is a Thing for calibration of your dual extruder. The details of using Slic3r and OpenSCAD to create objects for dual extrusion are also presented here.
Credit goes to HanspeterH http://forums.reprap.org/read.php?267,21456 and Alessandro Ranellucci (alexrj) https://github.com/alexrj/Slic3r/wiki/Multiple-extruders for their explanations. I have merely filled in a few blanks and added a few (hopefully) helpful details and clarifications.
This concludes my work on the design of Jim's Flying Motor Mount Dual Extruder. All the pieces should be in place for others to build one and implement the firmware and procedures to use it successfully. Hopefully, others will extend this work to other printer designs and other controller boards.
Or maybe it's just the beginning...
I use Slic3r version 0.910b, and these instructions apply to that version. The following instructions apply to printing an object which is made with two different materials, two different colors of filament for example. The OpenSCAD process and the amf file creation, as explained below, are not necessary if all you need is a different support material.
Before we can slice an object for dual extrusion, we need to have a separate stl file for each section. The sections must have the same origin and orientation. One suggested approach is to create the object with OpenSCAD using two different colors to distinguish the two sections, then export each section separately as an stl. Look at the OpenSCAD file for an example.
Slic3r (I'm using version 0.9.10b) can handle a new format called amf ( http://en.wikipedia.org/wiki/Additive_Manufacturing_File_Format ) which represents different materials. Since OpenSCAD doesn't export this format, Slic3r conveniently includes the ability to make a file with that format starting with two stls. It is clearest to think of this as a stand-alone utility within Slic3r since it is unrelated to any other Slic3r functions. To use it, select Combine multi-material STL files from the File menu. Select the two files you want to combine. You can select them both at once or one at a time. When you have no more files to select, choose cancel to complete the step. Then choose a file name for the amf file. Do not change the file type Ã¢Â€Â“ leave it as .amf.xml. Note that the first file selected will be printed with the first extruder. Also note that you do not need to do this to use support material. The resulting .amf.xml file behaves like an stl file. It must be brought into the Slic3r Plater and sliced as described in a few paragraphs.
Parameters for dual extrusion are specified in three sections of Slic3r. Under the Multiple Extruders page of the Print Settings tab, Slic3r assigns extruders to applications. With two extruders, either may be assigned to print perimeters, infill, or support. Notice that the extruders are referred to by numbers 1 and 2, not 0 and 1. Don't worry, Slic3r generates the correct g-code.
Under the Printer Settings tab, first increment the Extruders value on the General page to 2. You should then have an Extruder Two page on which you can set up your second extruder. Set the Extruder Offset value to 0 in X and Y directions. These values will be adjusted as you calibrate. On the Custom G-code page, you may want to specify g-code that will turn off your extruders when the print is done. Put M104 T0 S0 in the End G-code section to set the target temperature of Extruder 1 to 0. Duplicate the line with T1 instead of T0 to do the same for Extruder 2. (Sorry about the confusing numbering Ã¢Â€Â“ no way around it.)
If that last bit was confusing, brace yourself for the Filament Settings tab! On this tab, we must use the Filament page to specify diameter and temperature settings for the filaments for the two extruders. But notice you have space to set up for only one extruder's filament! The answer is to create an individual configuration file with the applicable settings for each filament. Enter the values for one filament and notice that the modified flag appears on the name bar. Enter all the necessary values, then click the disk icon. Enter an identifying name for this configuration in the Save Preset file box, then click save. The names you enter will be available in the drop down menus. When you have created entries for all the filaments you want to use (at least two), then use the Export Config entry on the File menu to save all the entries.
Now it's time to use our Slic3r settings and our .amf.xml file to create the g-code file for printing. In Slic3r, on the Plater tab, locate the second Filament drop down block and find the entry for the filament used in your second extruder. You should end up with two configuration entries for your two filaments. Now use the Add... button to bring your .amf.xml file into the Plater. We'll start simple with just a single instance, so click Export g-code... to create the g-code file. You always have to use this method to re-slice, but you don't need to create a new .amf.xml version. IMPORTANT: It won't work to simply load an stl or .amf.xml file directly into Pronterface. You must use Slic3r to create the g-code file and load that.
Once the g-code file is created, you may want to view it with Repetier host. It uses two colors to show how the extrusion will be done with two extruders. This is extremely helpful when trying to check results from slicing experiments. It works for dual extrusions where a second extruder is used only for support material as well. The offset you specify for the extruders will separate the two sections. Keep that in mind as you view your part. If it looks OK, you can load it into Pronterface, and prepare to print in the usual manner. Be sure to load your g-code file, nothing else.
Wow! That seems like a hugely complicated process just to do a dual extrusion. But it's really not that bad after a little practice. For comparison, look back at ScribbleJ's original dual extrusion piece ( http://www.thingiverse.com/thing:6632 ). This is way simpler.
Now let's proceed to calibration. To calibrate your dual extruder, slice the object (as described above) with zero offset in the X and Y direction specified in Slic3r and print it. Measure the X and Y distance from any two points that should be conjunct and put the values in for the X and Y offsets, and go through the slicing process again. If either offset of the second nozzle from the first is nearer the origin, then the offset will be negative. I have a hard time getting this right the first time, but a quick test will tell you what the correct signs are.
The pictures show examples of my calibration steps. I measured the offsets from my first test (not shown since the two sections were far apart) and got the result in the first picture on the next try. Notice the small gap along one edge. I adjusted by 1mm and got the second result. I then adjusted again, but got the sign wrong yielding the third picture. The fourth picture shows the final result with a satisfactory calibration. My adjustments were as small as 0.3mm.
Liked ByView All
Give a Shout Out
Dual Extrusion Calibration using Slic3r by doctek is licensed under the Creative Commons - Attribution - Share Alike license.
What does this mean?
- You must attribute (give credit) to the creator of this Thing.
- You must distribute Remixes under the same license as the original.
- Remixing or Changing this Thing is allowed.
- Commercial use is allowed.
Show Some Love
Say thanks by giving doctek a tip and help them continue to share amazing Things with the Thingiverse community.Tip Designer
We're sure doctek would love to see what you've printed. Please document your print and share a Make with the community.
To post a Make simply visit this Thing again and click I Made One to start uploading your photo. It’s even easier to post a Make via the Thingiverse Mobile app (available via Google Play and Apple App Store).