Communicating Form3 printed part tolerances to customers

A customer recently asked me to print some parts for him and they asked what kind of tolerances the Form3 can hold. After reviewing the Form3 specs and reading the accuracy-precision-tolerance guide I was unable to come to any conclusions on what to say to the customer regarding tolerances.
Is it a valid question to ask if the Form3 can hold + or - .005?
Has anybody else had to talk with customers regarding print tolerances?

Won’t the answer depend on (1) resin type (2) temperature inside the printer, both the average temperature and the range of temperatures experienced during the print? and (3) the shape of the part?

The deviation of the print from the geometry you give PreForm is going to depend on the geometry you give to PreForm, and the resin. It will be a non-linear deviation. So ultimately the tolerances obtained will depend on how well you understand and correct for this, by either correcting the model beforehand or fixing it after the print.

I could imagine a description of the printer’s tolerances provided there is no human correction. Unfortunately it would be some awful continuum mechanics integral. You could probably design software that uses a finite-element method to describe all these deformations with specific prints, specific resins and operating conditions. That would be a nice feature to have as you could use the software to help correct your model before you send it to the printer.

Appreciate your reply. Based on my limited printing experiences so far I’m thinking, pick a resin, test print, measure, and then start a deviation from model spreadsheet.
I’m curious on how other users track print deviation from model.

Much of the time I find I get prints to be within about 1% of expectations, quite often I get much better results than that. For most of my prints, I err on the printout being a tad larger than what I need, then I sand it down to expectations. Often this is 0.1mm of sanding, or less. If you’re willing to iterate the printing process several times you can of course get the tolerances very tight. It took about 4 prints, but I eventually made some LEGO pieces that were impossible to distinguish from store-bought LEGO – except the resin I printed in was far more brittle than regular LEGO.

One print that was a good “in principle demonstration” of the non-linearities was a recent tetrahedron that I printed out. Here it is.

Three of the faces came out essentially flat, but one face (the face that was facing the build platform) came out slightly spherical. It was almost flat. But it had about a 0.2mm deviation from flat. This is for a tetrahedron that is maybe 16cm in diameter.

I believe what is going on is that in the curing process there is a different shrinkage ratio in the direction transverse to the print layers, than in the other direction. I measured the local shrinkage in an old thread here.

I do not know if those estimates remain accurate as Preform and the firmware has changed many times since then. I’ll maybe run another series of experiments soon. But the general gist is that you get less shrinkage in the direction transverse to the build plane.

Theoretically, All the things you mention should have been accounted for in the software and the firmware.

The temperature of the resin both during the print and after should not affect the final print geometry. The resin type can affect the final geometry, but it should have been accounted for in the firmware and the resin settings built into PreForm.

The thickness of the laser dot would affect the overall size of the print, however, it should have been accounted for in the software as well, but might be off due to calibration.

Calibration will also account for deviations in length, width or height. If properly calibrated, the Form should output an object that is ultimately the same size as the designed object.

But we all know that’s not the case most of the time. Most of us find that while outside surface are mostly spot on, inside dimensions, especially holes are not, and the reason for this over-curing, and quite often the proximity of other objects to the surface, which leads to excess resin being trapped inside the holes, adn getting cured along the way, leading to “thickening” of the holes.

Additionally, resin will swell during the washing process, as it absorbes alcohol, however, once that evaporates and the resin fully cures, it should shrink back to the original design dimensions.

1% of 10mm is 0.1mm, but 1% of a 100mm long object is 1mm. That would be pretty bad.

I’m quite confident PreForm is not taking into account the non-linear nature of the deformation during the curing process. If it did, why doesn’t PreForm offer a stress analysis on the cured part?

You don’t need to take my opinion in this. Print a solid cube, cure it, and measure it for yourself. Similarly, print the edges of a tetrahedron, like this then measure its dimensions after curing.

I do believe PreForm attempts to deal with the local nature of the deformation.

For printed parts I need to have really precise dimensions, I print the area I want the tight tolerance on a little over-size and then I put the part on my CNC and machine it down to the target dimension. I do this mostly with FDM prints, but have done it with a SLA print a couple of times…


To answer you customer’s questions about tolerance, in theory, in a perfect world, the X/Y tolerance should be about 1/2 the diameter of the printer’s laser spot. Which for a Form 2 translates into 0.15mm, and for a Form 3 it’s about 0.05mm. The Z tolerance should be pretty much on the money

But our printers are far from perfect, and you will need to print some test samples that you can then measure to see how close your printed models are to the design. Here is a link to a neat little test print that has been used here many times:

Once you figure out how far off you are, you have a couple of choices. Account for this deviation in your model design, or use some post processing to bring the model into compliance.


You mentioned non-linear deformation on a couple of occasions. Can you explain what you mean, and also what the contributing factors are?

And what would a stress analysis of the cured model reveal in terms of accuracy and tolerance?

Also worth mentioning, the answer you get will be different if you print directly on the build plate vs. with supports.

When the resin is cured, it changes shape, i.e. deforms. The deformation in the build platform directions is different than in the transverse (vertical) direction, since we are building the print in those layers. This puts a small internal stress into the printed material.

When you build a large object that has local stresses in it, they can often combine in unpredictable ways to create a large-scale deformation of the object. Maybe a good analogy is Japanese sword making. The swords are made of thin layers of steel, and they differentially heat the sword to build the edge. As they build the sword it’s straight, but as the edge is built, the differential heating gives the sword its bowed-shape. It’s the internal stresses adding up to change the global shape of the object.

Not sure if that’s the best analogy. I imagine they have good examples in geology, but I don’t know that subject.

It’s not the best analogy because this isn’t exactly the same as the printing process. But it gives the idea.

Anyhow, if you want to control the final shape of a 3d print you need to know the effect of the internal stresses in the final printed object. Moreover, I don’t think there are any terribly smart algorithms that tell you how to adjust your print to get the desired output. There are finite-element techniques but they often require human guidance to get the desired outcome. I imagine you could make some finite-element technique that could do a pretty decent job, without any human input. But I’m not an engineer so I don’t know the state of the art.

You’re waaay overthinking this. You really don’t need to be a rocket scientist to print an accurate print.

Randy_Cohen mentioned this, that you get slightly different results depending on whether you print with or without supports. True enough. The printer was designed to compress the first few (10-15 layers) so as to provide better adhesion to the platform.

If you print with a raft, that’s not a problem since the compression will happen on the raft, but if you print directly on the platform, you’ll have to take that compression into account. how much compensation is required, you can do a few tests and compare to known dimensions.

Last but not least, and for accuracy sake, the Katana blade curvature happens when the blade is quenched, not when it’s heated. The rapid cooling of the exposed steel makes the edge harden as well as expand, compared to the spine which is covered with clay. That expansion during rapid cooling is what makes the blade curve.