Introduction: Make a Seamless Captive Nut in a 3D Printed Part
A captive part is a piece of hardware that is embedded or attached to another such that it's "trapped" inside. This is particularly useful in applications where you want to mount something like a tensioning nut or a leadscrew nut for linear motion. This can also be used to integrate other components, such as electronics or magnets.
In this Instructable I will be going over the basic design considerations required when creating a design that includes a captive part, as well as a tutorial on making a basic flange part with a captive nut embedded. All the software used is either free or open source, and parts files for the flange, the flange with cavity, and the finished STL file for the flange with cavity are downloadable at the bottom of this step.
Software used:
Fusion 360 (CAD Modeling)
Repetier (3D Printer Controller)
Hardware used:
3/8" Nut
3/8" x 6" Bolt
Prusa i3 3D Printer
Attachments
Step 1: Design Considerations
In order to create a captive part, we're going to create a pocket in the middle of the larger part for the smaller part to be sit in.
But how will we get it in there, you ask? It's quite simple, actually. We pause the print midway through, insert the part to be embedded, and let the printer continue printing on top of it. No ship-in-a-bottle magic required!
While a variety of components can be embedded, it is important to consider how they will be oriented. Flat objects are generally easiest, as the print head must be able to clear the top of the embedded part. This should also be taken into consideration when orienting the larger part itself.
Minimizing the height of the embedded part in the Z-axis while creating your larger part in a way conducive to 3D printing is a skill that will take some practice. That said, once you have the skill mastered, the time invested into an intelligent design will prevent the need for multiple parts, complex creations, or adhesives.
Step 2: Model Your Base Part
First, we need to make a part to add the captive nut to. For this example I made a basic flange in Fusion 360. This base model is included in the files for this tutorial.
If you're not familiar with the various 3D modeling skills required to make this base part, there are many fantastic tutorials available here on Instructables.
Step 3: Create Your Work Plane
In order to insert the pocket for the captive part, we need to create a plane somewhere inside the body of the flange.
First, go to the Construct menu. Select Offset Plane from the options. What this does is create a work plane that is parallel to and offset from another plane, called the Reference Plane. This plane is separated, or offset, by a specified distance. Using this, you can determine the depth at which the captive nut will lie. When you are prompted to choose a reference plane to offset from, choose the top of the part.
Next, enter a distance of -.75 in for the offset amount. This will create a work plane that is parallel to the top of the part, and .75 inches below it. When we cut out the cavity for our nut, we will be using a symmetrical extrusion, meaning the offset amount is the depth that the center of the nut will lie. When you're designing your own parts, this is a factor you may need to consider.
Last, hit enter, and your work plane will be created.
Step 4: Sketch the Nut
Now, we must create the 2D sketch of the nut's outline. This sketch will be used to make an extruded cut, creating a properly shaped pocket for the nut to sit in.
First, select Sketch -> Circumscribed Polygon. Select the plane we created in the previous step.
Second, select the center of the part as the start point for the new polygon. Drag outwards.
Next, we must properly size the insert hole. The number of sides is simple - your standard hex nut has 6 sides (it's in the name!), so type the number 6 into the box for the number of sides.
The actual size of the polygon is a bit trickier. You want to leave enough space to easily insert the nut, but not too much space or it will rattle all over the place. In this tutorial, I used a 3/8 nut and bolt, so I entered the value of ".5555/2" for the "radius" of the polygon. If you're using a different nut or other part, you'll have to play around with this number.
Once the sketch is drawn, you can go ahead and click Stop Sketch.
Step 5: Creating the Pocket
With the sketch drawn, it's time to make our extruded cut.
Go to Create -> Extrude. Once the extrude menu comes up, you'll want to select the sketch we created in the previous step.
For depth, you once again need to find a value that will be both big enough to allow the part to completely fit in (and clear the print head) and be small enough to prevent excessive play. In this case I chose to use .35 inches. Since we're going to use the symmetrical option, we need to halve it.
With this in mind, enter .35/2 in for depth.
Under direction, select Symmetrical.
For operation, choose Cut.
Make sure that extents is set to Distance.
Step 6: Getting Ready to Print
Now our model is complete.
To export the .stl file, right click the body created under the browser. Select Save As STL.
Make sure your settings match the picture (or whichever settings you require for your printer), and click Ok.
Save your file.
Step 7: Setting Up the Pause
A critical step in making a captive component when 3D Printing is ensuring the printer will pause at the correct layer, giving you time to insert the component.
ENSURE SUPPORT GENERATION IS TURNED OFF, ELSE THE POCKET FOR THE CAPTIVE PART WILL BE FILLED IN WITH A SUPPORT STRUCTURE.
For this tutorial I am using Repetier as my printer controller, as it makes it easy to pause at a specific layer. Repetier is available for free, here.
After opening and slicing your STL file with your preferred settings, go to Print Preview -> Edit G-Code.
This will bring up the raw G-code that was generated by the slicer. Now we need to find the point where the printer is just about to start printing the layer above the pocket we created. Knowing the height where the cavity ends allows us to search for the G1 Z xx.xxxcommand, where xx.xxx is the height where the cavity ends. In this case, we're using the value of 250.00. Once you find this line, add @pause directly after it.
The @pause command instructs the printer to pause, and wait for the user to instruct it to continue. During this time, the user can jog the head, change filaments, and perform other operations before continuing. The printer will return to where it left off, and continue printing.
In this case, we're using it as an opportunity to insert the nut.
Step 8: Printing and Inserting the Nut
Begin your 3D Print as normal. When the printer pauses, lift the head up and jog it to the side. Use the controls within Repetier to do this, so the printer knows exactly where the head is and can resume seamlessly.
Insert the nut into the pocket as shown in the picture. Make sure that it lays completely flat, so the print head will not collide with it when it restarts the print. When you are satisfied with your results, restart the print and let it finish. The printer will seal the nut inside the part. No glue, no seams.
Congratulations, you've made your first captive part!

Runner Up in the
Design Now: 3D Design Contest 2016
30 Comments
Tip 11 months ago on Step 1
Impressive and cool, thanks.
2 years ago
Super!
4 years ago on Introduction
Cool stuff... I would include the instructions to get the printhead out of way in the g-code too (both side of the pause): avoid user error and allows to print off line too...
6 years ago
This is such a simple but fantastic idea! Will be using this for sure!
6 years ago
Brilliant!
6 years ago
I always do it this way :)
6 years ago
Nice work on the step-by-step.
Out of curiosity, as a traditional machinist with no real 3D printing experience, what is the purpose for the nut; embedded or otherwise?
If the part design requires internal threading why not bore the two holes to depth then cut the threads in the part itself? Or insert the nut from the end and capture it with a circlip? Variations are endless.
I'm not taking a swipe at your design or execution, I'm genuinely curious. Thanks!
Reply 6 years ago
The other reason I love captive parts is durability -- I made a shuttle platform for my camera (so you can turn a threaded rod to move it), and I'm not worried about the threads wearing out fast (despite it running all over the place) because I embedded a self-lubricating-bronze nut inside the sled. If I had put the threads in plastic, I think it might've lasted 100-200 cycles, but this showed no signs of wear before the project was finished.
So I always make my threads an embedded nut (a steel nut works much better on my tripod than the plastic) instead of trying to tap them -- just so easy (as long as you put a "pause" in the workflow... otherwise, you gotta watch it)...
Reply 6 years ago
Similair to what askjerry was saying, there's a couple reasons.
One of the coolest to me is the fact that it's just not something you can do on a mill or lathe - only with additive machining can you have truly captive parts. And that's really cool to me.
Another option is the fact that this can extend to more than just nuts - you can embed electronic components in a very similar way.
And another consideration to keep in mind with regards to nuts is strength. Tapping directly into 3D printed plastic might not work so well - a lot of times 3D printers don't fill in the entire part, just the outside frame and a lattice on the inside (see towards the final step where you see the grid pattern in the half-printed part). This saves in both filament and weight. Tapping into the "hollow" part might not give the results you want. Even with a solid print, the threads might not hold up to well against any reasonably load.
Reply 6 years ago
Does a turners cube count as captive?
I'm glad I asked. I did not know some 3D printers leave pockets in the parts. The tiny spools of filament I've seen make a lot more sense now. Just by eyeballing the spools I thought there wasn't a lot of material to use.
Thanks for the info!
Reply 6 years ago
I certainly consider a turners cube to be a captive part.
And here's a good diagram showing what the infill looks like:
http://img13.deviantart.net/558d/i/2014/041/a/4/3d_printing_infill_by_triplaxis-d75wmax.jpg
Reply 6 years ago
One reason would be the material used... some filament is flexible like rubber... it would never take a tap. You may still want to secure it tight, to make a seal or something. This way you could install nuts at regular intervals, and without the possibility of loosing them. Possibly in a hostile environment, to protect them from rusting for example. It also opened the door for other things, like embedding a circuit board, an LED, a switch, a magnet for sensing, etc. I could see this method being very useful.
6 years ago
Thank you so much for posting this Instructable. I'm so very new to the 3D printing world and I've been thinking there has got to be a way to do this, but I wasn't sure until now. As soon as my new nozzle comes in, I'm definitely going to be trying this!
Reply 6 years ago
Definitely! I'd love to see how it works for you, you should post the results!
Feel free to shoot me a PM if you run into any problems.
Reply 6 years ago
I will definitely try to remember to do that. what I'd also like to learn is how to print treading for bolts and screws. It would be nice to make my own hardware for specific light duty needs.
Reply 6 years ago
Printing actual threads that properly mate can be a bit tricky, mainly due to support and sagging issues.
Modeling the threads isn't too tricky. If you'd like I can whip up a quick little guide on how to do it in Fusion 360.
I've seen people print good threaded items, but I've never had too much success. Let me know how it turns out though, especially if you find a way to make them come out well!
Reply 6 years ago
I just recently got my hands on Fusion 360(a student copy) and was just playing around with the threading and holes. Fusion is a bit different than the 123d I have been using, but I like the extra functionality. my part should be coming from China any day now as I ordered it almost a month ago. I'm definitely going to play around with it and see what I can come up with. I didn't see the threading that I was looking for, though and that makes me a little sad. I was hoping to find a 1/4-20 thread, but only saw 1/4-14. I suppose the coarser thread would be better, but it would be nice to have the extra option.
I've been in touch with a gal from autodesk and she's been feeding me tutorials, but I haven't spent a lot of time playing around with it yet. I should be able to figure everything out for it though. Like everything else, it just takes a bit of patience and time.
6 years ago
Nice instructable! To see an example that I did, check the pic on my 3dHubs page: www.3dhubs.com/Toronto/hubs/jsfieldtech
6 years ago
Thank you! This gives me some new possibilities, which I haven't thought about yet. In case someone is using Cura from Ultimaker 2.3+, the pause setting will be found here:
Go to Extensions/Post Processing/Add a script and you will find the "pause at height" script
Reply 6 years ago
Thanks for the heads up! All I've used so far is Cura and I enjoy it. I was hoping I wouldn't have to learn a bunch of new software.