Dimensional accuracy problems and possible ways to address them

Warning - very long indeed

While we already have quite a few, lengthy topics about this, I thought to do it in reverse for a change :wink:

What exactly IS dimensional accuracy in the FDM world ??

For once it is the actual dimensions of your printed model VS the dimensions of the digital file.
But also the difference between the MECHANICAL accuracy of the machine VS whatever issues the filament might throw at you.
Both comes with possible solutions to reduce the difference and to increase the accuracy.
But one has to understand that they are two totally different things!

Let’s start with the mechanics…
Here we have repetition and general accuracy.
Repetition matters whenever you have to print the same part again.
General accuracy always matters as it defines how much manual labour time you will wast to actually finish the model after printing.
If any part that moves has free play than this reduces the accuracy.
It also reduces the ability to eliminate or reduce jitter and vibrations.
Really bad example to explain it:
You have two washing lines going from your laundry window to some tree …
One has just some old cord, the other uses a tight wire rope.
They both move exactly 10cm when you pull 10cm - but the end of the line might not move as far as the wire does :wink:
When you pull you also take the slag out but have no control on which end this slag makes its way back.
For our printers we talk about small fractions of a millimetre…
If that though translates to a 2mm structure being ‘misplaced’ by 0.05mm in some direction at every layer it results in a really crappy looking surface.
And if those walls happen to be either in the X or Y direction the dimensional difference becomes really obvious.

For our filament we face even more problems…
The temperature affects how easy or hard the plastic comes out.
With that also how far it pushes over the set extrusion width.
If you calibrated things well for a print temp of 220 but later decide to do things faster and increased the temp to 228 your filament will come out differently…
The temp also affects the physical properties of the extruded plastic.
You can check this quickly by printing some thin strips starting from just possible to print to 20 or so degrees above the recommended print temp.
Some feel and behave as they should while others might just snap…
Right after that comes everything related to making sure we do get the best result AND the fastest possible speed.
The two keywords here are acceleration and pressure advance.
We need to define how fast or moving parts can accelerate in order to prevent missed steps or our extrusion going nuts.
Both the extrusion rate and the speed changes have to be in sync.
Like when finishing your hot dog:
Squeeze the bottle too hard and you make a mess, move to fast and you won’t have enough mustard on the sausage…

Ok, so much for some of the most obvious issues making our printing life so hard…
Any solutions ?

Yes and no…
No because some people either fail to understand how 3D printing actually works or because they don’t see the need in doing a proper manual calibration for machines and filaments meant to eliminate this…
Yes, because for every real problem there is ways to reduce or in some cases even eliminate them…

For the mechanical part it does make sense to take care of these drive belt tensioners right after setting the machine up the first time.
The system itself is far from good but the way the machines are set up in the factory is for function only, not for the best possible accuracy.
There is good guides out there explaining the whole lot and how to best adjust those two things.
Then there is problem with those linear bearing that are just sleeves.
An insufficiently thin coating of anti-wear -stuff paired with a far too loose fit - resulting in impossibly to correct free play.
It also causes undue wear and tear but that of course if an easy fix thanks to you being unable to source spare parts anywhere else than Bambu LOL
If you suddenly encounter serious issues and can’t find the source of the problem then check for plastic…
Our machines love to make a big mess in the chamber and I found plastic pieces, poop and strings in all the worst places.
Like literally going through the nut on the threaded z-axis or a small piece of poop wedged into the belt system…

What the things we CAN change through settings ???
Ever tried to build a 2000 piece Lego set without the printed instructions ? :wink:
It is a bit like that.
You will eventually get something that looks like the image on the box but you will have missing pieces and even more pieces in the wrong spots…
What I am trying to say here is that it is VERY easy to ‘fix’ something by changing the wrong settings :wink:

Like it or not: There is no need for any complaints in regards to your print results if you did not properly calibrate the filament and printing parameters.
You won’t find any roll of filament, not even from Bambu, that works 100% out of the box…
At least not if you want the lot - speed, surface finish, strength AND accuracy throughout the model.
Some will claim otherwise and say their Bambu rolls perform just fine without any need to change things…
They won’t say though if a proper calibration would IMPROVE the results :wink:

There is many ways but I do things this way:
Calibrate the print temp for the preferred print speed - with overhangs and speed reductions IN MIND.
Meaning that is quite useless to calibrate for perfect looking walls on a cube if you want to print figurines or such with lots of very fine details and even more supports.
You want one base profile for fast printing of easy things and another for all those complex prints where you know you rarely reach the set top speed…
Next is the extrusion factor in the filament settings.
Again, this has to match the print temperature, meaning if you change the temp you should double check that the line widths and such STILL MATCH.
I start with a quick and simple vase mode print to get the correct value for a SINGLE line - pay attention to the colour in the preview and the line width set in the slicer.
I note the extrusion factor that provided the best possible match.
I do you a different profile and factor for models I KNOW I will sand down to get a smooth surface.
Here I calibrate to get things to match the sanded surface.
Means I try to reduce the bulging of the outer most line as much as possible in order to have the least sanding and polishing work.
After the single line in vase mode I test 2, 3 and 4 wall loops.
For this I create a model with a wall thickness matching the SUM of the line widths used in the print.
Again: Pay attention to the colours in the preview and whatever line widths you have set in the slicer.
This gives a slightly different extrusion factor I note down.
Last but not least I confirm which value might be the optimum but printing something with a wall requiring infill.
Like 5mm walls on a 30mm cube to get both inner and outer dimensions.
The later though is for later adjustments.
Let’s say you get 1.02 for the vase mode, 0.98 for the 4 wall loops, 0.97 for 2 and 1.03 for the 5mm wall - can be ANY value in your case!
Vase mode matters for very fine details while 4 wall loops nicely show whether or not the extrusion factor is a match.
Leaves us with a solid 1 …
Averaging the rest, in this won’t even change much and gives us a well working middle value.
The final confirmation though is an infill test.
Like a small 15mm cube printed with 100% rectilinear infill.
If you see gaps between the line under magnification you need to increase the factor.
Seeing rough or elevate line joins means you need to reduce the factor.
If you then repeat the test with your best factor but a maximum of first SOLID layers and they come out perfect as well you are well done - for this part…
There is of course the k-factor, which influences the pressure advance and other vital calculations or the overlap between infill and perimeters.
But thye mainly affect the finish and looks but not the dimensional accuracy…

With the filament related things sorted it is time to address things like shrinkage or the different extrusion behaviour of the various filaments out there.
If a 30mm cube with 5mm thick walls won’t match despite the filament being calibrated properly you can ‘fix’ this by adjusting the compensation factors for holes and outer dimensions.
Like when you 10mm dowel pin refuses to fit into the 10mm hole…
While your pin is mostly fine after removing some surface imprefections the hole is usually either way too small or slightly larger than expected.
Some filaments shrink when they cool down, some extrude far too wide during those tiny hole movements…
Problem with this fix every slicer offers is that is NOT linear!
Once you calibrated things so the 30mm outside matches something in 200mm can still be way off.
And if you calibrate the other way around it won’t always mean your small holes match the digital model…
Worse still for holes and other inner shapes.
Sometimes it is a matter of triangulation, like when a 4mm hole in a model was created with just 6 or 8 straight lines instead of a true circle.
Either way the hole size adjustment won’t work evenly for all shapes and even less for all sizes.
It is best to either find a golden middle with acceptable accuracy or to specifically create profiles for the model needs.
Like one profile for mainly small prints and one for mostly larger prints.

Do all this filament and slicer related stuff properly and you should be able to get your average accuracy within 0.05mm.
Sound like an awful lot of work…
But:
Once you established 2 or 3 base profiles for a filament type any new colour or manufacturer you should confirm it all again.
You will find the need for adjustments but those adjustments should be minor and straight forward.