Tag Archives: 3D printing

What is Fused Deposition Modeling (FDM) or Fused Filament Fabrication (FFF) ?

Fused Deposition Modeling (FDM) is an additive manufacturing technology commonly used for modeling, prototyping, and production applications.

FDM works on an “additive” principle by laying down material in layers; a plastic filament or metal wire is unwound from a coil and supplies material to produce a part.

The technology was developed by S. Scott Crump in the late 1980s and was commercialized in 1990.[1]

The term fused deposition modeling and its abbreviation to FDM are trademarked by Stratasys Inc. The exactly equivalent term, fused filament fabrication (FFF), was coined by the members of the RepRap project to give a phrase that would be legally unconstrained in its use.


FDM begins with a software process which processes an STL file (stereolithography file format), mathematically slicing and orienting the model for the build process. If required, support structures may be generated. The machine may dispense multiple materials to achieve different goals: For example, one material may build up the model and another may be used as a soluble support structure.[2] For another example, multiple colors of the same type of thermoplastic may be laid down on the same model.

The thermoplastics are heated past their glass transition temperature and are then deposited by an extrusion head, which follows a tool-path defined by CAM software, and the part is built from the bottom up, one layer at a time. A plastic filament or metal wire is unwound from a coil and supplies material to an extrusion nozzle which can turn the flow on and off. The nozzle is heated to melt the material and can be moved in both horizontal and vertical directions by a numerically controlled mechanism, directly controlled by a computer-aided manufacturing (CAM) software package. The model or part is produced by extruding small beads of thermoplastic material to form layers as the material hardens immediately after extrusion from the nozzle. Stepper motors or servo motors are typically employed to move the extrusion head.

Although as a printing technology FDM is very flexible, and it is capable of dealing with small overhangs by the support from lower layers, FDM generally has some restrictions on the slope of the overhang.

Myriad materials are available, such as ABSPLA, polycarbonate, polyamides, polystyrene, lignin, among many others, with different trade-offs between strength and temperature properties.

Commercial applications

FDM, a prominent form of rapid prototyping, is used for prototyping and rapid manufacturing. Rapid prototyping facilitates iterative testing, and for very short runs, rapid manufacturing can be a relatively inexpensive alternative.[3]

FDM uses the thermoplastics ABS, ABSi, polyphenylsulfone (PPSF), polycarbonate (PC), and Ultem 9085, among others. These materials are used for their heat resistance properties. Ultem 9085 also exhibits fire retardancy making it suitable for aerospace and aviation applications.

FDM is also used in prototyping scaffolds for medical tissue engineering applications.[4]

3D Printing in the Classroom

Interview with Dana Foster: 3D Printing In Education

3D Printing in education is going to be one of the key catalysts to renewing manufacturing in The West. It is literally that important. Something that even politicians are beginning to realise. With this in mind, upon hearing that Dana Foster, Marketer for rp+m and 3D printing evangelist had recent experiences with 3D printing in the classroom, an interview seemed like an opportunity for an educational experience in itself.

3DPI: Hi Dana. As a 3D Printing Marketer you also have experience with children and 3D printing in the classroom. What age group were you talking to?

As a volunteer of Junior Achievement, I was selected to teach a 3rd grade classroom once a week for five consecutive weeks. I had the opportunity to not only teach 3rd grade students about business concepts, but I also introduced my company to them so they could learn about manufacturing and 3D printing.  I have also had several opportunities to attend high school and middle school classes with one of rp+m’s engineers to help introduce 3D printing and how the information they are learning in the classroom can be applied.

3D Prining in Education

3DPI: Children in industrialised countries gain lucidity with technology very quickly in this digitally saturated days: was there a thirst for the technology?

Students were absolutely engaged in our discussions.  The 3rd graders wanted to know if different objects in the classroom were made using our technology (injection moulding and 3D printing).  As for the high school and middle school students, they wanted to use their design software more, so they could print their own parts.  According to the teachers, students were coming into school early, staying late and asking to come into the classroom during their study halls.  The teachers said this never happens! 

3DPI: How did you communicate the way additive processes work?

For the 3rd graders, I described the process as you can create your own 3D model on a computer, such as an iPhone cover (Yes- 3rd graders know everything about iPhones, iPads, etc), send the file to the magnificent 3D printers and the 3D Printer will read the file and start printing your part.  There were a lot of questions if it’s similar to a computer printer and I would answer “Yes, very similar, however instead of 2D, the part comes out as an iPhone cover, so you can touch and feel it. 

3DPI: Was there an onus upon particular types of 3D printing such as FDM or SLS?

I would not say there was an onus, however, when we brought in parts to show or the actual 3D printers themselves (middle school and high school classes), they were FDM and Objet.  At the time, those were the two 3D printing processes we had in-house. Although, now we have also expanded into metal machines — but these are not so easily transportable. 

3DPI: Did you have props such as 3D printed items, or a 3D printer itself?

Yes.  For the 3rd graders, I brought in various parts they would recognize, such as a toilet, that we 3D printed. For the middle school and high school classes, we (Patrick Gannon and myself) brought in a Stratasys uPrint 3D printer and would leave it in the classrooms for a week or two. Specifically for the high school class, we had an iPod case design contest between all of the students and the winners were able to print their design on the uPrint.

All of the designs were very creative, so we decided to leave the uPrint in the classroom for a couple of weeks to print all of the designs.  This is when the students would come into school early to see their design being printed, stay late, or ask to come into the classroom to see the printer working instead of going to Study Hall. 

3DPI: What sort of questions were the students asking?

As stated above, the 3rd graders started asking questions if we made certain parts, such as trashcans, tables, chairs, and more items located in the classroom.  My favorite question was, “Do you make the plastic bags that my mom puts my peanut butter and jelly sandwich in for lunch?”  I tried to hide my laughter, however, thought it was a great question!  You could see the engagement in the students and they were only 8 or 9 years old!  When I was growing up, we never talked about how things were made, such as trashcans, tables, chairs, etc.  In my opinion, these kids will look at manufacturing as an attractive career choice if we include manufacturing education and software into the curriculums.

3DPI: What recommendations would you make to teachers and others in explaining 3D printing to kids?

My recommendation I would make to teachers and others in explaining 3D printing to kids is to first fully understand why 3D printing is so amazing.  Once this is complete, you should explain it in a way the kids will be able to understand.  Relate it to their lives.  Show examples of parts they will understand that can be made on 3D printers.  Videos help tremendously too!  If you do not have access to a 3D printer, do not hesitate to contact me or others around you to figure out a way to see it live in action.  My final recommendation is when explaining the process show your passion while doing it.  Kids pick up on those kinds of things, so if they see you are passionate and excited about 3D printing and manufacturing they will be that bit more interested in the process!

3D Printer Calibration, General procedures

by: RepRapWiki

Calibration is the collection of mechanical “tweaking” processes needed to get exact, quality prints. While your reprap machine may be working as far as the electronics are concerned, calibration is necessary to have well printed parts.

Without calibration, prints may not be the correct dimensions, they may not stick to the build surface, and a variety of other not-so-wanted effects can occur. A Reprap can be calibrated to be as accurate as the mechanics allow.

Once you have finished the physical build of your reprap printer Calibration is the next big hurdle. Trying to print before calibration will likely result in a messy “blob” smeared over the printer bed.

The following set of objects and notes are taken (and edited) from Coasterman who posted them to Thingiverse. They have been moved to the RepRap wiki so that they could more easily be edited and contributed to by the broader community.

The specific recommendation made in this article are based on Skeinforge (or sfact). This information should be nearly equivalent for many other softwares. Regardless of the software used, the set of calibration objects is invaluable.

Note that calibration is an ongoing process that needs to be performed throughout the life of the printer. There are almost always adjustments and tweaks that can be done to improve print quality.



Whilst calibration is a somewhat iterative process; the order of calibration laid out below is quite important.

It is PARTICULARLY IMPORTANT that the calibration of the motors is done first as poorly calibrated motors can destroy a Pololus and potentially the motors!


Before attempting calibration, a few things are necessary:

  • A stable build process should be established. Your machine should be completely built and all of the nuts and bolts tightened down.
  • The machine should be on a steady, flat, level surface.
  • Calipers, a level, and any necessary wrenches/screwdrivers to adjust the machine should be handy.


Calibration processes

Motor Calibration

Objective: set the current for the stepper motors to the correct level.

Your motors should be quiet when running and can occasionally make musical sounds, particularly when making circles. If they are making a fair amount of noise then you have a problem.

Calibration Object: None

NOTE: incorrect current settings can damage your pololus and/or your motors.


Motors make significant noise.

This generally means you have too much current.

Motor vibrates without turning.

This generally means that you don’t have sufficient current to the motors. You could also have a problem with a part sticking which stops the motor from being able to drive the axis. It might also be possible to be way off in your steps/mm (eg typo), when steps/mm is double the correct value your motor might vibrate on the spot.

Axis movement pauses momentarily and then resumes.

You may have too much current going to the motor which is causing the pololu to over-heat. Reduce the current. This can also be caused by firmware but check your motors first. Another possible cause is the set screw on the gear is not tight enough.


Each Pololu has a trimpot located next to the heatsink. The trimpot controls the current that is sent to each motor. Turning the trimpot counter-clockwise reduces the current to the motor, turning it clockwise increases the current to the motor.

Start by adjusting the trimpot down until your motor vibrates on the spot rather than turning cleanly. Now turn the trimpot in a clockwise direction in small increments (1 eighth of a turn) until the motors just start running. Then give the trim port a final turn of about 1 eighth of a turn and your should be good to go.


Bed Leveling

Objective: To level the print bed so that your objects will adhere to the surface. The result of this step should make the extruder nozzle the exact same height above the bed across the entire bed surface.

Signs of having an unlevel bed: Plastic will adhere to part of the bed but not others. The extruder nozzle might “dig” into parts of the bed, pulling up or deforming the bed surface.

Importance: The first layer of the print is the foundation of all subsequent layers. Having bad first layers could mean the part might peel off of the print bed during the print, “blobs” of plastic may form, causing problems in following layers, and a variety of other things.

Calibration Object: bedleveling.stl


Step 1 – Establish a corner height:

  • Move the nozzle to a corner of the bed and measure its height at this point.
  • Move the nozzle down close to the bed.
  • Use a thick piece of paper or plastic as a shim and slide it under the nozzle. You should feel a slight drag from the extruder on the paper as you pull the paper through. If not, move your nozzle up or down slightly until it does.

Step 2 – Getting the second corner:

  • Move the Y axis (the bed should move) to the second corner.
  • Using the same shim, determine if the bed is too close or too far away from the nozzle at that point.
  • Adjust the screws that hold up the bed along that edge so that the height at the corner matches your shim.
  • Move back to the first corner and check the height with the shim again. It should match, if not, repeat step 1 and step 2 until it does.

Step 3 – Getting the third and fourth corners:

  • There are two ways to adjust this – tweaking the jack screws that hold up your X axis rails and adjusting the bed itself.
    • Jack screw method:
      • Move the Y axis to the third corner and check it with the shim. If it is too high or too low, turn off the motors and slightly rotate one of the jack screws until the nozzle height matches the shim.
      • If this method is used, you MUST return to the second corner and move the nozzle up/down to the shim, and then repeat this method until both sides line up with the shim.
    • Nut and bolt method:
      • Move the Y axis to the third corner and check it with the shim. If it is too high or too low, adjust the bed screws along that edge until they line up.
      • Check the height with the second corner and repeat this method until the corners line up

Once the bed is level print the Bed Leveling Calibration test object and ensure that each square is even, smooth and consistent.

Other methods do exist. Reference Leveling the Print Bed for more information. You may want to download the original scad file so that you can change the dimensions to match your print bed.

Bed surface preparation

Objective: correct preparation of the bed to ensure that objects adhere to it.


An incorrectly prepared bed can result in poor adherence of the plastic to the base as well as a ‘bubbling’ effect.

Even a little bit of finger print grease on some surfaces is enough to ruin a print.

Bed preparation will depend on what material your bed is made out of, what you intend on covering it with, as well as what material you expect to be printing:


Clean the glass with a non-abrasive common household window cleaner (or some would recommend acetone/cheap nail polish) and a lint free cloth. Spare no effort in ensuring that the glass is spotless. With a heated bed and ABS you will probably want something to help the print stick to the bed. Options include: 1. Sugar water (Sugar dissolved in Water approx 1:10 by weight) -> bed temp approx 95 2. ABS juice (ABS dissolved in acetone, eg 10mm length of 3mm filament (0.07g) dissolved in 10ml acetone) -> bed temp approx 90 3. Kapton tape (as below)


When applying any type of tape to print on, it is important to make sure the print surface is still smooth when you are done. Attempt to lay down tape edge-to-edge, with no overlap. If applying multiple layers, it can be benificial for the layers to alternate directions, so that direction-specific defects do not build up as you add layers.

Blue Tape

For those printing PLA, blue tape has been found to adhere well to 3M’s ‘Scotch-Blue Painters Tape for Multi-Surfaces #2090’. This tape may be found in two inch rolls, or three inch rolls. The PLA will adhere to multiple layers, so it is advised to place down at least three layers of tape, before printing on a surface, to prevent damage to the print bed.

Kapton Tape

Kapton tape is a heat resistant tape which is commonly used to cover a variety of material types used in beds. The kapton tape provides good adherence for a variety of plastics. It is important to avoid bubbles while applying the tape. The “wet method” is particularly helpful as explained in this video.

Other Materials

TODO: need details on other materials.


Objective: to ensure the hot end temperature is set correctly so that material is extruded cleanly

Calibration Object: None

Extruder steps

Objective: to adjust the extruder steps per unit

Calibration Object: http://www.thingiverse.com/thing:119306

Printer: Prusa i3

PLA, Bad result at 530 steps: http://thingiverse-production.s3.amazonaws.com/assets/4e/a4/3b/8c/ae/DSC_3744_bad.JPG

PLA, Good result at 670 steps: http://thingiverse-production.s3.amazonaws.com/assets/7f/b3/f0/16/f0/DSC_3745_good.JPG

Maybe others can add there results here


Layer height

Objective: to correct the layer height settings to reflect your printer’s actual layer height.

Calibration Object: 0.5mm-thin-wall.stl


Print the 0.5mm thin wall cube and make sure that the layers adhere well but the nozzle does NOT drag through while printing.

Adjust softwares layer height in .01 increments until you get a nice print. In Pronterface/Skeinforge settings, this can be found under Craft > Carve.

Depending on other factors you may find it hard to get all four walls to print nicely. For the first pass if you can get just one wall looking good then move on to the next test.


Objective: to correct the infill setting.

Calibration Object: 20mm-box.stl


Set infill solidity to 1.0 for this. In Pronterface/Skeinforge settings, this can be found under Craft > Fill.

QUESTION: Now that Slic3r is recommended/integrated,

Which is the correct infill option between:

Rectilinear, Line, HoneyComb, Hibertcurves(slow), Archimedeanchords (slow), Octagramspiral (slow)
Print the cube and analyze the top. If there is NOT ENOUGH plastic (a concave top), reduce the Infill Width over Thickness by .05 increments. If there is TOO MUCH plastic (convex top), turn that parameter up by .05 increments. In Pronterface/Skeinforge settings, this can be found either in Craft > Inset in some versions, or Craft > Fill in other versions.

Once you’re feeling close, start bumping it around in smaller increments.

You may also need to adjust your feed rate.

Adjust the feed rate by increments of 2 or so until you feel close. If it looks really disgusting and blobby, go by increments of 0.5mm. Then go by smaller and smaller increments until you’ve nailed it. Although you probably just want to decrease Infill Width over Thickness instead of decreasing Feedrate because lowering feedrate will degrade the resolution.

Temperature control

Objective: to set the hot end temperature correct for your preferred plastic.

Note: you will find that different types of plastic have vastly different temperatures for both your hotend and your bed. What you might not expect is that different colours for the same material can also required different printing temperatures.

As the tower has quite a small ‘top’ surface area you may need to cool this object as you print. If your printer doesn’t have a built in fan you can use any room fan as a substitute.

Calibration Object: 50mm-tower.stl


Set the ‘Infill solidity’ to 1.0. In Pronterface/Skeinforge settings, this can be found under Craft > Fill.

If the plastic comes out as a drip instead of a cylindrical filament, the temperature is too high. — http://wiki.ultimaker.com/Troubleshooting#Plastic_comes_out_of_extruder_head_in_a_flowing_state

Start by doing a simple extruder test to determine what the range of temperatures are that you can extrude at. Reduce the temperature in 5 degree increments until the extruder starts skipping when you do a manual extrude. Turn the extruder up 5 degrees and note this as your minimum extruder temperature.

Print this block.

If it looks like a blob, turn down all the temps by 5 degrees until you get something good. Chances are you won’t need to do this more than 5 degrees.

Note: Be careful as going too low can result in the plastic setting making it hard for the motors to drive the plastic, possibly causing wear or damage.

TODO: list temperature ranges for common plastics.



Hotend: 185 °C Bed: 60 °C

ABS Hotend: 230 °C

Bed: 110 °C

Perimeter Width

Objective: correct the perimeter width over thickness. In newer versions Edge Width over Height.

Calibration Object: perimeter-wt.stl


This test prints two objects which are designed to fit together.

Try to insert the smaller block into the larger block. Try inserting it differently a few times, and check your belt tensions.

TODO: Need notes on calibration of belt tensions
If you can get it in a few mm, good. If you can get it in all the way, awesome. The fit should be snug. If it is loose and can jitter around inside, decrease the perimeter width over thickness, also called Edge Width over Height. In Pronterface/Skeinforge, “Edge Width over Height” can be found in Craft > Carve in the Slicing Settings. If you CANNOT get it in AT ALL, and you are sure there are no whiskers blocking it, INCREASE perimeter width over thickness or Edge Width over Height. The latter is more likely.


Objective: to maximize your printers ability to bridge gaps (i.e. print in thin air).

Calibration Object: 20mm-hollow-box.stl


Print the calibration object and if the top droops in, increase the BRIDGE FEEDRATE MULTIPLIER in Speed by increments of .1 until the top stops drooping.

Print Precision

Objective: improve print precision

Calibration Object: precision-block.stl


Then there is the precision block. No real huge calibration parameter here. Just play with this and see how well it does on the overhangs and shapes.

TODO: We need to add some recommendations on how to improve this or find more direct methods of calibrating specific aspects of the print.


Objective: fix overhang problems

Calibration Object: overhang-test.stl



Then there is a simple overhang test. Print and observe the overhangs. This is up to you to figure how to improve the overhangs.

TODO: We need to add some recommendations on how to improve this or find more direct methods of calibrating specific aspects of the print.

gregor: i get better results when i add a fan to cool the overhang down

this was my test object: [1]


Objective: stop material oozing out of the noozle during ‘non-printing’ moves.

Many extruders will emit (ooze) plastic even when the extruder motor is not turning. To overcome this your slicing software needs to ‘retract’ the print medium during head movement when not printing. The retraction creates negative pressure within the hot end heating chamber which effectively sucks the print medium back up through the nozzle, stopping it from oozing.

Calibration Object: oozebane-test.stl

The calibration object prints two towers about 30 mm apart. The head must move between each of the towers at each layer. If your printer is not set correctly then you will see many fine filaments (or strings) between the two towers. You can eliminate these filaments by eliminating ooze.

Calibration Object 2 (Variable sized towers for testing ooze): variable_size_ooze_test_nobase.stl

This is a simple model to help tune reversal parameters for a stepper extruder (using much less filament before actually testing the ooziness). It consists of a number of towers with different thicknesses, with different spacing between each tower. A well-tuned bot should be able to produce even the smallest towers.


This is to try to control ooze and calibrate it to be useful.

Start by setting the Early Shutdown distance to 0 and Slowdown Startup Steps to 1.

Print the piece and measure the length of stringers where the extruder shut off and the line is thick before becoming a thin whisker. Take that length and put it into early shutdown distance.

Play with Early Startup Distance Constant until the place where the extruder arrives at the other tower is nice and smooth, so that there isn’t any empty space where plastic should be, but there isn’t excess plastic extruded.

References: http://reprap.org/wiki/Sfact#Q:____What_happened_to_the_old_retraction_settings.3F__What_the_hell_is_oozerate.3F
Since Slic3r 0.9.10b there is a wipe before retract option (under Printer Settings => Extruder) which seems to make the most difference. Other options to consider: reduce temperature, increase travel speed, retracting more, retract slower, z-lift before travel or lowering extrusion ratios.


Objective: eliminate droop from overhangs.

Calibration Object: BridgeTestPart.stl


If the calibration object droops, you likely need to decrease “Bridge Flowrate over Operating Flowrate.” Or increase “Bridge Feedrate over Operating Feedrate.”

X & Y scaling and steps/mm calculations

The following information concerning steps/mm adjustments is outdated. It has since been agreed that steps/mm should be set to the exact calculated values since printing with non-ideal steps/mm results in an accurate test piece, but makes the dimensions on every other part even more inaccurate.

Scaling goes into the STEPS_PER_MM of the firmware, track offset goes into the G-code compiler (Skeinforge etc.).


The most simple way to get reasonably accurate parts is to simply ignore the track offset or to set it to some guessed value, then adjust scaling of the axes, only:

<math>\frac {\mbox {current steps per mm} \cdot \mbox {expected distance movement}} \mbox{actual measured distance}</math>

E. g:


Then repeat:


Until you get your desired steps per mm.

(Do note that there is a setting in configuration.h that enable these EEPROM functions.)

 M501 (show current settings (steps per mm etc)
 M92 X44.04982491245622811406 (change steps per mm to your calculated value, useful for any axis; X,Y,Z and E for Extruder)
 M500 (save your new settings)
  • In Teacup firmware you multiply these values by 1000, to get steps per meter, and put the value left of the decimal into config.h’s STEPS_PER_M_X, STEPS_PER_M_Y, … . Then, re-upload the firmware.

Track Offset

OK, here we get a bit stuck. While the theory section below nicely shows how to calculate the optimum track offset, Skeinforge has no configuration option to adjust this value.

An excerpt from a chat between Greg Frost and Traumflug, on 2011/22/06:
[14:30] <GregFrost_> I calibrated the extruded length and then set feed=flow and pw/t and iw/t to 1.5 and immediately got nice looking prints. However, and here is the kicker, the objects are all slightly too big because my single wall box has an actual w/t of 2.1
[14:31] <GregFrost_> I can fix this with p flow but then i get thin preimeters and they dont alway bond well to each other (but objects are the right size).
[14:31] <GregFrost_> I would like normal flow on the perim but a wider w/t but if i do that it adjusts all of the flows up and I get far too much plastic.
[14:32] <GregFrost_> what I really need is a way to change the distance inside the objest that the perimeter is traced without changing the flow rates.
[14:37] <Traumflug> To be honest, I never used Skeinforge, this adjustable track offset is an assumption.
[14:38] <GregFrost_> Traumflug: it would be a good setting, i agree.
[14:38] <GregFrost_> Traumflug: I think the only way to achieve a track offset is to adjust the perimiter w/t ratio.
[14:38] <Traumflug> So, Skeinforge doesn’t compensate for track width?
[14:38] <GregFrost_> Traumflug: it does. but it uses the perimiter witdth/t and infill w.t settings
[14:39] <GregFrost_> Traumflug: then it uses the layer height
[14:39] <GregFrost_> Traumflug: and useing those it works out the track offset.
[14:39] <Traumflug> ok, good to know.
[14:39] <GregFrost_> Traumflug: but the kicker is, changing perimeter w/t also adjusts the flow rate
[14:40] <GregFrost_> Traumflug: so theoretically when you choose a new w/t, it puts out enuf plastic to fill the width.
[14:40] <Traumflug> Yes, theoretically
[14:41] <GregFrost_> Traumflug: but on the perimiter if you use the same volumetric flow as the infill, it bulges past the desired width because there is no containing line.
[14:42] <GregFrost_> but the one setting that allows you to compensate for that adjusts the flow on all other lines (both infill and permiiters)
[14:42] <Traumflug> IMHO, changing the plastic flow to compensate for size errors isn’t a good way.
[14:43] <GregFrost_> Traumflug: I agree completely.
[14:43] <Traumflug> Each time you change the flow, a lot of minor parameters change as well, so a prediction is very difficult.
[14:43] <GregFrost_> I want to change the track offset.

Theory and Maths

By Markus “Traumflug” Hitter.

X and Y Axis

Both horizontal axes can be calibrated with two values: track offset and overall scaling. To find out how this is done, let’s have a look at a part specially designed to find out those values:

RepRap Calibration Frame Drawing.png

It’s a frame, similar to the one you use to put pictures up onto the wall. The essential part here is, it has long and short distances to measure on the same part. We need to measure both, to distinguish between track offset and scaling.

To the right of the drawing, a few tracks laid down by the extruder are sketched in. It shows how the track offset lets the extruder move closer to the inside of the part, so the outer side of the track just ends where the part should end as well.

All the sizes are overlaid by scaling, which is sort of a “gear ratio” between measurement units and stepper motor steps.

Calibration Object


// X-Y Calibration object
// See http://reprap.org/wiki/Calibration#Theory_and_Maths

difference() {
	cube([100,100,3], true);
	cube([80,80,3.1], true);

STL file


Basic Equation

With that knowledge, we can sum up what the extruder moves to get the size T = 10 mm exactly 10 mm wide:


\mbox{movement} = ( \mbox{intended size} – 2 * \mbox{track offset} ) * \mbox{scaling} \\ \end{align}</math>

This holds true for measurements of any size, i.e. also for the 100 mm size of our calibration frame:


M_{10} & = ( 10\,\mbox{mm} – 2 * TF ) * S \\ M_{100} & = ( 100\,\mbox{mm} – 2 * TF ) * S \\ \end{align}</math>

You see? Two unknowns and two equations, so the set is solvable.

Extending to Erroneous Movements

Now, the whole point of this writing is, the extruder movement doesn’t match what we need to get accurately sized parts. So we have not only a movement, but also a movement error.

The reason for the movement error is, according to the basic equation, erroneous track offset and/or erroneous scaling.

Get these two into the basic equation, result to the left, reason to the right:


& \mbox{movement} * \mbox{movement error} = \\ & ( \mbox{intended size} – 2 * \mbox{track offset} * \mbox{track offset error} * \mbox{scaling} * \mbox{scaling error} \\ \end{align}</math>

Again, this holds true for both our measurements:


M_{10} * E_{M10} & = ( 10\,\mbox{mm} – 2 * TF * E_{TF} ) * S * E_S \\ M_{100} * E_{M100} & = ( 100\,\mbox{mm} – 2 * TF * E_{TF} ) * S * E_S \\ \end{align}</math>
… to be continued … about a formula to get scaling and track offset from measuring these 10 mm and 100 mm …

Z Axis

On the Z axis, there is no track offset compensation, so calibration is reduced to scaling of part height. Build any part of 50 mm height, let it cool down, measure it. Then adjust your STEPS_PER_MM in your firmware’s config.h to reduce the difference between intended and received part.

As most RepRaps use a threaded rod on the Z axis, the theoretical value, which can be generated from the online calculator, should match reality pretty close. However, there’s also material shrink as the plastics is printed at a higher temperature than room temperature.

ABS and PLA filament for 3D Printing


This entry was posted on January 27, 2013 by Luke Chilson.

You’ve got a 3D Printer, or you’re looking to buy a 3D Printer and each one seems to indicate it prints in either ABS, PLA, or both. So you find yourself wanting to know, what is the difference between ABS and PLA.


Some Common Ground

There are many materials that are being explored for 3D Printing, however you will find that the two dominant plastics are ABS and PLA. Both ABS and PLA are known as thermoplastics; that is they become soft and moldable when heated and return to a solid when cooled. This process can be repeated again and again. Their ability to melt and be processed again is what has made them so prevalent in society and is why most of the plastics you interact with on a daily basis are thermoplastics.

Now while there are many thermoplastics, very few of them are currently used for 3D Printing. For a material to prove viable for 3D Printing, it has to pass three different tests; initial extrusion into Plastic Filament, second extrusion and trace-binding during the 3D Printing process, then finally end use application.

To pass all three tests, a material’s properties must lend desirably to first, it’s formation into the raw 3D Printer feedstock called Plastic Filament; second, process well during 3D Printing giving visually pleasing and physically accurate parts; and lastly, it’s properties should match the intended application, whether that be strength, durability, gloss, you name it. Often, a material will pass one test so superbly, that it becomes worth the extra effort to battle with it during its other stages. Polycarbonate, a lesser known printing material is this way. For some applications, it’s strength and temperature resistance makes it worth the battle to print accurate and fully fused parts.

The first test, that of production from base plastic resin into top-notch Plastic Filament such as what we carry is a strict and carefully monitored process. It is a battle of wits and engineering that takes the plastic from a pile of pellets to a uniformly dense, bubble free, consistently sized, round rod. Here there is little difference between ABS and PLA; most thermoplastics can pass this test, it is mainly just a question of the time and costs required to do so while still producing Plastic Filament that runs smoothly and consistently during the next stage, 3D Printing.

Here is where the two plastics divide and will help to explain why different groups prefer one over the other.


Both ABS and PLA do best if, before use or when stored long term, they are sealed off from the atmosphere to prevent the absorption of moisture from the air. This does not mean your plastic will be ruined by a week of sitting on a bench in the shop, but long term exposure to a humid environment can have detrimental effects, both to the printing process and to the quality of finished parts.

ABS – Moisture laden ABS will tend to bubble and spurt from the tip of the nozzle when printing; reducing the visual quality of the part, part accuracy, strength and introducing the risk of a stripping or clogging in the nozzle. ABS can be easily dried using a source of hot (preferably dry) air such as a food dehydrator.

PLA – PLA responds somewhat differently to moisture, in addition to bubbles or spurting at the nozzle, you may see discoloration and a reduction in 3D printed part properties as PLA can react with water at high temperatures and undergo de-polymerization. While PLA can also be dried using something as simple as a food dehydrator, it is important to note that this can alter the crystallinity ratio in the PLA and will possibly lead to changes in extrusion temperature and other extrusion characteristics. For many 3D Printers, this need not be of much concern.


ABS –  While printing ABS, there is often a notable smell of hot plastic. While some complain of the smell, there are many who either do not notice it or do not find it to be particularly unbearable. Ensuring proper ventilation in small rooms, that the ABS used is pure and free of contaminants and heated to the proper temperature in a reliable extruder can go a long way in reducing the smell.

PLA – PLA on the other hand, being derived from sugar gives off a smell similar to a semi-sweet cooking oil. While it certainly won’t bring back fond memories of home-cooked meals, it is considered by many an improvement over hot plastic.

Part Accuracy

Both ABS and PLA are capable of creating dimensionally accurate parts. However, there are a few points worthy of mention regarding the two in this regard.

ABS – For most, the single greatest hurdle for accurate parts in ABS will be a curling upwards of the surface in direct contact with the 3D Printer’s print bed. A combination of heating the print surface and ensuring it is smooth, flat and clean goes a long way in eliminating this issue. Additionally, some find various solutions can be useful when applied beforehand to the print surface. For example, a mixture of ABS/Acetone, or a shot of hairspray.

For fine features on parts involving sharp corners, such as gears, there will often be a slight rounding of the corner. A fan to provide a small amount of active cooling around the nozzle can improve corners but one does also run the risk of introducing too much cooling and reducing adhesion between layers, eventually leading to cracks in the finished part.

PLA – Compared to ABS, PLA demonstrates much less part warping. For this reason it is possible to successfully print without a heated bed and use more commonly available “Blue” painters tape as a print surface. Ironically, totally removing the heated bed can still allow the plastic to curl up slightly on large parts, though not always.

PLA undergoes more of a phase-change when heated and becomes much more liquid. If actively cooled, much sharper details can be seen on printed corners without the risk of cracking or warp. The increased flow can also lead to stronger binding between layers, improving the strength of the printed part.

ABS and PLA General Material Properties

In addition to a part being accurately made, it must also perform in its intended purpose.

ABS – ABS as a polymer can take many forms and can be engineered to have many properties. In general, it is a strong plastic with mild flexibility (compared to PLA). Natural ABS before colorants have been added is a soft milky biege. The flexibility of ABS makes creating interlocking pieces or pin connected pieces easier to work with. It is easily sanded and machined. Notably, ABS is soluble in Acetone allowing one to weld parts together with a drop or two, or smooth and create high gloss by brushing or dipping full pieces in Acetone.

It’s strength, flexibility, machinability, and higher temperature resistance make it often a preferred plastic by engineers and those with mechanical uses in mind.

PLA –  Created from processing any number of plant products including corn, potatoes or sugar-beets, PLA is considered a more ‘earth friendly’ plastic compared to petroleum based ABS. Used primarily in food packaging and containers, PLA can be composted at comercial compost facilities. It won’t bio-degrade in your backyard or home compost pile however. It is natural transparent and can be colored to various degrees of translucency and opacity. Also strong, and more rigid than ABS, it is occasionally more difficult to work with in complicated interlocking assemblies and pin-joints. Printed objects will generally have a glossier look and feel than ABS. With a little more work, PLA can also be sanded and machined. The lower melting temperature of PLA makes it unsuitable for many applications as even parts spending the day in a hot car can droop and deform.

In Summary

Simplifying the myriad factors that influence the use of one material over the other, broad strokes draw this comparison.

ABS – It’s strength, flexibility, machinability, and higher temperature resistance make it often a preferred plastic for engineers, and professional applications. The hot plastic smell deter some as does the plastics petroleum based origin. The additional requirement of a heated print bed means there are some printers simply incapable of printing ABS with any reliability.

PLA – The wide range of available colors and translucencies and glossy feel often attract those who print for display or small household uses. Many appreciate the plant based origins and prefer the semi-sweet smell over ABS. When properly cooled, PLA seems to have higher maximum printing speeds, lower layer heights, and sharper printed corners. Combining this with low warping on parts make it a popular plastic for home printers, hobbyists, and schools.

3D Printing old inventions that have fallen into public domain!

3D printing breathes new life into old inventions

By Jacob Kastrenakes on 


The US Patent and Trademark Office may be the key battleground in today’s high-tech lawsuits, but it’s also home to a trove of inventions that have fallen into the public domain. Now patent lawyer Martin Galese is trying to bring some 21st century tech to the charming ideas patented in the 19th and 20th centuries. He’s dug up eccentric creations — from anEscher-esque building block to a combination comb and hair clip — and is rebuilding them using digital modeling tools, allowing anyone with a 3D printer to own a once-patented work from the past.

“You’re holding the 19th century by way of something that was produced in the 21st century,” Galese told The New York Times. Galese said that he sees the intricate drawings that accompany many patents as beautiful works of art, but that isn’t the aspect he appreciates most: the real idea of his Patent-Able blog, where all of his 3D models are featured, is to help people see the patent office as as wealth of ideas, and not just the impetus for endless legal battles.



Galese notes that there are over 8 million registered patents — and according to thePatently-O law blog’s estimates, only about 2.1 million of those were still in force last year. Just over a dozen patents have been featured so far on Galese’s blog, and he’s still on the lookout for “cool, weird, [and] surprisingly useful” ideas from the past to turn into 3D models. He uses MakerBot’s Thingiverse website — which collects and shares user-generated 3D models — to host all of his recreations. Galese thinks that it’s a fitting home for them: the patent office’s archives, he told the Times, are really just the “original Thingiverse.”


3D printing Chocolate innovations, Food for thought!?




3D printing chocolate is a cool idea, and someone is trying to patent it

By Leo Mirani @lmirani April 24, 2013

Yes, but does it come in fruit ‘n’ nut? Jens-Ulrich Koch/dapd

If there is one thing the patent wars in the mobile industry have taught us, it is that the price of innovation can be ruinously expensive. By one estimate, there are over 250,000 active patents affecting smartphones, or about 16% of all patents presently in force in America. One reason for that astonishing number is that patents are granted not just for groundbreaking innovations but also for relatively straightforward things such as the “slide-to-unlock” feature on the iPhone. That means lawsuits or hefty license fees for those who want build on existing work.

Observers fear that the young and rapidly growing field of 3D printing could fall into the same morass. At the moment, 3D printing is seeing a lot of innovation coming from enthusiasts who openly publish and share their work. But if applications to patent similar technology are granted, that means innovators may find themselves unable to use existing ideas for the 20-year life of a US patent.

A coalition of groups is now trying to ensure this does not happen. The Electronic Frontier Foundation, a two-decades-old American digital rights advocacy teamed up with the Cyberlaw Clinic at Harvard and Ask Patents, a Q&A site, to challenge a series of 3D printing-related patents pending approval in the US. Among these is one that seeks to patent the technology required to 3D print chocolate.

Kit Walsh, a lawyer at the Cyberlaw Clinic, says that challenging that particular patent is not really about chocolate, but about the idea that chocolate is just another material that can be melted and later solidified into new shapes. “If you let people get patents on every material that has those properties, you’re going to occupy 3D printing,” he said over the phone from Cambridge, MA.

The goal of the coalition stretches beyond protecting 3D printing. Walsh says they will expand their efforts to challenge patents related to mesh networking technology, a  new form of wireless communication. But the bigger idea is that their submissions could serve as a model for people who want to use a new procedure.

The group uses a provision in the America Invents Act, a new law that updates the United States’ creaking patent rules. The provision allows third parties—anybody from interested individuals to big corporations—to submit “prior art” that could help patent examiners determine whether an invention is obvious, and therefore unworthy of a patent. It is particularly enlightened law that should help those seeking to challenge patents as well as examiners themselves.

For challengers, it means a relatively simple, lawyer-free method of submitting prior art. In the past, the only procedure was a re-examination request, which could cost up to $20,000. By contrast, the new procedure is free for anybody making less than three submissions and just $180 for every 10.

Examiners too benefit because 3D printing covers a number of disciplines from chemistry to mechanical engineering. Individual examiners cannot be experts in every field, so additional submissions help them make better decisions.

The RepRap Project

The RepRap project is an initiative to develop a 3D printer that can print most of its own components. RepRap (short for replicating rapid prototyper) uses a variant of fused deposition modeling, an additive manufacturing technique. The project calls it Fused Filament Fabrication (FFF) to avoid trademark issues around the “fused deposition modeling” term.

As an open design, all of the designs produced by the project are released under a free software license, the GNU General Public License.

To date, the RepRap project has released four 3D printing machines: “Darwin”, released in March 2007, “Mendel”, released in October 2009, “Prusa Mendel” and “Huxley” released in 2010. Developers have named each after famous evolutionary biologists, as “the point of RepRap is replication and evolution”.

Due to the self-replicating ability of the machine, authors envision the possibility to cheaply distribute RepRap units to people and communities, enabling them to create (or download from the Internet) complex products without the need for expensive industrial infrastructure (distributed manufacturing)[1] including scientific equipment.[2] They intend for the RepRap to demonstrate evolution in this process as well as for it to increase in number exponentially.


RepRap was founded in 2005 by Dr Adrian Bowyer, a Senior Lecturer in mechanical engineering at the University of Bath in the United Kingdom.

Reprap family tree visualising the evolution of the RepRap and some other 3d printers over time

23 March 2005
The RepRap blog is started.
Summer 2005
Funding for initial development at the University of Bath is obtained from the UK’s Engineering and Physical Sciences Research Council
13 September 2006
The RepRap 0.2 prototype successfully prints the first part of itself, which is subsequently used to replace an identical part originally created by a commercial 3D printer.
9 February 2008
RepRap 1.0 “Darwin” successfully makes at least one instance of over half its total rapid-prototyped parts.
14 April 2008
Possibly the first end-user item is made by a RepRap: a clamp to hold an iPod securely to the dashboard of a Ford Fiesta.
29 May 2008
Within a few minutes of being assembled, the first completed “child” machine makes the first part for a “grandchild” at the University of Bath, UK.
23 September 2008
It is reported that at least 100 copies have been produced in various countries. The exact number of RepRaps in circulation at that time is unknown.[3]
30 November 2008
First documented “in the wild” replication occurs. Replication is completed by Wade Bortz, the first user outside of the developers’ team to produce a complete set for another person.
20 April 2009
Announcement of first electronic circuit boards produced automatically with a RepRap, using an automated control system and a swappable head system capable of printing both plastic and conductive solder. Part is later integrated into the RepRap that made it.
2 October 2009
The second generation design, called “Mendel”, prints its first part. The Mendel’s shape resembles a triangular prism rather than a cube.
13 October 2009
RepRap 2.0 “Mendel” is completed.
27 January 2010
The Foresight Institute announces the “Kartik M. Gada Humanitarian Innovation Prize” for the design and construction of an improved RepRap. There are two prizes, one of US$20,000, and another of $80,000. The administration of the prize is later transferred toHumanity+.[4]
31 August 2010
The third generation design, “Huxley”, is officially named. Development is based on a miniaturized version of the Mendel hardware with 30% of the original print volume.
First half 2012
RepRap and RepStrap building and usage are widespread within the tech, gadget, and engineering communities. RepRaps or commercial derivatives have been featured in many mainstream media sources, and are on the permanent watch lists of such tech media as Wired and some influential engineering-professionals’ news media.[5]
Late summer/fall 2012
There has been much focus on smaller startup companies selling derivatives, kits, and assembled systems, and R & D results into new related processes for 3D Printing at orders-of-magnitude-lower prices than current industrial offers. In terms of RepRap research, the most notable result is perhaps the first successful Delta design, Rostock, which is maturing slowly and has an initial working solution for experimentation by self-sourcing builders of some experience. While the Rostock is still in an experimental stage with major revisions almost monthly, it is also near the state of the art, and a radically different design. Latest iterations use OpenBeams, wires (typically Dyneema or Spectra fishing lines) instead of belts, and so forth, which also represents some of the latest trends in RepRaps.


As an open-source project designed to encourage evolution, many variations exist, and the designer is free to make modifications and substitutions as they see fit. However, RepRap 3D printers generally consist of a thermoplastic extruder mounted on a computer-controlledCartesian XYZ platform. The platform is built from steel rods and studding connected by printed plastic parts. All three axes are driven bystepper motors, in X and Y via a timing belt and in Z by a leadscrew.

At the heart of the RepRap is the thermoplastic extruder. Early extruders for the RepRap used a geared DC motor driving a screw pressed tightly against plastic filament feedstock, forcing it past a heated melting chamber and through a narrow extrusion nozzle. However, due to their large inertia, DC motors cannot quickly start or stop, and are therefore difficult to control with precision. Therefore, more recent extruders use stepper motors (sometimes geared) to drive the filament, pinching the filament between a splined or knurled shaft and a ball bearing.

RepRap’s electronics are based on the popular open-source Arduino platform, with additional boards for controlling stepper motors. The current version electronics uses an Arduino-derived Sanguino motherboard, and an additional, customized Arduino board for the extruder controller. This architecture allows expansion to additional extruders, each with their own extruder controller.

Major revisions

The first publicly released RepRap, Darwin, has an XY gantry mounted above a moving Z-axis print bed. Darwin’s Z axis is constrained by a leadscrew at each corner, all linked together by timing belts to turn in unison. Electronics are mounted on the steel supports of its cuboid exterior, and on a second platform at the base. In an effort to minimize the number of non-printed components (or “vitamins”), Darwin uses printed sliding contact bearings on all of its axes.

Mendel replaced Darwin’s sliding bearings with ball bearings, using an exactly constrained design that minimizes friction and tolerates misalignment. It also rearranged the axes, so that the bed slides in the horizontal Y direction, while the extruder moves up and down and in the X direction. This makes Mendel less top-heavy and more compact than Darwin, while also removing the overconstraint of Darwin’s four Z axis leadscrews. The build envelope for Mendel is 200 mm (W) × 200 mm (D) × 140 mm (H) or 8″ (W) × 8″ (D) × 5.5″ (H).


RepRap has been conceived as a complete replication system rather than simply a piece of hardware. To this end the system includescomputer-aided design (CAD) in the form of a 3D modeling system and computer-aided manufacturing (CAM) software and drivers that convert RepRap users’ designs into a set of instructions to the RepRap hardware that turns them into physical objects.

Initially two different CAM toolchains have been developed for the RepRap. The first, simply titled “RepRap Host”, was written in Java by lead RepRap developer Adrian Bowyer. The second, “Skeinforge”, was written independently by Enrique Perez. Both are complete systems for translating 3D computer models into G-code, the machine language that commands the printer.

Later, other programs like slic3r, pronterface, Curarepetier host were created. The closed source KISSlicer also seems popular.

Virtually any CAD or 3D modeling program can be used with the RepRap, as long as it is capable of producing STL files.(slic3r also supports .obj and .amf files) Content creators make use of any tools they are familiar with, whether they are commercial CAD programs, such as SolidWorks, or open-source 3D modeling programs like Blender or OpenSCAD.

Replication materials

RepRaps print objects from ABSPolylactic acidNylon(possibly not all extruders capable), HDPE and similar thermopolymers.

Polylactic acid has the engineering advantages of high stiffness, minimal warping, and an attractive translucent colour. It is also biodegradable and plant-derived.

Unlike in most commercial machines, RepRap users are encouraged to experiment with printing new materials and methods, and to publish their results. Methods for printing novel materials (such as ceramics) have been developed this way. In addition, several RecycleBots have been designed and fabricated to convert waste plastic, such as shampoo containers and milk jugs, into inexpensive RepRap filament.[6]

The RepRap project has not yet identified a suitable support material to complement its printing process.

Printing electronics is a major goal of the RepRap project so that it can print its own circuit boards. Several methods have been proposed:

  • Wood’s metal or Field’s metal: low-melting point metal alloys to incorporate electrical circuits into the part as it is being formed.
  • Silver/carbon-filled polymers: commonly used for repairs to circuit boards and are being contemplated for use for electrically conductive traces.[7]
  • Direct extrusion of solder
  • Conductive wires: can be laid into a part from a spool during the printing process


Other 3D printer designs (such as the commercial Makerbot) and parts constructed by other means (such as Meccano) may be used to “bootstrap” the RepRap process by building RepRap parts. Many such machines are based around RepRap designs and use RepRap electronics. These are generally known by the name RepStrap (for “bootstrap RepRap”) by the RepRap community. A RepStrap is any open-hardware rapid-prototyping machine that makes RepRap parts and is itself made by fabrication processes which aren’t under the RepRap umbrella yet. Some RepStrap designs are similar to Darwin or Mendel, but have been modified to be made from laser cut sheets or milled parts. Others, such as the Makerbot, share some design elements with the RepRap (especially electronics) but with a completely reconfigured mechanical structure.

Although the aim of the project is for RepRap to be able to autonomously construct many of its own mechanical components in the near future using fairly low-level resources, several components such as sensors, stepper motors, or microcontrollers are currently non-replicable using the RepRap’s 3D printing technology and therefore have to be produced independently of the RepRap self-replicating process. The goal is to asymptotically approach 100% replication over a series of evolutionary generations. As one example, from the onset of the project, the RepRap team has explored a variety of approaches to integrating electrically-conductive media into the product. The future success of this initiative should open the door to the inclusion of connective wiringprinted circuit boards, and possibly even motors in RepRapped products. Variations in the nature of the extruded, electrically-conductive media could produce electrical components with different functions from pure conductive traces, not unlike what was done in the sprayed-circuit process of the 1940s named Electronic Circuit Making Equipment (ECME), described in the article on its designer, John SargrovePrinted electronics is a related approach. Another non-replicable component is the threaded rods for the linear motions. A current research area is in using replicated Sarrus linkages to replace them.[8]

Project members

The “Core team” of the project[9] includes:

  • Sebastien Bailard, Ontario
  • Dr. Adrian Bowyer, Senior Lecturer, Mechanical Engineering Department, University of Bath
  • Michael S. Hart, creator of Project Gutenberg, Illinois
  • Dr. Forrest Higgs, Brosis Innovations, Inc., California
  • Rhys Jones, postgraduate, Mechanical Engineering Department, University of Bath
  • James Low, undergraduate, Mechanical Engineering Department, University of Bath
  • Simon McAuliffe, New Zealand
  • Vik Olliver, Diamond Age Solutions, Ltd., New Zealand
  • Ed Sells, postgraduate, Mechanical Engineering Department, University of Bath
  • Zach Smith, United States
  • Erik de Bruijn, The Netherlands
  • Josef Průša, The Czech Republic

Project sponsors include:[10]


The stated goal of the RepRap project is to produce a pure self-replicating device not for its own sake, but rather to put in the hands of individuals anywhere on the planet, for a minimal outlay of capital, a desktop manufacturing system that would enable the individual to manufacture many of the artifacts used in everyday life. From a theoretical viewpoint, the project is attempting to prove the hypothesis that “Rapid prototyping and direct writing technologies are sufficiently versatile to allow them to be used to make a von Neumann Universal Constructor“.[11]

The self-replicating nature of RepRap could also facilitate its viral dissemination and may well facilitate a major paradigm shift in the design and manufacture of consumer productsfrom one of factory production of patented products to one of personal production of un-patented products with open specifications. Opening up product design and manufacturing capabilities to the individual should greatly reduce the cycle time for improvements to products and support a far larger diversity of niche products than the factory production run size can support.