Quality 3D Printing Guide

latest update: 7/7/14

Here are some things I have learned in my quest to achieve high quality, reliable, attractive, and functional 3D prints.  I should say that I print with ABS exclusively, but most of what follows applies no matter what material you use.

First things first: you have to get the printer to work reliably enough to complete prints that you send to it.  A lot of big things can cause a print to fail (and I have experienced all the failure causes listed below):

Computer failure
You've probably experienced your computer unexpectedly shutting down (especially if you run Windows!).  Maybe you told your computer to go to sleep after 30 minutes of disuse, maybe it wants to automatically install a security band-aid and reboot itself, maybe you forgot to plug in the charger, maybe your cat stepped on the keyboard at the wrong time, maybe your cat likes to chew through wires, maybe you have a little kid in the house who gets into everything, etc.  The point is, computers will let you down.  3D prints take hours.  If you're going to use a computer to control your 3D printer, it has to run unattended for hours without fail.  Why take the chance?  Most 3D printers come with SD card readers standard or as an option.  Use it.  Doing so eliminates a big source of unreliability.  I ALWAYS print using gcode files stored on SD cards.

Power supply failure
After burning up two cheapo switching power supplies I replaced them with a transformer to power the printbed heater with AC (transformers are more reliable than power supplies) and the rest of the electronics with a linear regulated power supply (which should be more reliable than a switcher).  It's big and heavy, but it works reliably.

Extruder jamming
This has been a huge source of frustration for me, to the point where I even spent some time inventing what I hoped would be a more reliable extruder.  Most extruders use a motor driven gear with a pinch wheel to push the filament into the hot-end of the extruder.  If the hot-end jams (or the filament tangles on the spool) the gear will chew a divot into the filament and it will no longer be able to push the filament into the hot-end.  You have to use quality filament, keep it clean by proper storage, and set adequate tension on the pinch wheel that keeps the filament pressed against the drive gear, usually a screw that sets spring tension.  If you have filament jamming problems, try increasing the tension on the pinch wheel spring.

Running out of filament
There's no excuse fo running out of filament mid print.  Know how much filament your print will take and know how much is on the spool before you start printing. 
You can get the first bit using the gcode viewer gcode.ws.  The second part requires that you know how much the empty spool weighs and the weight the spool + filament before starting a print if there is any doubt about there being sufficient filament.  Different manufacturers use different spool designs, so weigh your empties and mark the weight on nonempty spools.  Octave spools in use at the time I wrote this guide weigh about 160 g and Coex3D spools weigh about 300 g:

octave spool mass: 157 g    coex3d spool mass: 303 g

Filament tangling on the spool
I haven't come up with a solution yet and it continues to be an occasional problem.

Prints coming unstuck from the printbed before they are complete
Prints break free of the printbed for a lot of reasons.  The bed should be flat, covered with a material such as Kapton, clean, level, the z-axis zero adjusted properly, and the right extruder and bed temperatures must be used.  The design of the part you are printing also contributes to whether it sticks reliably.

Flatness:  make sure your printbed is flat- you can check it with a steel ruler laid on edge on the heated bed and moved around to look for gaps between the ruler edge and the bed.  If the gaps are big enough for a piece of paper to fit between the ruler and the bed, your bed isn't flat enough and parts won't stick reliably.  I started with a glass plate and discovered that it wasn't flat enough.  I replaced it with a piece of cast aluminum tooling plate that is milled flat it works great.

Surface material- Kapton:  For whatever reason, molten ABS likes to stick to clean, hot Kapton tape.  When you apply the Kapton tape to the printbed, wet the surface of the bed with soapy water and put the tape down on the wet surface, pushing bubbles out with the edge of a credit card or similar flexible plastic tool.  You should be able to get almost all the bubbles out leaving a smooth surface for your prints.  You can get Kapton tape from many sources- I bought a roll through Amazon.com about 2 years ago and haven't used half of it yet.  Most of the kapton tape sold by the 3D printing and accessory companies is very thin and relatively fragile.  I use 5 mil thick tape that is very tough and seems to last a lot longer before needing replacement, mostly due to tears and cuts when trying to get a part to let go of the printbed.  5 mil tape is a little tricky to place- if you can find 3 mil tape  think it would be an idel combo of toughness and ease of placement.

Clean the bed surface:  while the printbed is at room temperature, wipe the Kapton surface with a clean cloth or paper towel with acetone before printing.  Avoid touching the printbed with bare hands and avoid setting potentially oily parts/tools on the bed when working on the machine.

Level the printbed and adjust the Z-axis zero point:  follow the procedure recommended by your printer manufacturer.  The bed will warp a little at print temperature and the extruder nozzle always has a little bit of hard plastic at the tip when the extruder is cold, therefore, always perform the procedure with the bed and extruder at print temperatures. 

Temperature settings:  I usually use 235C for the extruder temperature and 105C for the first layer bed temperature then drop to about 90C for the rest of the print.  Note- the temperatures reported by your printer are not necessarily accurate- you have to experiment to find the best temperature settings to use for the filament you are using.

Design of the printed part will be covered below.

Cable/wiring failures
Obviously, your power cords must be secure, if you insist on using a computer to drive your printer, the USB cable must be in good condition, and all wiring within the printer must be in good condition.  I had a failure occur where the print was going fine for most of each layer, but when the extruder got to certain locations (X/Y coordinates) the extruder would fail, then start working again when it got away from those places.  I quickly determined that the cabling to the extruder motor had failed, probably due to flexing too many times.  I replaced the cable to the extruder motor and repositioned the drag chain to increase the bending radius and the problem went away and has not returned.

Bad layout/slicing
Always check the gcode file before you print.  Use the gcode.ws viewer to look at each layer and make sure your part looks like you expect it to.  Unfortunately gcode.ws is limited to about 20MB max file size. 

Static discharge
I've had prints fail when I touched the controller and got a static spark due to dry winter air.  Ground your printer!

Controller failure
The controllers are generally pretty reliable except the parts that handle a lot of current such as the switches for the printbed heater and the motor drivers.  You can ensure their long life by adjusting the motor controllers for no more current than necessary to operate the motors and by keeping the controller cool.  That means if you build an enclosure for your printer, put the electronics outside the box, and maybe even use a fan to blow air over the boards.  Fans can be noisy and you don't need much air flow, so use a 24V fan connected to the 12V supply.  It should run slowly and quietly but will move plenty of air to keep the electronics cool.

Once the major failure points are under control, the finer points of print quality can be addressed.

Your printer must be rigid.  You want no uncontrolled motion of the extruder relative to the printbed.  That means the frame must be rigid, bearings that ride on guide rails must not have any slop, belt tensions must be adequate.  Add bracing as needed to make you printer as rigid as possible.

If you want a cube to be a cube and not a rhomboid, the axes of your machine must be set
accurately orthogonal to each other.  That specifically means the guide rails of all three axes must be orthogonal.  Tweaking the printbed leveling does not make up for axes that are not orthogonal.  Realistically, if you don't make very large prints, errors in orthogonality are unlikely to be a problem because printer resolution is relatively low and the errors due to the low resolution will mask errors in orthogonality.  That said, it isn't all that hard to get the axes aligned.  You can use a bubble level, but it is hard to read them accurately.  An electronic protractor is a better choice.  I use a DXL360 digital inclinometer that reads out in 1/50 of 1 degree increments (but is probably only accurate to a 1/10 of a degree or so) as well as mm/m.   Start by leveling the frame of the machine.  If it has feet to adjust, do it.  Next use the meter/level to check that the X and Y axes are in the same plane (they should both be level) and that each is orthogonal to the Z axis.  Checking that X and Y are orthogonal to each other is a little trickier and depends on the architecture of the machine you have.  Generally, if you measure opposite diagonals and they are the same, the axes are square.  You might have to make a jig to check the orthogonality of the X and Y axes.

Enclose your printer to help prevent delamination of large prints.  Enclosing the printer keeps the temperature inside the box and of the part being printed higher and this relieves some of the stresses caused by the cooling plastic shrinking.  You can use a corrugated board box or get more elaborate like I did:  http://www.thingiverse.com/thing:269586  Keeping the temperatuire inside the box at about 40C eliminates most of the delamination problems.  In my printer the printbed heater and extruder hot-end provide more than enough heat to maintain >40C in the box.

Calibrate your extruder.  Check these sites for procedures to use:  http://www.instructables.com/id/How-to-calibrate-the-Extruder-on-your-3d-Printer/

Know your filament.  Measure its diameter with a caliper at multiple places and orientations and average the measured values to arrive at the true diameter of the filament.  I like to get at least 20 measurements.  Enter the average value in the slicing software (I like Slic3r for the numerous tweaking options available).  Mark the value on the filament spool for future reference so if you change filaments you can just enter the previously determined number into Slic3r without measuring and calculating again.  Slic3r will let you save the specific filament settings so label the settings descriptively- if you have three spools of Coex3D 1.75mm Aqua ABS filament, mark each with a unique identifier like #1, #2, and #3, then store the Slic3r filament settings as "coex Aqua ABS #1" ,
"coex Aqua ABS #2", and "coex Aqua ABS #3" 

Clean and level the printbed and zero the Z-axis before EVERY critical print.
  Clean at room temperature and level and zero at print temperature.

Quality filament should be used.  I've tried several brands and colors of 1.75mm ABS and find that Coex3D's filaments are consistently high quality.  I also like Octave filament- especially their fluorescent colors.

Speed matters.  In general, the faster you print, the poorer the result.  Slow down.

Use thinner layers, especially if you're trying to print overhangs without support material.

Design your printed parts to be 3D printed:

The vertical dimension of your part should be set so that it will print with a whole number of layers.  If you print with a 0.25mm first layer and 0.2mm layer after that, the heights of vertical features (the top surface, for example) of your part must be a whole number of layers based on 0.25mm + X layers x 0.2mm.  For example, you can't print a 4.3mm high part with a 0.25mm first layer followed by 0.2mm layers and expect it to come out 4.3 mm high.  Either adjust your layer thickness when you slice or adjust the height of the part when you design it.  This applies to not just to the height of the part but also to other vertical features.  Try to locate them at whole number layer boundaries.

There's nothing wrong with support material per se, and many parts can't be printed without it, but it tends to mar the surface of the part when you remove it.  Try to minimize support material by figuring out how to design and orient the part on the printbed to minimize overhangs that would require support material to print.  Straight lines of plastic can be printed over free space as long as both ends are anchored, but you can't print curves or corners in free space. 

Careful orientation of the part on the printbed can minimize the support material on surfaces that will be visible.  Don't be afraid to design a part as multiple pieces that can be glued or snapped together.  Your smooth, flat printbed provides your prints with a very flat surface that is ideal for gluing.  For an example of this see my web cam to microscope adapters at Thingiverse (http://www.thingiverse.com/thing:191647 and http://www.thingiverse.com/thing:216821 ).  The original design required a lot of support material which resulted in an ugly finished part after the support material was removed.  The updated design was printed in two pieces and glued together and is MUCH prettier.

You can print overhangs without support material if they aren't too horizontal.  Using thinner layers lets you print overhangs that are closer to horizontal without using support material.  Slicer allows you to specify the thickness of the layers at arbitrary heights.  Get to know Slic3r!
  There's a pretty good explanation of the settings here: https://www.matterhackers.com/articles/mattercontrol-slice-settings-explained#supportmaterial

For parts that need to snap together, for example, a round peg that goes into a round hole, make the hole a few tenths of a mm larger diameter than the peg that will fit into it.  You'll have to experiment with your printer/extruder to see what works for you.  A good example of this technique can be seen in my SnakeBite extruder design here: http://www.thingiverse.com/thing:261037  The top and bottom covers snap tightly together and keep the two aligned so the bearings that fit inside are positioned properly.  The same principle was applied to the slots for the bearings.

Pay attention to the forces that will be applied to your printed object.  3D prints are not the same strength in all directions.  The layers will separate more easily than a part will break across the layers.  Try to design your part with that in mind.  If the force is tension, direct it along the length of the layers.  If the force is compression, direct it through the layers.  If the part is going to bend, bend across layers.

Sharp corners on boxes tend to lift off the printbed because the plastic coming out of the extruder shrinks as it cools.  This is the same problem that causes tall/large prints to delaminate.  The further away from the printbed the extruder is the more the plastic will shrink as the part is being printed.  Straight lines/smooth walls of boxes will concentrate the force from that shrinkage at the corners, pulling them up.  You can solve this problem by designing your parts with rounded instead of sharp corners, assuming that you have that freedom.  If you don't, print with a brim on the first layer that is 5-10mm wide- this even helps keep rounded corners from lifting.  Another way to prevent the corners lifting is to avoid smooth walls.  If you corrugate the walls the shrinkage force won't all get concentrated at the corners of the box.


email address graphic