# Printer Calibration



## CFLBob (Apr 20, 2021)

I have a Creality Ender 3 V2 printer that I got around Christmas.  This is my first 3D printer, and once I got the bed leveled, I started playing with making useful things. 

I find that it's not printing exactly the right size.  I haven't printed a calibration cube, yet, but I tried printing a couple of internally threaded standoffs on Sunday, a 1/4-20 and a 6-32.  When I measured the OD of the final parts, they were supposed to be 9.525mm.  They were about 2% small.  I enlarged my model by 2% and that allowed them to work.

I've built 3 CNC machines over the years, and I've run all of them with Mach3.  Before you can do anything accurately, you need to tell it how many steps per inch.  There has always been some correction from the numbers I tell it, and even a little iteration before I tell it to go 1.000" (for example) and it actually goes 1.000".   I understand that this can be from shrinkage of the filament as it cools and can also be from calibration.  

The Ender printer runs its own firmware and not Mach3.  I can find no way to calibrate my printer. 

The other option is to calibrate the slicer.  I'm using the Cura slicer (4.8) and it has an adjustment that might fix this.  

How do you guys assure you get accurately sized parts?  Does anyone know how to calibrate this printer, or should I focus on calibrating the slicer?


Bob


----------



## ddmckee54 (Apr 21, 2021)

Pretty much like you did, I print a test print and the adjust accordilngly.  An FDM printer will never get the parts exactly the right size, but you should easily get within 0.1-0.2mm.  With your undersize parts it's not so much that the printer is printing to the wrong dimensions, it's shrinkage.  Things expand when they get hot and contract when they cool.  Different materials expand at different rates, you can find the coefficient of expansion for just about any material on line anymore.  Whatever material you are printing it most likely will have about a 200°C temperature differential between the printed temperature and ambient temperature.  It might be printed at the correct dimension, but when it cools the part shrinks so it's too small.

The solution is to print oversize to compensate for the shrinkage.  Metal casters do the same thing, they make their molds oversize so the cast object will be the correct dimension when it's cool.  Your slicing software should allow you to scale the print to whatever percentage you want/need.

I thought my first printer, a Chinese Pruse I3 clone, was printing undersize - so I modified the steps/mm settings until I got the correct dimensions.  Years later I was watching a Clough42 video where he used the slicing software to compensate for shrinkage.  I had one of those Homer Simpson head smacking moments when I realized that was exactlly what I was doing by modifying the steps/mm settings.  I normally print PLA and I've found that between 103% and 106% oversize will usually get the part spot on.

Don


----------



## CFLBob (Apr 21, 2021)

Thanks for the input, Don.  I hadn't thought that the answer might depend on the material and might be different numbers for different materials.  Less like correcting the steps per inch number in Mach3 and more like changing the feed rate for different materials in the CAM software.

FWIW, I'm printing with PLA+ from a company called eSun that I bought from Amazon.  The only guy I know who has a 3D printer recommended PLA+ over plain old PLA and I don't have any info on what brands might be better. 

I printed a calibration cube and find it seems closer than my threaded standoffs were.  X is perfect; well 20.01 instead of 20.00.  Y is 19.94, which is less than 1% off.  My Slicer (currently the brand new version of Cura slicer: 4.9) only lists one value for horizontal expansion.  I don't see how that will work given one slightly bigger and the other slightly smaller.  

I think the Creality machines are basically clones of the Prusa i3, which I understand are based on the RepRap project, and most cheap printers are similar.  My Ender 3 V2 looks like the I3 MK3S although it looks like it has a bigger print envelope than mine.


----------



## ddmckee54 (Apr 21, 2021)

Most 3D printers that aren't CoreXY or Delta type machines can probably trace part of their heritage back to the I3.

The latest Prusa version of Slic3r has most of the same features that Symplify3d has got, the Prusa Slic3r is free and I highly recommend it.  One of those features it has is scaling the part.  I wish the latest version had been available before I pulled the trigger on buying S3D, it would have saved me $150.

On my Prusa I3 clone I was modifying the steps/mm in the gcode.  There are M commands to do that but I don't remember what they are right now.  At that time I was still using the original Slic3r and I set up the on-start script to load the new steps/mm values in X, Y, & Z with every file.  The Z axis will only be dimensionally accurate if your steps/mm/layer height/part height relationship is an integer value.  Think about it, your Z dimension can only be within a tolerance of +/- half of your layer height.

I haven't used Cura for years, so I don't know about it's horizontal scaling.  I do know that both the regular Slic3r and the Prusa version of Slic3r will allow you to scale the object along any 1 axis, or scale it uniformly along all 3 axis.  It also gives you an "Elephant's Foot" compensation that will reduce the 1st layer in the X&Y directions to compensate for any squeezeout on your first layer if your nozzle is a little too close to the bed.  That's one feature I wish S3D had, but I've learned to get my printer dialed in and keep it that way.

Bottom-line, if your printing crap you downloaded off Thingiverse - you can probably print it and forget about it.  If you are trying to print a dimensionally accurate part, it's best to print a test part, let that part cool to ambient temperature, and then measure the part.  Then you scale the part appropoiately in the slicer and print it again.  

Don


----------



## CFLBob (Apr 21, 2021)

I printed three more sets of my two threaded spacers, a 1/4-20 and a 6-32.  I got the outer diameters to match with "horizontal expansion" and that was straightforward.  I measured the diameter, found out how far off it was, and added half of that to each side.  

I tried a few different values at an initial layer expansion, which is supposed to help with with the wide "elephant's foot," eventually going up to 0.7mm, which is more than the foot measures, and it had no effect that I can see.   

Finally, there's a "hole horizontal expansion" that I needed to adjust.  The last of the three prints came off the bed and a test screw fit right in.  

If I have to change these numbers for every part that I print, I'd find that annoying, but as a one time experiment with a few prints to get the right size whenever I change filaments, that's pretty easy to live with.  I guess I'll find out which scenario it is. 


Bob


----------



## lemelman (Apr 22, 2021)

I use Cura with an Ultimaker 3. Unfortunately, it turns out that shrinkage varies between different makes of PLA, and even different colours from the same maker.


----------



## skyline1 (Apr 22, 2021)

ddmckee54 said:


> Most 3D printers that aren't CoreXY or Delta type machines can probably trace part of their heritage back to the I3.



Yes indeed they do and most of them use the "Marlin" firmware which can be edited, recompiled, and uploaded to your printer using the easily available Arduino IDE, As they use the same chips (Mega 2560 usually).

This is not a job for the faint hearted though as there are many, settings that can be adjusted in Marlin. It would be advisable to start with an Arduino readable (.INO format) copy of the manufacturers original firmware, Most will provide these or they can be found on the Net. This way you have a backup to restore to your machine if something should go wrong.

Rather than printing test patterns It is probably better to test this with a DTI attached to the print head. There are many designs for brackets/adaptors to do this available online. (try Thingiverse)

This will enable you to determine whether the machine itself is at fault, much the same way as you might do with your MACH 3 setup.

Having done this, if your prints are still undersized then it is indeed shrinkage which (as has been mentioned) can vary with material. brand, and even colour.
It's true !  I have PLA from the same manufacturer in two different colours and one colour (Red) shrinks slightly more than the other (Black).

Printing test cubes and adjusting for shrinkage in your slicer is the best way of correcting this. Most slicers allow for unequal scaling along different axes.
I use Repetier Host which allows me a choice of 3 slicers (Cura, Slic3r, and Prusa) and supports unequal scaling.

Whilst this is a bit laborious it can usually be done in one iteration and the "calibration factor" noted for further use.

Hope this helps a little.

Best Regards Mark


----------



## ddmckee54 (Apr 22, 2021)

Mark:

With my first printer I was never able to determine which version of the firmware it actually had, Chinese I3 clone dontchaknow.   I didn't want to try a download to fix one problem and just break something else.  That's why I went down the route of modifying the steps/mm in gcode.  I always had the default settings to fall back on if I broke something instead of fixing it.

Since Bob's machine is a relatively new Ender 3, it's probably a pretty safe bet that the machine itself is OK.

I know what you mean about the different colors wanting different settings, particularly temperature.  I've had a spool of white and a spool of black from the same manufacturer, the black was happy printing 20° cooler than the white.

Don


----------



## awake (Apr 22, 2021)

Good info above; I'll just add a bit to what Don said about the M-codes for adjusting the printer's "mechanical" settings for steps / mm. A lot of "clone" printers, as well as some of the name-brand printers (such as those from Prusa) use some form of the Marlin firmware. Here is the link to the page that shows all of the available G (and M) codes for Marlin: Gcode, and here is the link to the specific M-code that is needed to change the steps per mm for any axis; this also includes some description of how to save that setting in the EEPROM, so that the printer starts up with that value: Set Axis Steps-per-unit

If your printer does not use a form of Marlin, it may be that none of this works ... or it may be that at least some of it is somewhat standardized. In particular I'd guess that using M92 to set the steps-per-mm might be standard, but I don't really know.

If you can set the steps-per-mm using this code, and even better if you can save the values to EEPROM using M500, that is a very good and much easier alternative to reconfiguring and recompiling Marlin ... though if you want ultimate control, that is certainly a worthwhile route. Note that you will need to be sure that your printer _reads_ the EEPROM settings - on a Marlin-based printer, this means making sure that M501 is included in the start-up G code. (Do this via the Printer settings in the slicer.)


----------



## awake (Apr 22, 2021)

Some other information that may be helpful if you want to dig into the firmware - note that I have only barely skimmed this, and don't own an Ender, so I have no idea how accurate it may be. IOW, no endorsement intended - just the first article that popped up in a Google search: Ender 3: How to Install a Bootloader and Update Marlin Firmware


----------



## Mike Henry (Apr 22, 2021)

I have a Prusa I3 Mk3s and have been printing some fairly detailed parts to make R/C vehicles.  Some of the parts need to be accurate in certain features, such as the bores needed to seat radial bearings or rods that slide inside of a cylinder.  I was having a lot of problems with parts fitting properly until I started digging into the various settings that needed calibration.  So far I've found that getting the 1st Z level done nearly perfectly, the extrusion multiplier, scaling (X, Y, and Z) and something called XY Size Compensation are important to reaching that goal, essentially in that order.  The 1st Z level is usually fixed for a given bed, the extrusion multiplier varies with the type of filament (PLA, ABS, PETG, etc.) as does the X/Y/Z scale factors.  I adjust XY Size Compensation only for cavities or holes where sizing is critical.  I've been keeping a spreadsheet to tabulate parts made, filament type and the values of those parameters for anything critical that I do.

Ender and Cura may not have the same parameters but there should be analogs to the ones available in PrusaSlicer.  Prusa has an excellent web site with all sorts of tips and suggestions for how to improve prints with their printers and PrusaSlicer and you might find it instructive to browse through there for general tips.






						Prusa Knowledge Base
					

All information you need to know about Original Prusa 3D printers…




					help.prusa3d.com


----------



## CFLBob (Apr 22, 2021)

Thanks, Andy.  

That's a bunch of useful stuff.  I really need to find a good group of Ender 3 V2 users, because I don't see how to do these things.  

There is a USB B (micro) on the front of the printer and the only PC software that came with the printer says it's a printer driver.  I don't know if I can do any command inputs to the printer from a PC with that, though.  Almost at the end of the two pages of dense, poorly translated Chinese to English, it says

"The text box in the lower right corner can be input G code to control.  If you are not familiar with it, please do not change anything."


----------



## Technical Ted (Apr 22, 2021)

I have a Prusa Mk3S+ and use Prusaslicer. In Prusaslicer there are scaling factors you can use to tweak and you can save separate configurations for different filament types, brands, whatever. Works fine and it's free. Very well supported.

Ted


----------



## CFLBob (Apr 22, 2021)

Technical Ted said:


> I have a Prusa Mk3S+ and use Prusaslicer. In Prusaslicer there are scaling factors you can use to tweak and you can save separate configurations for different filament types, brands, whatever. Works fine and it's free. Very well supported.
> 
> Ted



Since you mention Prusaslicer, does it have separate scaling factors for X and Y?  

Cura has one number for both X and Y, and then some other numbers: one to change only holes (?) and one to change the size of the initial layer.  I don't know how it decides to only work on holes, but in my simple, internally threaded standoffs, it seemed to work.


Bob


----------



## Technical Ted (Apr 23, 2021)

Prusaslicer has separate scales for X, Y and Z. It's free and I suggest you download it and try it out. Very well supported in the groups.

Ted


----------



## Technical Ted (Apr 23, 2021)

Here's the download page/link: PrusaSlicer - Prusa3d.com - 3D printers by Josef Prusa

Ted


----------



## CFLBob (Apr 23, 2021)

Thanks, Ted. 

Downloaded and will take a look at it once the coffee starts working.


----------



## awake (Apr 23, 2021)

Bob, what you need is a program that acts as a "sender" to the USB port on the printer. Pronterface is a free/open source program, and it works well - or I should say, it has worked well; I haven't used it for a while, because I have my printer set up with OctoPrint on a Raspberry Pi so that I can connect via wifi.

With a program like Pronterface (or OctoPrint), you get visual interface to your printer. There are controls that let you "jog" left, right, forward, back, up, down, turn on/off the heat bed, etc. But there is also a window into which you can directly type G-code, and see any results returned by the printer. So you could type M503 into this window, press the Send button, and it will print out a list of all of the printer settings - steps per mm for X, Y, Z, and extruder, PID settings for controlling the temperature, and so on. That would be a good first test to see how everything is working. Or maybe better, M115 will print out the firmware information - version, etc.

Keep in mind, the above M codes are based on Marlin, and I don't know how universal they are. But some things definitely are universal; you could send the printer G28 and it will go through its homing routine, and this should work regardless of the type of firmware.


----------



## CFLBob (Apr 24, 2021)

I got the Prusa slicer running and printed a calibration cube.  Interestingly, it was slightly different in size from the first one I printed with Cura slicing it. I measured it and scaled the dimensions in that Object Manipulation window that Ted showed the picture of.  I was unable to adjust the axes independently, but the same scaling value worked fine for X and Y.  

Z is still a bit short and the elephant's foot correction had a minimal effect, if any.  

I guess the next interesting thing to work on would be the threaded spacers.


----------



## Technical Ted (Apr 25, 2021)

To scale X, Y, and Z individually click on the "padlock" icon to the left in the picture I posted, under the label "scale factors". Also note that there are three levels you can select for more or less variables/settings to change: simple, advanced and expert.

There is a Prusa user group that I have found to be very helpful on topics like this.... some people out there are real experts and using this software and equipment. Other owners besides Prusa owners do post questions there.

Ted


----------



## skyline1 (Apr 25, 2021)

Getting Z spot on can be a little tricky as it must be a multiple of the layer height.  So the actual Z dimension will always be up to + or - 0.5 times the layer height. 

The printer will will always print one layer less or more than the required dimension whichever is closest to the wanted size if you see what I mean. 

For example, assume we are using a 0.15mm layer height and require a part 15mm high. the height printed will be almost bang on (less shrinkage) as 15mm is exactly 100 layers. But suppose we wanted 15.1mm We would actually get 15.15mm as this is the closest number of layers (101) 

If we wanted 15.2mm We would also get 15.15mm printed as again this is the closest number of whole layers but this time from the opposite direction.

This, unfortunately, is one of the limitations of 3d printing with it's discrete layers method of producing things.

Adaptive slicing can help where the layer height is not fixed but can vary between limits depending on the complexity of the part at that layer and the exact height of the part and certain features on it.  The slicer will vary the layer heights to reduce these height discrepancies as much as possible. It will also try to reduce the "staircase" effect on surfaces that have very gentle vertical slopes.

Both Slic3r and It's Prusa variant have this feature but the settings are a little difficult to find.

On Slic3r it's under Print Settings - Layers and Perimeters - Use adaptive slicing  And on Prusa You can edit it in the model itself when slicing. I'm not sure about Cura as the version built in to Repetier host is rather old and doesn't seem to have it but i'm sure later versions do.

Adaptive slicing is a fairly new technique but up to date versions of most common slicers can do it. It's well worth a try for parts needing high Z dimension accuracy. I've used it myself on difficult parts and it seems to work very well.



Best Regards Mark


----------



## CFLBob (Apr 25, 2021)

Technical Ted said:


> To scale X, Y, and Z individually click on the "padlock" icon to the left in the picture I posted, under the label "scale factors". Also note that there are three levels you can select for more or less variables/settings to change: simple, advanced and expert.



Ah!  Stumbling around the interface as a complete newbie, I saw and used the padlock icon while looking for that display of XYZ in the printer settings tabs, and didn't find it until I gave up and went back to the main screen.  And then I didn't notice the padlock.  



Technical Ted said:


> There is a Prusa user group that I have found to be very helpful on topics like this.... some people out there are real experts and using this software and equipment. Other owners besides Prusa owners do post questions there.



Are you referring to the one in their "Support" menu, or another?  





						English forum
					






					forum.prusaprinters.org
				




Since I've tried the deliberate elephant's foot compensation in both Cura and Prusa slicers and neither had any effect, is there something else I should look for?  Taper the bottom mm in all of my models, or print an extra mm on the bottom that I can break off?


----------



## Technical Ted (Apr 25, 2021)

Yes, that's the user group I belong to and it is very helpful. It also looks like we have some pretty knowledgeable people on this group as well! I'll be looking into that adaptive slicing setting! 

If you are designing the part yourself in a CAD program you can add a small chamfer on the bottom of the part. I haven't done too much yet as I'm a newbie, but when I have I chamfer all edges and fillet sharp corners and it makes the parts turn out much nicer. I use Fusion 360. 

Ted


----------



## Technical Ted (Apr 25, 2021)

Now the interface for adaptive layering is a little different than in the video. You have to click the tool bar menu item in the attached picture (top tool bar) and the adaptive layering menu comes up. It's the icon with the horizontal lines next to the return arrow.

Ted


----------



## CFLBob (Apr 25, 2021)

My test standoffs were disappointing.  I used the same scaling as the cube yesterday, and they still came out a little too small, by about .010" diameter.  The threaded holes were too small as well.  If I scale the 100.5 scale factor by that .010 out of 0.375", I get 2%, 1.033.  I will re-do those.  

I also had an issue with the layers not adhering as I got farther up the pieces.  I note the Prusa slicer drops the temperature of the extruder after the first layer while Cura doesn't, and since I didn't have that problem before, I'll disable that and leave it the same temperature for the whole print (210C - it dropped it to 200).

More experiments needed.


----------



## Technical Ted (Apr 25, 2021)

I'm not much help here with those problems. The prints I've done so far and measured, with PLA only, have been spot on expect for Z which was just a little off. When I say spot on, I mean within  0.001". The edges did budge out a few thousandths, but the wall dimensions were very good. That's where I think the chamfers will help some. 

I have never, so far anyways, tweaked any of the temperature settings, or other settings for that matter and have had good results, but typically I'm not shooting for exact dimensions, just a decent finish and appearance. 

I made this Impossible Dovetail puzzle which I drew up in Fusion 360 and after giving the dovetails 0.002" clearance they slide very nicely. I made them out of brass and aluminum on my shaper, but these are MUCH quicker and easier!!! X and Y on them is very within ~0.001". Z was just a touch shy maybe 0.004-0.005". Hole size was 0.001" smaller than design.

I know filament type/brand can have a major impact, but I've just use the default setting in Prusaslicer and everything has come out fine so far. The printer can have a major impact as well. My printer is the new model Prusa Mk3S+. For filaments, I've used the Prusa PLA that came with the printer, Sunlu and Jayo (same filament, different brand name) and Labists. They all work very well for my use. Only done a few things with PETG, but never had any issues so far. I've also got MatchBox, Paramount3D and Overature, but haven't printed anything with these yet, just building up my color selections. 

Maybe others can help, or you can always post in the Prusa site and get some very good advice. Testing is always fun as long as you can maintain your patience!  

Good luck and please keep us informed with your progress!
Ted


----------



## CFLBob (Apr 25, 2021)

I think you just helped me a lot.

I think my problem with these standoffs has been that I created them wrong in CAD.  What I did was draw a cylinder 3/8 diameter by 1/2" tall, then imported a CAD drawing of a screw from McMaster Carr.  My mistake was that I then did a Boolean subtraction to remove the screw, leaving screw threads in hole.  You said "after giving the dovetails 0.002" clearance they slide very nicely " and that made me think that the way I drew it, there's no clearance at all.  The holes are threaded, but too tight.  I think I need to enlarge them by a few mils.  

I made two in the drawing, one was 1/4-20 and the other 6-32.  It doesn't take long to print them, and they use about 1 gram of filament, so it's a cheap and easy experiment.


----------



## skyline1 (Apr 26, 2021)

Are you printing the screw threads in ?

I print a lot of stuff with M3 and M4 threads, A US no 6 screw from the ANSI table has a dia. of .1380" or approx 3.5mm which is between the two metric sizes

I have found that printing threads as small as this is pretty much beyond the capabilities of most FDM printers, certainly beyond mine, You might be able to do it with a resin printer though as they can work to much finer resolutions. They use an optical process rather than a mechanical one. 

However you can treat the print almost like a metal component and print the holes tapping size then tap them. 

In PLA, which is usually my material of choice, I have found that this technique works really well and you can get really tiny but remarkably strong threads. PLA will tap really easily (a little to easily sometimes. you need to be gentle) I have done M2 and 8BA sizes which are really tiny and well beyond what you could print in.

Whilst this does entail an extra step and the requisite tapping gear it gives really accurate tapped threads. If your tapping holes are a little under or oversize It will not matter PLA is very soft and forgiving in fact it is a good idea to make them a little under so the tap will enlarge them when it cuts the thread.

The other method often employed with small threaded holes is to print hexagonal holes, briefly pause the printer as it gets to the top of the hexagon, usually with a G Code pause at the right point in the program, but I have done it manually, then simply drop a nut in and continue printing.

This is similar to the technique sometimes used in casting where various inserts are "cast in".

Best Regards Mark


----------



## Technical Ted (Apr 26, 2021)

They make the parts for the Prusa Mk3S+ at their factory on their own "farm" from PETG and commonly use either a slot or a hex hole and you will push nuts into these when assembling your printer. Works very well. Some also use metal threaded inserts that you can pick up from McMaster Carr and other places.

Ted


----------



## CFLBob (Apr 26, 2021)

This whole side track of making threaded standoffs came from having seen a video where they print a crescent wrench (adjustable spanner) and it comes off the printer ready to use.  But it's not FDM, it's some sort of powder bed process.  

I know that the most common way to make a FDM printed part threaded is exactly what you're saying, Ted.  Print a hex in the end, with a little extra lip or two to hold a nut in place once you pop it in.  Or a threaded insert of some sort.  

I got thinking last night that simply scaling the part isn't going to work, because it scales the distances between the threads, also.  

The CAD program I'm using (Rhino3D, v5) has scale commands for 1, 2, or 3 axes.  Maybe scale 2D would be the equivalent of using a slightly bigger drill before tapping. 

And maybe this is just teaching me one of the reasons that led everyone to using nuts or threaded inserts.


----------



## awake (Apr 26, 2021)

Bob, I suspect you are using settings for PLA rather than for PLA+. The latter needs to be about 20° hotter than PLA, so more like 225° for the first layer and 220° for subsequent layers - or try using 220° throughout. Keep in mind that the exact temperature needed may vary some from one brand of PLA or PLA+ to another; I suspect also that the measurement of the temperature on the hot end may vary from one printer to another especially in the lower-end brands. IOW, on a Prusa, setting the hot end for 200° probably gives right at 200°, +/- 1° ... but on my clone hot end, I would not be surprised if it is off by 5 or 10°. Fortunately, this error should be fairly consistent, so it is just a matter of some trial and error to see what setting my printer needs for a given filament.

Like others, I would not recommend trying to print small usable threads on a filament printer. The smallest threads I have tried to print were 1/2" x 10-tpi acme, and even then I printed the threads more to help guide the tap than for any other reason. They did sort-of print, but I would hate to rely too much on the strength of these threads. On the other hand, if you are printing larger parts, threads of, say 1-2 tpi or 1.5mm or larger can come out quite nicely. For anything smaller, sizing the hole for tapping and then tapping them is the way to go - and it is fast; I put my tap in a cordless electric drill and can tap a dozen holes in a minute or two.

Yes, you always need to design in allowances, not just to compensate for what your printer does, but in general for any sliding fit. As you have discovered, this is best done at the design stage, not by trying to scale the print.


----------



## ddmckee54 (Apr 26, 2021)

5-6 years ago I FDM printed a 6" cresent wrench, I think I got the design off Thingiverse.  It mostly worked, but it left a lot to be desired, it's opearation was not exactly smooth.  

Like Andy I wouldn't recommend trying to print a small thread.  Your layer thickness will tell you how many layers will fit wiithin the thread pitch.  And that will tell you how closely your print will approximate the thread.  Consider trying to print an M3 thread for instance.  I normally print at a 0.25mm layer thickness.  The surface finish is acceptable, I can get a reasonable amount of detail, and it prints relatively quickly.  At that layer height, an M3 thread with a 0.5mm thread pitch gives you 2 layers to advance the thread through a full turn.  Even at a 0.1mm layer thickness you've only got 5 layers to advance the thread through 360°.

I made fidget spinners for my great niece and great nephews a couple of years ago.  These spinners used 1/2-13 hex nuts for weight.  I printed threaded plugs to keep little fingers from getting stuck in the threads of the 0nuts.  It took close to a dozen different attempts, mofifying the thread design slightly each time at the CAD level, before I got the fit on the threads that I wanted.

If I need to be able to assemble a part, and be relatively sure it will STAY assembled, I'll either design the part with nut pockets, or with locations where threaded inserts can be installed - or both if I'm feeling particularly adventurous.

Don


----------



## crec (Apr 27, 2021)

You can print some pretty fine threads on a Prusa, but I would not necessarily depend on them for strength. The robotics team I run uses 3d printers to  make a number of items that are used on our competition robots. If we are doing just a fitment test we will print the threads in as we will probably make the final item in the machine shop out of stronger materials. If tapping in a printed item I suggest increasing the wall layers to give a bit more material for the tap to work in. If printing the threads in the item a couple extra wall layers is also suggested as it gives a bit more strength and if you need to chase with a tap you will have a bit more material to work with before cutting through. If I got the pictures inserted correctly here is a test fitment using 10-32 and 14-20 bolts.


----------



## CFLBob (Apr 27, 2021)

Just a little note to let you know that I am reading these although I haven't done any more prints since the last ones I mentioned.

When I decided to try the threaded standoffs, I had Cura set for a slice thickness of 0.2 mm,  which is just under .008".  I thought with the 1/4-20 threads being .050 from one peak to the next that the layers were less than 1/6 of that so it seemed like that might make little jagged edges that were small compared to the thread so it should work.  Then I told myself that a 6-32 screw is .031 from peak to peak and it's still 1/4 of that.  It's a cheap experiment, so why not try it? 

Anything that requires post processing, like making me to run a screw or tap through it, is too much work unless this is an emergency.  Let's say it's the weekend and I'm working on an old radio or something that needs a plastic standoff that's not like anything I have.  That's when it's time to do this trick.


----------



## ddmckee54 (Apr 28, 2021)

Bob:

For something like the threaded standoffs you describe I would use threaded inserts, the kind you use a soldering iron or wood-burning tool to install.  That way you can depend on the threads, and disasssembling/assembling the parts multiple times is no problem.   When I did the threaded inserts for my dust collector airlock body it only took a few seconds to install each insert - and I used 24 of them on the airlock body.  It took maybe a 2-3 minutes total, and I wanted to be able to depend on the threads since I knew it would probably be apart many times is its' working lifetime.

It took longer to pick the little bugger up off the floor when I dropped one than it did to install them.

Don


----------



## CFLBob (Apr 28, 2021)

(I would have sworn I answered this 12 hours ago).  

I went to McMaster Carr in search of threaded inserts and got lost.  I couldn't tell you how many screen pages of inserts there are but there were three pages full of links to other pages to select the parts.  It was overwhelming and I got nowhere.


----------



## ddmckee54 (Apr 29, 2021)

Look on Ebay or Amazon, that's what I do.  McMaster Carr may have everything, but their prices are just too rich for me.  I just checked on Ebay, I searched for "6-32 threaded inserts", and you can get (100) 6-32 brass inserts for 3D printing at a cost of $14.99.  It's free shipping, and they ship from GA so you won't be waiting for weeks and weeks. (Ebay listing)

Don


----------



## awake (Apr 29, 2021)

Yes, what Don said. I did a quick search on Amazon for "3d print threaded inserts" and came up with a bunch of results. Here is one as an example (no affiliation, no experience with them, etc. - just a random but illustrative result): https://www.amazon.com/Canitu-Knurl...+print+threaded+inserts&qid=1619708939&sr=8-4

As with the example above, all of the results at the top of Amazon's list featured an assortment of metric sizes. I often find that it is cheaper to go with the metric threads for something like this, sourcing the matching screws from the same source (i.e., Amazon or eBay).

And just for full disclosure - I've never used these, only seen them used in various You Tube videos; looks like the basic procedure is to print the hole to a certain size that will accept these, then put the insert over the hole and press a soldering iron to it until it melts into place. I would think these would be good to use for the smaller sizes such as 6-32, 8-32, M3, or M4, but I would still tend to go with tapping suitably sized holes for anything 10-24 or M5 or larger. Or let me say, I DO go with tapping that size. Again, with a battery powered drill and a tap, it is about one second to tap the hole, and one second to remove the tap, and on to the next!


----------



## CFLBob (Apr 29, 2021)

My plan (saying "plan" dignifies it) was to find a 3D printing forum and see what other people are using for PLA prints.  I didn't think this forum would be the one. 

I don't have much hardware in metric sizes, so I'd be inclined to stick with 4-40 through maybe 10-32.  

I don't need any standoffs, the whole idea behind doing the ones I did was just to see if I could do it.


----------



## CraigLD (Apr 30, 2021)

> just a random but illustrative result): https://www.amazon.com/Canitu-Knurled-Threaded-Embedment-Assortment/dp/B08B341V76/ref=sr_1_4?dchild=1&keywords=3d+print+threaded+inserts&qid=1619708939&sr=8-4


I didn't buy this particular item, but did buy a similar item:
Glarks 370Pcs M2 M3 M4 M5 Female Thread Knurled Brass Threaded Insert Embedment Nut Assortment Kit for 3D Printing

Pressing on them with a hot soldering iron cleanly sinks them into a 3D printed parts.  In my case I didn't have to pre-drill a hole before inserting.  I did screw in an appropriate size bolt before heating to prevent the threaded hole from clogging with the melted PLA.


----------



## KenC (Sep 11, 2021)

Late to this discussion.  However I recently bought an Ender 3 Pro and calibration of all 3 axes and the extruder itself is very easy. You can print an XYZ cube, and then when cool, measure each dimension being sure to avoid elephants foot at the base. It is then a simple matter for each axis to calculate the ratio of expected dimension divided by achieved dimension, and multiply the steps per mm in the menu by that figure. Do this for all 3 axes and then save the results from the on-screen menu. No need to go into Cura or any other splicer. I have printed several 20mm XYZ cubes and after correcting the steps per mm,  all sides are between 20.00 and 20.02mm, which about as accurate as a 3d print can be measured. There are plenty of YouTube videos showing the process.


----------

