Part Fitting Calibration

by MEH4d, published

Part Fitting Calibration by MEH4d May 25, 2014
34 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps


Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

65570Views 26058Downloads Found in 3D Printing Tests


Do your print-in-place bearings, joints, hinges..etc, stick together on you ?
Do you have nuts/bolts, screw threads, pegs and holes or gears that were supposed to fit and they don'?t?
Well, those days are over after you run through this calibration for part fitting!


From my observation, the main issues of the printed part being off-sized or parts where they're supposed to be separated got stuck together are:

  1. Extrusion width and Flow rate are not precisely calibrated, causing actual extruded thread width to be wider than what the settings expected.

  2. The Esteps/mm value is not properly calibrated.

  3. Z height is not properly adjusted, causing layers to get squeezed together by the nozzle.

  4. Hot-end and extruder printed parts are not screwed tight, causing the nozzle to off-set during printing.

  5. The print bed is not leveled.

...maybe more.

There is a good guide from whitemousegary (http://www.thingiverse.com/thing:52946), he uses Skeinforge to do the part fitting calibration. Here we show how to do the same using Slic3r.

Please note that this method is through my own trial-and -error that works for me. You are welcome to use any other ways that work best for you.

Run the Thin Wall calibration first to tune the extrusion.
The point is to get the exact thickness of the wall that matches your nozzle diameter.
And then you do the S-Plugs fitting test to fine tune the extrusion for better part fitting.

For Thin Wall calibration:

0.2mm nozzle please use: http://www.thingiverse.com/download:614996

0.3mm nozzle please use: http://www.thingiverse.com/download:614997

0.4mm nozzle please use: http://www.thingiverse.com/download:614998

0.5mm nozzle please use: http://www.thingiverse.com/download:614999

( I made these walls but other than the 0.4mm thin wall I haven't done the testing with them yet since I only have a 0.4mm nozzle installed for now. And I will use it for this demo.)

(You can print a sample before the calibration adjustment for your reference)

  1. Do the ESteps/mm calculation.
    IMPORTANT!! >> You must remove the hotend from the extruder.
    IMPORTANT!! >> You need to heat up the hotend on the side so the step motor can start pushing the COLD filament through the extruder hole for measuring.
    IMPORTANT!! >> Keep in mind that you are measuring the filament sent by the motor through the hole of your extruder, NOT the hot filament coming out of your nozzle !!

Send filament through the feeding hole of the extruder and tell the printer to extrude 30mm of filament. ) Measure the actual length extruded and get the: NEW ESteps/mm value = OLD ESteps/mm X 30 / actual extruded filament length measured. Store to firmware. Now we have a rough ESteps/mm value.

  1. Measure multiple parts of the filament diameter, get an average value and fill in the number in the corresponding area in Slic3r.

  2. Clean and plunge the nozzle.

    Set the temperature on the lower side for printing if possible. Speed should be under 30mm/sec. Set the layer height that matches your nozzle diameter (ex:0.4)

  3. Under Advanced tab in the Print Settings, set the Perimeter to 0.4 for Extrusion width and print.

  4. After it is printed and cooled, measure the walls and adjust the Extusion Multiplier in the Filament Settings, print again until you get the exact measurement ( or as close as you can ) of the walls that matches your nozzle diameter. BUT, if you've adjusted your multiplier lower than 0.9 or higher than 1.1 and still didn't get the ideal thickness, set the multiplier back to 1. It is time to adjust ESteps/mm.

    Please know that we are trying to ask the printer to give the correct width of the walls by using a fixed perimeter width value for this calibration. When we put in say 0.4mm from the settings, we want 0.4mm walls in reality regardless. So we fix the perimeter value and tweak the ESteps/mm and/or multiplier value ( in reality it means feeding more or less plastic into the heated hot-end ) until we get that result. And this means at least we can trust that the printer will extrude threads with the thickness which we expected from the settings we put in. However, we probably will run into situations like weaker printed objects, but we can fix that by adding more loops or change other settings after we get the correct thickness of the walls .

  5. Write down the current ESteps/mm for backup. Now lower the ESteps/mm if the walls you got were too thick and print again. How much to adjust depends on how far off your measurement is.

  6. Note that when extrusion rate is lowered, it is possible that your first layers become increasingly difficult to adhere to the bed. This is unavoidable. With more practice it should be easy to overcome. If that is the case, you can turn on the heatbed, re-adjust the gap between the nozzle and the bed, and applying some glue will help. Do anything you know to make it stick.

  7. Observe the printing closely. The first layer must be fairly successful. Make sure it is not being squeezed by the nozzle too much. Check if the exrtrusion is consistent. If the walls are sagging between the corners, or you are getting weak or holed printout, or the nozzle "seems" further away as layers build up to the point the threads don't even stick to the current layer any more, that means the extrusion rate is too low. Add some more steps back.

  8. If you keep getting bad prints, lower the layer height (ex: 0.3mm for each layer) and try again. Print and tune the ESteps/mm value until you get good and even walls that match the width.

Thin Wall calibraton done.

The S-Plugs Fitting Test

Now that you've got a good extrusion, you can try fitting the S-Plugs. If you've done the Thin Wall calibration properly, this test should not be too far off from your expectation.

  1. Print a sample for reference before tuning.

  2. Wait for it to cool off. Try fitting them together.

  3. Now go to Advanced tab in the Print Settings. Change the Perimeter value to 0.32 or even 0.28 for Extrusion width. This will make the perimeter width thinner, it will help bringing the perimeter resolution up and help with the parts to fit together more easily. But low extrusion also means it is more difficult to control. When we lower the perimeter width, the surface of the product might be weaker. So for other objects in the future you might want to add more perimeter loops and slow down your usual printing speed a little.

  4. The Infill and the Solid Infill width should stay at a decent width (around 0.4), if you set them too thin, they will affect the accuracy of the perimeter width.

  5. Adjust the Extrusion Multiplier and test print until you get a decent finish and the plugs fit nicely.

S-Plug Test done.

Use flow rate control to fine tune the consistency of the extrusion for different types of objects in the future.

Now you have a machine that prints more size-accurate.

Go ahead and try those things that used to fail to work after printing, or try other challenging calibration and objects. The bearings, gears, hinges, screw threads, pegs and holes, nuts and bolts will now fit better and work for you.

Hope this helps.

For more information about this calibration, please visit: MEH4D Creation - http://meh4d.byethost32.com/?p=11

More from 3D Printing Tests

view more

All Apps

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

Can't get 4 walls to be recognized in Slic3r. When I preview the layers, it only shows 2 walls instead of 4. What am I missing?

At the print settings, make sure that you have checked the Detect thin walls parameter

Extruder is calibrated within 1mm, 20mm cubes come out 20.00x20.00x20.00, but these plugs still wont fit together. Layers are stacked perfectly. 0.4mm walls came out at 0.40mm.

I tried 0.9.. 0.8.. 0.7.. the plugs wouldnt fit together until 0.5 extrusion multiplier, at which point it looked horrible and they practically crumbled in my fingers.

Can't print the thin wall box in simplify3d. It won't do it.
On the other hand slic3r did an amazing job not only on the thin wall box but the "s" discs snap together perfectly.

I don't think simplify3d and slic3r are in the same boat anymore. Slic3r is superior for close tolorance parts in my opinion.
Simplify3d is still ok for printing figurines and vases.

The .4mm wall won't print

Are you using slimplify3d? Try it in slic3r with repetier host.

I'm using Cura. I'm going to have to give that a try.

Comments deleted.

What tolerance does this part have? Is it really designed for 0 tolerance on the dimensions?

hey, i have printed the s-shape but it is very tight to fit the part together ( it fits by literrally walking on it ) while my thin wall print is between 0,40 and 0,41 mm with 3 tries at different flows ( 90%, 95%, 100% ).

i'm using CURA, so may be there is some magic settings i m not aware of to enable / disable ??

Thanks for any helps !

okay, i finally got it , despite my thin wall tests were good , my bed was well balanced on one site, the extruder was too close from it. not the print fits really well together ( just a small press ) . Thanks for your work !

Where did the tutorial go? can't find it anymore in the description...

Use the button "Download all files". The tutorial is in there.

Same here, I cannot see the tutorial.
Was it on the instructions?
As apparently I cannot see any instructions on thingiverse anymore!!!

No kidding. I came in here to look it over again to check something, I was able to tune my completely custom built printer from just this!

Did anyone figure out a solution for the model disappearing when using simplify 3d?
I would love to calibrate but would it be impossible on simplify?

Did anyone figure out a solution for the model disappearing when using simplify 3d?
I would love to calibrate but would it be impossible on simplify?

Comments deleted.

In Simplify 3D you have 2 options for my 0.4 nozzle: Auto automatically puts your wall thickness on 0.48mm and Manual where you can put 0.4 there. The main problem is if you try to slice a 0.4 wall with 0.4 extrusion thickness it dissapears. You only can slice for example 0.45 wall with 0.46 Manual wall thickness. This lead you to misscalibrate forever. Any ideas?. If I try to stay on 0.48 Auto adjustment, I can print 0.45 wall. Otherwise If I try to adjust flow parameter in order to get 0.4 wall with my auto 0.48 wall thickness, the inside math wont calculate properly holes, infill, overlasps...etc

i also getttin this issue.

there is problem with Slic3r , it dosent matter what Estop i set or what setting i change , i can not get wall thinner than 0.60 , do you have any idea about it , Nozzle Size 0.4 , as i notice it will put filament each layer 2 times and then 0.1mm Z layer move up . it means dosent matter what setting i set , everytime it will put 2 layer next to each other and then change layer height

Assuming everything is correctly set in your marlin.
You might have to fiddle around with the Filament Width / EStep / Multiplier.
The other possibility is that the Z-height (the distance between the nozzle and the bed) is too low, causing the extruded thread to get squeezed by the nozzle.

Thank you for your reply , what layer height i have to do print test , i use 0.4 Nozzle but after 2 days trying not chance even close to 0.4 wall thickness , i notice maybe problem was from nozzle and when i measure the filament come out form nozzle it is 0.55 !!!
so i think i have to go for 0.5 wall to calibrate it . just need to know what layer height i have to set ?

Did you say you measured the filament coming out from your nozzle?
I'm afraid that could be the reason why you are getting fat walls!

You are supposed to remove your hot end from your extruder. Only measure the filament that is pushed by the step motor.
EStep = Extruder Steps = how much filament is sent into the hot end.
DO NOT measure the filament coming out from the nozzle!

(Read my reply to user goblingift below)

By the way, if you are getting fat walls, print with 0.4mm layer height.
If you are getting thin and weak walls, try printing with 0.3mm layer height.

Hmm- i did your tutorial- started with the extrusion test and measured for 20cm filament an e-step value of 77.70. (I let my extruder as it is- didnt removed the hotend, cause i dont understand why i should remove the hotend, then heat it and send the filament through it?)

Then i did the 0.4 wall test and got with the 77.70 e-steps value a 0.46 wall. Then i lowered the e-steps to 67.0 until i got really 0.4 walls (Which wasnt so much solid)...

I don´t know which is the more important test? To measure the extruded length of filament or the wall thickness?

Sorry for the late reply. I guess you probably figured out by now why you need to remove the hot end...
The reason we do that is we are trying to see how much the extruder motor turns according to the value in the settings (how much filament will get pushed and fed into the extruder - not the hot end !). If you don't remove the hot end on the extruder, it will not be accurate as the hot end has resistance when the filament is pushed in by the motor. We are simply seeing how much filament is being fed through the extruder hole by the motor, not how much heated filament is coming out of the nozzle. That is what EStep means. ExtruderStep is the value of the amount that the motor turns which equals how much filament is being pushed through.

When you try everything and the wall is still not solid, try printing with the 0.3mm layer height.
It worked for me.

Do you have experiences with Simplify3d? I tried printing it but it is Not possible for me to print this object with 0.4 Layer Height and Extrusion Width (0.4 nozzle).
The object disappears in the print Preview until I lower the Extrusion Width or scale the object higher. I tried scaling it to 100,01% but the printer does the Walls with two perimeters then.

Same problem at my side here. Any solutions regarding this problem?

So long :)

It looks like you could alter this a little bit to make a device that would make a raised impression in a piece of paper.

First, thank you very much for this tutorial. Its awesome.

I am on the first part and with all axis calibrated (extruder too) i have the next measures:

I dont know how to make a fine tune of this. I cant increment Y and make a decrement of X. I know that it is a good values already, but if i wanna try more to fine, what can i do? All my axes are test to move the right distance.

Help please!

You have to change steps of X or Y or both to make them same. Its most probably that one of them has looser/tighter belts than other one.

And... what up now if i have:
-x1: 68
-y1: 63
-x2: 55
-y2: 50

???? This is so strange...????? 8| Maybe retration problem? too much plastic push on start of every layer?

Oh.. it was a retraction problem.. i was retracting 3mm and then pushing 3mm +1mm more (bad option changed before :P)

Trying to do the 0.4 wall calibration, but I can't quite get there.

You say to adjust the extrusion multiplier until the walls are the correct width, but that if the nozzle looks to be too far above the previous layer/is somewhat extruding into the air and not on to the previous layer, you need to increase the multiplier.

Well, I've got it down so that I can get 0.5mm width on the 0.4 thin wall, but if I adjust the multiplier down any farther it starts doing the extrude into the air/not close enough to the previous layer thing. It will finish printing, but some layers are not fused/it isn't water tight. Measuring this gets me a perfect 0.4 - 0.43 wall thickness.

Not sure what to do now. Layer height and first layer height are set to 0.4mm.

Sorry if you already know this but I didn't... I was getting the same thing, the nozzle being too far from the bed. It was messing up my prints. Turns out I was calibrating the Z Axis with the printer cold. Read somewhere you need to calibrate it with the bed and nozzle heated. Once I did that, everything's been great!

I ran into a similar situation to what you're talking about. I ended up starting the whole thing over, measuring the filament diameter and so on. The key is to have a correct EStep value to start from. And then adjust the multiplier value to fine tune the extrusion. When you get the right EStep and multiplier balance, your walls will be perfect. Also, at the end, the only way that stopped my nozzle from printing in the air, was lowering the layer height to 0.3mm per layer. And boom! Perfect walls right away. I haven't printed anything with 0.4mm resolution since then.

Alright, good to know. I got it fairly close, 0.4 - 0.48 after adjusting the layer height to 0.2, but the S-plug wouldn't fit, ended up breaking it trying to hammer it in. I'm thinking it may have something to do with my filament, I ordered from JustPLA some 1.75 but when I measured I got anywhere from 1.68 to 1.73. Thanks for the help, I'll fiddle with the settings some more.

I've tried to make a 0.4 wall calibration but cura isn't making any lines, it is to thin for printing... Any solutuions?

I'm sure you have moved on by now as this is a year-and-a-half old, but for others reading through and using Cura (15.04.6 in my case), download http://www.thingiverse.com/thing:38108. It is a solid 20mmx20mm cube. Set your layer height and wall thickness (don't think wall thickness really matters with the 'Black Magic' we are going to do) to the diameter of your nozzle. In the menu, select Expert -> Open Expert Settings (or CTRL+E). Under 'Black Magic', select 'Spiralize outer contour'. I suggest you add a brim to hold the single line to the bed so the print can complete properly.

20mm Test Cube

I was having the same problems with Cura. You need to set the "Shell Thickness" to 3.999 then try slice again.

I tested Cura and for some reason it doubles all the parameters. Cant figure out why.

Try using Slic3r instead, I suppose. Cura has never worked for me, either. You can also try CraftWare.

If you are not getting any plastic coming out of your nozzle when you hit run, it is possible that you have hardware problems other than your slicing software.

Hi All,

i keep trying my luck with the S plug with no good results.
the box printing gets me ~0.4 after fixing the e-steps.

i'm using prusa i3 hephestos - (nozzle 0.4) + slic3r and got sick of parts not fitting :(
can someone please try to assist?
does someone can post his config file s/he is using which works?

thanks for any help!

Do you mind explaining more clearly about the problems you are getting?


thanks for you quick response, i'll try to be more clear this time.
i'm trying to print the S plug and that it will fit with no success.

i followed the instractions and calibrated the extruder via printing the 0.4mm_Thin__Wall_calibration and after fixing the E steps i got it to 0.4mm each wall.
the next step is the S plug so parts will start to fit at my prints.
i've changed:

  1. Perimeter value to 0.32/0.28/0.38/0.42 for Extrusion width.
  2. low speed on perimeter
  3. 0.2 layer height.
  4. infill and solid infill are set to 0.4.

all of my printing gets me S to thick and the S slot to narrow.

i've calibrate everything i can think of:

  1. motors drivers.
  2. level plate
  3. E steps
    i assume the only thing left is the gcode - Slic3r configuration.

pic of result (tried really hard to fit it):

Slic3r CFG file:

ex gcode:


Did you try lowering your Multiplier value?
You can also lower the Flow Rate to fine tune the amount of plastic coming out of the nozzle.
All the above is assuming that you got the E-steps value correct.
If you lower the Multiplier over 0.8 and the Plugs still won't fit, it is very possible that your E-steps calculation is off.
You can try to lower the E-steps more and re-adjust the Multiplier, Perimeter and Flow Rate combination to get the Plugs to fit.

Don't worry, it also took me a long time and frustration to get the printer to be perfectly calibrated.

Comments deleted.

I've only got 0.35 and 0.45 nozzles - would you mind creating a 0.35mm version? Thanks.

I uploaded the 0.35 and 0.45mm thin walls. Check them out. Hope everything goes well for you.

I've been trying to print something similar to this, but the piece that goes in the other is always slightly too large (~1mm) even though the model is a perfect fit. I printed the S plug to see if my printer is printing correctly, and it worked perfectly! Is there a small space between the S and its hole, or is there something else I'm missing while making the model?

There is no tolerance ( gap or space ) on the S Plugs. The edges are totally tight with eachother. It is a tight fit ( sometimes they need a push with pliers). I don't know exactly what your situation is but 1mm is a big gap. They shouldn't be that much different. How about the surface? Is it smooth? A smooth surface is a good indication that the extrusion is optimal.

I'm getting a 404 on all the thin wall test parts linked in the description

Thanks for telling me. It's corrected.

Also, the calibration has to be done with the extrusion width set fixed to the nozzle diameter, but it is good idea in Slic3r to revert back to auto ("0") as soon as the calibration is completed: this way infill will be wider and faster, while perimeters stay at the nozzle size.

Right, to ensure the extrusion width is as close as the nozzle diameter it should be fixed. But if you are trying to print parts to fit, lowering the perimeter width will help. I found from my experience that the infill settings will affect the accuracy of the perimeter, too high the parts won't fit, too low the parts get weak.

Hello, I measured accurately the extrusion with a caliper and 30 mm extrusion. It is correct within 1% I think. The same for the 3 axes. However, when I try the single wall model, I get walls 0.45-0.47 mm thick, even if they should be 0.4 mm. This is a 10+% difference. What should I modify? Or simply leave them as it is? after all, the total width of the model appears to be only 0.1 mm wider than expected and that is quite ok anyway!

It's good to know someone finally gathered enough effort to port this calibration procedure to Slic3r (something I wanted to do long time ago). I didn't do it because Slice3r tried to be smart, which poses indefinite amount of uncertainty to calibrarions.
By the way, in the last attempt I tried to work with slic3r, I dig deep down into its source code, and concluded that it is way too "smart" to be calibrated given the accessible settings. I guess, besides the Slic3r authors, no one has all clues about slic3r to port this calibration to Slic3r. (... Being "smart" hurts, a lot. ...)

Great! If you are getting 0.45~0.47mm walls which is very close. It should be ok for parts that came with tolerance. But if you want to fine tune it even more, you can just adjust the multiplier a little bit and it will get even closer. That will make the S-Plugs fit even better.

Actually I calibrated the extruder exactly according to your method, by taking out the hot end.

Right, this step is to calculate roughly for the Estep/mm. The number is a starting point. It needs a fine tuning to get a more accurate extrusion. It is a good idea to do this for different rolls of filament as the diameter could be different from one to the other.

Also, I wanted to suggest you to put a tolerance in the values: when should we be satisfied to start with the following step?

The purpose of the S-Plug test is for the accuracy of the extrusion so the Plugs don't have any tolerance value. When the extrusion is correctly calibrated, you will be able to get a tight fit with them, not a loose fit ( loose means the extrusion is way too low). I used a pair of pliers to help squeeze the plugs to fit together. As long as they can fit, you are done correctly. .....I'm not sure what you mean by "when should we be satisfied to start with the following steps" though...

You already answered me: is 0.47mm good enough to try with the S test? it appears the answer is not: 0.07mm more than expected causes an interference of 0.15mm that, in my case, make the two side impossible to fit.

You are right nane-ke. 0.07mm from each side means it will cause at least double of that amount of interference. Did you set the Extrusion width for the Perimeter to be thinner? ( around 0.28~0.32mm) That will help also.

No I didn't, but will it really help? With a thinner perimeter, Slic3r will of course compensate by having the nozzle travel a bit farther outside, to keep the external perimeter as desired.
I thought about the problem however and I think the approach may be wrong. I explain.
If you have multiple threads side by side, it is reasonable to expect the interface between them to appear like this one: http://www.printrbottalk.com/forum/viewtopic.php?p=29541#p29541http://www.printrbottalk.com/f... (I said between them, don't look at the external side of the threads): this happens because the side melts a little when the neighbouring thread is deposited.
However, in a single-walled wall, the side stays as it is extruded: more or less round (like a 400m ring for athletics, seen from above: two flat sides and two half circles). Now, if you measure this single-walled wall (the "athletics ring"), it is of course wider than expected, even if it will be perfect and will give optimal adhesion once the print provides additional walls.
From this point of view, it is ok to expect single-walled walls wider than the desired extrusion width. Only one thing bothers me: has the Slic3r developer not thought about this? strange...
Another interpretation of a wider single-wall is simply that the ABS expands (humidity?) during extrusion and stays like that once cooled down. In this case the final width will depend on the expansion characteristics and it will depend on the humidity: the Esteps are only the first starting point from which about 10% has to be reduced to take into account this effect.
If the second explanation is correct, following your steps will bring correct external walls but still produce solid prints. If the first explanation is correct (that means, Slic3r doesn't take into account the different shape of the sides when not surrounded by other walls), then matching the wall width as you suggest will reduce the solidity of the printed piece because you end up drastically reduce the lateral contact surface.
What do you think?
Now it would be very useful to know how much you corrected the extrusion multiplier and/or Esteps AFTER calibrating perfectly the Esteps in the first step.
Right now I am using the correct Esteps but I applied an extrusion multiplier of 0.95, meaning that given my aforementioned results I expect walls 0.44mm wide instead of 0.40 as set in Slic3r. Still good enough for normal prints: matching plug/hole would have an interference of about 0.1mm only.

Thank you for the great info. Perhaps with a thinner perimeter width, the interface between the extruded threads is also less than the wider perimeters, thus the walls should be more accurate than the wider threads. But it is true that if the extrusion rate is too low the solidity is reduced as the threads don't stick together as well ( maybe lower the layer height would help ) FYI, at first step my ESteps/mm calculation was around 960 and it ended up 924 after calibration. My multiplier is at 0.96. The 4 walls I got were 0.41, 0.42, 0.40, 0.39. I had to set the perimeter width to be 0.28 to get the SPlugs to fit.

Apparently I am right with the first hypothesis: Slic3r assumes rectangular threads (as they actually are as soon as they are not alone but have neighbouring threads). http://www.printrbottalk.com/forum/viewtopic.php?f=80&t=4528&p=49408http://www.printrbottalk.com/f...
This means that your part fitting test as you described it is misleading and it will cause sub-optimal adherence in real prints.
If parts are expected to fit, there is no other solution than providing a gap of 10-15% of the nozzle diameter (or of the chosen width for the perimeters).
I would therefore update the S shapes and the description of step 5 to instruct to correct Esteps and extrusion to obtain a wall 10-15% larger than set in Slic3r (that means 10-15% larger than the nozzle).
Thanks anyway, I learned something very useful for my future designs!

If you look at whitemousegary's SPlugs (http://www.thingiverse.com/thing:52946)http://www.thingiverse.com/thi..., his plugs also have no tolerance on them: "The plug and the hole are edge to edge touching each other in the STL file." he said. Maybe try his calibration with Skeinforge and see if the same situation happens.

Calibrate your 3D printer to print parts to fit

With single-walled walls, the issue is connected to the printing process and a different software won't help, unless the software automatically reduces the extrusion width when it detects single-walled walls. When printing objects with multiple walls, the algorithm could simply shift the external wall a bit in the direction of the inside of the part and that way the external perimeter would be correct. Basically, the software has to take into account the fact that the extruded thread is rectangular only when surrounded by other threads, but it is rounded on the sides that are not supported (that means in external perimeters).
The other author with Skeinforge may have incurred in the same issue I told you about: in the attempt to calibrate using single walls, the adhesion in real printed parts will be suboptimal. But again, it depends on the algorithms used by Skeinforge (maybe Skeinforge correct automatically the extrusion width for single perimeters).
I think that what matters is to correct your procedure because (using Slic3r <= 1.1.3, later versions we cannot know!) the process is misleading and printed parts will be weaker than they should.

There are many factors that affect the final measurement. I think both single walls and multiple walls will appear wider than the settings anyway because the most outer and most inner threads will still sag a bit on the sides making the walls wider than expected. Maybe the default settings of the slicers usually make the threads a little wider to produce more successful prints (the threads stick better) which cause the prints to be slight wider and make the parts stick together or not fitting properly. So I thought by lowering the extrusion that the effect will be minimized as it will not change the nozzle position but only extrude less material. And by setting the perimeter width to be thinner for the edges to be more defined (this will change the nozzle position a little but minimize the interference between threads). I'm aware that this step will possibly make the parts weaker if it is over adjusted but I believe it is possible to find the value that the extrusion is optimal and the parts stay solid, as the SPlugs did fit for me and they didn't before I calibrated.
I did get weaker parts during the search for the correct value but in the end I did get a nice print out after fiddling with the ESteps+multiplier+perimeter width and after I lowered the layer height the weaken effect of the printout was gone (the SPlugs in the cover picture look and feel quite solid to me). My printer is now printing way better than it used to. And when I go back to print the things that used to stick together on me now they don't. Maybe I was lucky. However, I'd love to know if there are other ways to do this.

The author of Slic3r was informed about the problem and he suggested reading http://manual.slic3r.org/advanced/flow-mathhttp://manual.slic3r.org/advan... and http://manual.slic3r.org/troubleshooting/dimension-errorshttp://manual.slic3r.org/troub... and suggested using the XY compensation that will be available in the next release: it shifts external perimeters by a fixed amount to compensate for the rounded sides of the extruded thread. However, in the documentation it is stated that with a correct extrusion calibration, the sides should be rectangular, so this is not possible. Anyway, the sides are willingly left rounded for inner perimeters to give better adhesion, only the outermost one is made rectangular to improve accuracy.
This means that extruded size should be left in "0" (auto) to get both good accuracy outside but also good bonding inside.
Also, I think his reasoning about rectangular threads is correct for thin layers (<200 um), but for thicker layers the XY compensation is probably a better solution.

Yes, supposedly it will have a more successful print when the extruded size is set to auto. Only when in reality, for various reasons, the extrusion is not giving the right size threads like it is supposed to, it will be helpful to adjust the values in the Advanced settings to compensate (otherwise the settings should all be fixed and not be available for adjustments). If we tried all the settings and it still not giving ideal results, that would likely be the ESteps that needs to be adjusted. All this is trying to help with part fitting by tuning the extrusion. Of course, this is assuming all other parts of the printer is optimal.
That's good to know the XY compensation is going to be available. It would be nice to have Z compensation according to temperature and speed, too. I definitely will give it a test. Thank you so much for your very helpful information.

I've been using the one you based your calibration test on and so this one caught my attention, however, I'm still having issues. My biggest problem seems to be with flow rate or esteps. At this point I'm almost convinced that Pronterface and Slic3r are using different esteps per mm. I know that when I say "extrude 5mm" on pronterface, I get 5mm our, but all my prints seem fat in Slic3r. Any thoughts?

Different slicers use different ways to generate gcodes, even if you use the same settings I don't think they will give the same results. I'm not so familiar with Pronterface parameters,but the settings that decide how fat the walls will be produced in Slic3r are : ESteps/mm, Extrusion multiplier and Perimeter width. If you already set the Perimeter width to match your nozzle diameter and still keep getting fatter walls,most likely that means you need to lower the ESteps or Extrusion multiplier value and try again. In most cases the ESteps/mm is the same value for different slicers, so maybe it was the extrusion multiplier in Slic3r that gave the fatter walls.

pronterface isn't a slicer, it is a tool for feeding gcode into the printer.

The "S" edges of the 2 plugs are very tightly close to each other. In fact, the S edges even share the same space ( mathematically ) on the computer. Although it is not physically possible in reality, but as long as the printout is as accurate as possible to the original dimension, with the flexibility of the plastic you can get a tight fit with the plugs. And when the plugs can fit each other this way, that means the calibration is done correctly and you have an optimal extrusion rate that gives you more size-accurate prints. In this calibration we are aiming for the accuracy for our printer first. And later if we want a loose fit we can allow some tolerance when designing the models.

Is the S ring supposed to be a snap fit, or a loose fit?

This was very helpful. thankyou

You are very welcome. Glad to hear it helped.