.1mm Printing

I have been trying to work out how best to print small figures at a .1mm layer height.  This presents two challenges, which are settings for low layer heights (not hard) and cooling for small layers (a bit more challenging).

The default layer height for the Solidoodle 2 is .3mm, which is fine for most things and gives reliable results with the standard settings.  If you want a smoother surface finish, then .1mm layers is worth pursuing.  Even if you are planning to sand, smooth, or otherwise post process your prints, a .1 surface makes it easier, since it is that much closer to smooth to begin with.  Brushing with acetone helps create an even finish, but in my experience you still need to sand down the layers quite a bit first, otherwise you just get glossy layers.  I’m hoping that with .1mm layers, a careful application of acetone can create a smooth finish without needing to sand first.

In Skeinforge, set the layer height under the Carve tab to .1.  The width of the thread is set as a ratio to the layer height, with a default of 1.4.  With .3mm layers, this gives a thread width of .42mm.  The thread width shouldn’t be much less than the width of the nozzle, and if we leave this setting alone it will try to extrude .14mm threads which is too small.  Change this to 4.2 so that the thread width stays at .42mm.  With the layer height pushed down to .1mm, the threads will be even flatter, which means more surface contact between layers which is a good thing.

In Slic3r, the layer height is the first thing under Print Settings.  Set that to .1, and set First Layer Height to .3. This is a good feature, because it can be a little tough to get the first layer to print right at .1mm.   The threaded rod that drives the Z axis has a backlash of .18mm, which means that when it changes direction after homing, it will need to turn .18mm before the bed will move.  This is almost two layers that it will try to print before the bed drops.  Printing the first layer at .3mm helps even everything out and provide a good base to begin printing at high resolution.  Skeinforge doesn’t have this feature, but it might be worth printing a raft and interface layer for the same reason.

In Slic3r, you set the extrusion width under the Advanced settings in the Print Settings tab. If you leave the fields blank, it will calculate this automatically.  I don’t know what it’s target for this is, and I’m sure it’s fine, but I like to set those fields manually to .42.

Another good feature that Slic3r has is “Infill Every X Layers”.  You want the perimeter layers to be .1mm tall for a smooth finish, but there is no reason to print the infill at a high resolution.  If you set this to 3, then it will do 3 layers of .1mm perimeters, and then print .3mm thick infill.  This helps mitigate the fact that a .1mm print will otherwise take 3x as long as a .3mm print.

Shorter layers means reduced flow, and how you set this depends on the slicer you use.  In Skeinforge, you need to cut the Flow Rate by 1/3, to .7 since the layers are 1/3 the size of the default .3mm .  If you are using Slic3r, the flow rate gets calculated automatically so no change is needed.  Since the flow rates are so small, and small changes are more noticeable, I recommend calibrating the extruder and getting the Extrusion Multiplier dialed in at .3mm layers before trying .1mm.

If you are printing at .1mm because you want to do something like small figurines, toys, miniatures, etc. then cooling becomes important.  A layer might be very small because it contains only the cross sections of a couple of legs, for example.  It takes so little time to print that layer that it will still be soft when the next layer gets printed on top of it.  The plastic will push it around so it ends up in the wrong place, creating blobs and lines on the surface.

It is especially problematic where there is some overhang and the thread isn’t completely supported and can easily get pushed over the edge.

The simplest way to handle cooling is to turn on the Cool tab in Skeinforge, or activate cooling inte Filament Settings tab in Slic3r.  Both have a setting for minimum layer time, which you can set to something low like 20 seconds.  If a layer would otherwise take less time than this to print, the feed rate will slow down to give the plastic more time to cool before the next layer starts.

This isn’t ideal, because the nozzle is still in contact with the layer, radiating heat around it.  Also the plastic extruded at the beginning of the layer gets more cooling, since as soon as the end of the layer gets finished, the next layer begins.  Hopefully the last plastic extruded will get some more time to cool before the nozzle slowly makes it over the top of it again.

The other cooling method available in Skeinforge is orbit.  In this case the layer will get printed at full speed, and then the extruder will run around over open space for awhile, killing time while waiting for the plastic to cool.  Then it will come back and print the next layer.  Unfortunately it will also be oozing while it does this, and that extra plastic will get stuck on the outside of the print when the nozzle comes back.

Both of these methods add a lot of extra time to the overall print.  Another strategy is to print several models at the same time so that no layer ever gets small enough for this to be a problem.  This can work well, but it can cause some problems with the surface finish.  Sometimes there are strings where the nozzle leaves one object to go to another, and sometimes there are loops where oozing plastic got wiped off on its way back.  If you try this, you will want your retraction settings to be dialed in as good as you can get.

Retraction pulls the filament back to prevent oozing while the nozzle moves between extrusions.  An easy way to check retraction is to print something like 2-4 columns spaced a few centimeters apart.  Adjust retraction distance or retraction speed and watch the amount of stringing that happens between columns.

If you are using support in your print, it has the added advantage of taking up extra time, so those small layers can cool while the support gets printed.  Figuring out the best settings for support would be another blog post.

The last way to cool is with a fan.  It has the advantage of not adding to the print time.  There are some disadvantages however.  If you set a fan up in front to blow over the whole print, it can cool the bed enough to make it come unstuck.  A fan duct that delivers air to a ring around the nozzle helps with that since you can use a small fan with less airflow delivered directly to the filament as it is extruded.

I created a duct that will do this, but the clearance to the hot end was too close and it melted.  I will post an STL once I get that fixed.

That can work really well for getting a layer rigid before the next layer is printed on top of it, but it also makes for a weaker print.  The hotter the plastic is, the better it bonds.  I tried printing at 190C with a fan, figuring that it would need less cooling to reach a solid state.  It worked well, but created legs that snapped with slight effort.  I need to test printing hotter, perhaps at 200C and seeing if the fan can cool it enough.  The answer may be a combination of a fan and slow-down cooling.

The Sanguinololu board can’t control the fan directly, so it needs to be on all the time, whether cooling is required or not.  I took the wall wart from a dead router I had laying around, and soldered a connector to its wires so it could power a 40mm computer fan.  The only control for it is plugging or unplugging it.  There is a hack that can be added with some effort however that will allow a fan to be controlled with gcode.  Then it could be run only when cooling is needed for small layers and not compromise the strength of the rest of the part.

Here are a few more shots of a .1mm print of my Robot Chess King.  I didn’t use any support, and there are several areas that needed it, resulting in some dropped loops.  Also my retraction settings need a little tweaking to prevent stringing between the legs.



One issue I am having is with Z wobble.  My printer has an ABS coupling that connects the threaded Z rod to the motor at the bottom.  It isn’t straight, and causes the rod to wobble a little, which pushes on the Z platform as it turns.  This created the pattern of ridges you see on the robot’s back which corresponds to the threads in the rod.  It is only visible on the section that slopes outward.  You don’t really see it in the straight sides of the head, and it doesn’t show at all when printed at .3mm.   .1mm layers really tests the printer and and can reveal problems that are otherwise very slight.

Solidoodle recognized this problem and changed the design.  The threaded rods now have a hole drilled into the bottom so that they can slide directly onto the motor’s shaft, and only the earliest shipped printers have the coupling.



9 thoughts on “.1mm Printing

  1. Ian, I mentioned this on the other forum, but; have you run into issues with overhanging perimeters cooling too fast and warping upwards? That is why I mentioned that it may be more beneficial to have the case and door so that the upper layers of prints don’t cool too fast since the temp in the z direction would be more constant. I will be interested to experiment with different methods of controlling temps locally inside the printer once my case and door come. I also think that wiping the bed with acetone directly before a print where the fan cools the bed to 70-80* avoids or at least improves needing to deal with the print coming up at the base. Unfortunately it makes it much tougher to get the print up upon completion… I’m still experimenting to find the best way to remove prints that are well stuck with multiple fragile points on the bed.

    • I have seen that, and ironically it sometimes happens on layers that otherwise need to be cooled. A warm chamber would help, even if you could get it up to 60C with a heater of some kind. I wonder if there could be a way to channel air from a heat gun to a duct without melting anything along the way. The plastic doesn’t need to be cooled to ambient, ideally it would be quickly cooled to something just under the transition point which would involve blowing hot air. The hot air could be from another source, or from an elevated ambient temperature. The plastic is already going to cool, the whole point is throwing some convection in there.

      If I ever get a case, something that might be worth looking into is a heating sheet like one of these- http://www.mcmaster.com/#heat-blankets/=j5egk2 I’m not sure how to control the temperature though. You would’t want it to get above abut 60C in there to avoid softening the acrylic extruder.

      As alternative to acetone, you would try some watered down PVA glue (Elmer’s ). Apparently the cube uses something like that, and it can be washed off with water.

      • I am also patiently waiting for my door and case 🙂 I have been working on a convection system that will utilize the filament hole in the back with some ducting, forced airflow, and venting. The calculations to control the internal temperature are pretty easy since you know your 2 heat sources, their surface areas, and volume of the cube. I looked at those heating sheets, but it seems like with the door and case, we will have plenty of heat provided to accomplish a 60 C internal temp, you will just have to let it heat up for a little bit before starting the print. It sounds like around 60 C is the temp we should be shooting for?

  2. Ian,
    I wonder if you could use the “layer g-code” feature in Slic3r to implement a custom cooling routine (composed of g-codes) that would execute each time a layer is finished.

    Maybe the layer g-code in slic3r could be something like:

    1) Lower bed (keeps extruder away from print while layer is cooling)
    2) retract filament slightly (stops oozing)
    3) Raise bed (inverse of (1))
    4) move filament forward slightly (inverse of (2))

    Probably would need to sacrifice some print time with that option but may be more effective/accurate than minimum layer time feature.

    Or if we had fan (and fan control), layer gcode could turn fan on/off intermittently for custom cooling after each layer

    The amount of time needed to cool a layer (without a fan) should be a function of the extruder temp (which is roughly equal to the temp of the filament leaving the nozzle) , the flow rate, the feed rate, and the distance traveled for the layer. Right? Given that slic3r has all that, maybe it could implement a smarter cooling algorithm for each layer than just “minimum layer time”.

    How are .1mm prints for large objects? Do they suffer the same problems?

  3. I get that z wobble even at .3mm prints. I noticed last night it has the same spacing as the z axis screw.
    I’ve got one of the newer units that has the drilled threaded rod. I’m not sure if I’ll be able to do anything about it.

    • Can you see the rod wobble, especially when the bed is near the bottom? Can you see any side to side movement of the rod while looking through the gap at the back of the carriage?

      When my carriage is all the way down, the top of the rod wobbles as much as 1/8″ at the top. I was hoping the drilled rod would straighten that out.

  4. Does the new rod setup still have a black coupling or was that done away with completely? I only ask because my unit is in the 500s and still has the coupling. I do have a bit of a wobble problem, but nothing really serious.

    • I don’t know why yours would have the coupling. I’ve seen photos of printers with lower serial numbers that don’t have it. It’s possible that they ran out of drilled rods and had to switch back to couplings to keep the printers shipping.

  5. Pingback: 0.10mm Prints | From The Heated Platform Up

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s