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
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
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
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
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:
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.
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.
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
I've had prints fail when I touched the controller and got a static spark due to dry winter air. Ground your printer!
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
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
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:
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
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.