Great article. This is all above the skill level of the average part on thingiverse or printables, but the good parts on there are going to follow similar ideas. Love the mouse ears, press-fit holes and step-by-step alignment of layers to build impossible bridges.
Notably, in fusion 360 this would all be designed in "plastics" mode, and yet that mode is oblivious to whether the part is printed or moulded. I wonder if any CAD engine can do "production-aware design" that constrains design to the capabilities of standardized machines, e.g. keeping a metal part 3-d millable. I've seen strict design rule enforcement with PCBs, and I have seen sheet metal macros, but nothing for general mechanical CAD.
I'm actually working on something along the lines of:
>CAD engine can do "production-aware design" that constrains design to the capabilities of standardized machines, e.g. keeping a metal part 3-d millable.
by modeling a part by only using subtraction based on tooling:
you'll need: https://pythonscad.org/ but it's allowed me to do pretty much everything I've tried out in it thus far, and I'm putting the finishing touches on a joinery module which should let one make pretty much anything of wood, and metals should be much the same --- even turned out a thread cutting program as a proof of concept a while back.
I've investigated this space, and I'm not entirely sure its even a desired goal from the perspective of a mechanical designer. The benefit tends to be for smaller aspects (ensuring hole sizes are appropriate for the desired thread, or that holes aren't too close to a bend line on a sheet metal part, etc) but the final design of a 3d part is so non-deterministic, and the variety of manufacturing methods are so varied and unique, it might just cause more issues than benefits.
The people I've talked to found it similarly unnecessary. But mainly because they weren't able to imagine a good implementation.
"But what if I want to do x" is what I heard the most. Like, sure, if you want to make your part on a 3-axis router and then drill one sideways hole, then put that in the markup. CAD always seems to have a feature stack, so apply a 3-axis design rule and discard it before the last step. Similar for multiple setups on a mill, or for surface treatment.
The gold standard still seems to be a signed and printed drawing that is never complete and full of implications. Mapping a design to a factory, or even pricing it, is an art form that has resisted automation. I expected this to change with all the "industry 4.0" push from ten years ago, but somehow that just meant adding wi-fi.
Totally just spitballing, I know nothing about this.
Thinking about the problem, it seems like it would be extremely difficult to come up with a set of design rules that cover everything somebody might want to print.
But would it be possible to literally simulate the printing process? Maybe using some kind of CFD code? I mean, for arbitrary designs this could get really complex. But, there’s a hard limit—the thing actually has to get printed, which is a slow mechanical layer-by-layer process, and the end result has to fit in the print chamber, haha.
Fusion has CAM integrated, which is already a small revolution.
Used to be that CAM was entirely separated software, operated by a separate person who usually spoke fluent g-code.(No seriously, old mills had pushbuttons where you could punch in your G72 with coordinates, and the grey beards would do that with no hesitation.)
CAM software simulates the machining process, not dynamically but with constraints and filters that use the results from dynamic measurements. Printer software is actually quite sophisticated there, Klipper knows about machine dynamics as well as how to compensate for acceleration in the molten plastic.
My issue is that all CAM integration only happens after the design stage. I draw up whatever, then check for manufacturability, and then realize that it's failed again. Electronics CAD software for a while now has had real-time design rule checks that don't let me draw an impossible line in the first place, and I kinda want that.
CAD has a number of features to help design engineers with manufacturability. In Fusion, take a look at the Inspect panel - you'll find analysis tools that will highlight areas on your geometry that might have insufficient draft to release from a mold, or areas that might be difficult or impossible to access with a milling tool. With the right extension, you can set EDA-style design rules for injection molded parts.
There are a number of software packages dedicated to design analysis for injection molding, although the price is far out of reach of hobbyists.
> I wonder if any CAD engine can do "production-aware design" that constrains design to the capabilities of standardized machines
At this time, none that I'm aware of. I am considering some manner of FreeCAD workbench that would integrate slicing to allow specific printing techniques to be applied to specific features of the part. I'm still not sure exactly what it would look like or integrate into the workflow yet.
There are DFM tools that you can use on the back end of your design process e.g. through fictiv/protolabs etc. However there is a lot of stuff that is "technically machineable" but way more expensive to do, and it really is an engineer's job to both understand how the part is made, talk to the machinists if they don't, and to trade off the design complexity vs. the engineering needs.
I've been playing with 3D printers for 7 years, and I even assembled mine at home during the pandemic. Some topics described here I already found out by practice and I think most people with experience in 3D printing also do that.
But having everything studied, compiled and explained in that level is just, again, amazing! Not only that, but there are so many other topics covered here that I still have to learn.
This is a fantastic article. It neatly summarizes several tricks that took me years to pick up.
Another useful trick to minimizing material in a print is to not print surfaces at all. Most of the mass in a print is concentrated in the shell. If the top and bottom surfaces are not particularly critical to the function of the part, then you can remove either surface. The slicer can still fill in the volume enclosed by these surfaces with infill. If you use a planar infill, such as a rectilinear, hexagonal, or triangular infill, the parts can look quite nice. This trick works particularly well on mostly flat parts.
I use two TPU parts printed in this manner daily: A phone case [0] and a relief strap for a pair of headphones [1].
> Cut threads into printed parts with a thread tap for quick design of low-reuse joints.
I've found wood screws work well for this. The wood screw can cut its own threads without needing to use a tap.
It does put some stress on the part, though. I mostly print in PETG, which is strong enough; but PLA might split if the hole was parallel to the layers.
> A design limitation of threaded inserts is that they are not reliably usable for screws inserted from the back side. During insertion, heat-set inserts often push some molten plastic into the hole beneath them, preventing easy insertion of a screw from the back side.
A trick I sometimes use:
1. Before installing the insert, insert the screw from the back side
2. Screw the insert onto the protruding screw
3. Use a soldering iron to install the insert+screw together into the plastic
Because the screw is filling the hole, the molten plastic can't block the hole. Instead, the molten plastic forms itself around the screw, and it acts like a Nyloc nut.
In my experience even small machine screws (M3) can cut their own threads into a properly sized hole, and function well enough for a small number of re-assembly. That said, I'm rarely designing for portability, I just find the right sized hole for my printer by printing some test prints.
If you don’t gave a tap handy you can quickly “heat-set” threads in a part. Print the hole slightly undersized (I usually go 0.2-0.4mm under for M3-M4 size screws) so it takes some effort to screw in, then quickly screw the screw all the way in with a cordless drill. Friction should heat it up enough to melt the plastic and form it round the screw. Wait until cool before removing the screw. :)
I know they get a lot of hate in the HN community but my Bambu Labs P1S is mind blowing. It’s so easy to use I print 100x more than with my old Ender. It’s motivated me to learn Fusion360 … i’m actually printing droids for my kids to color this very minute.
Enders were... not a great experience. I understand they were in a good price spot at the time, but from my experience and from what I gather online, very finicky. People who liked tinkering with the printer itself loved and recommended them because 3D printing became a skill of its own (Not for the design considerations in the article, but to make the equipment work consistently).
I've heard that Bambus are much better. I have a Raise3D E2 from the Ender era, and it's rock solid. A step up in price, but no finicking. Just works, when new, and now.
Because a lot of the readers here seem to be comparing Bambus and Enders: These aren't the only options. If you want a similarly-featured and reliable printer that doesn't phone home, I'd recommend taking a look at Prusa.
It's where Bambu forked much of their software from, they're equally easy to use after recent updates, very reliable and easy to service.
They also added US-based manufacturing recently, and I think you can get US-made Core ONEs, which given the tariffs may mean they're soon to be cheaper than equivalent Bambus.
Some people will groan that every 3D printing thread must have a Prusa fanboy, but then again the company inspires that attachment also not without reason :-) I've printed for thousands of hours on my MK4(S) and I've had zero issues, and it's pretty great they offer upgrade kits to turn this into their next-newer model.
I’m a huge Prusa fanboy as well, but Bambu does deserve credit. There’s clearly a before-Bambu and after-Bambu era for 3D printing. Prusa had to adapt (and did, IMO, pretty quickly), and now so have a lot of the other Chinese printer manufacturers.
I totally don’t trust China from a manufacturing perspective. I think it’s literally an intentional policy of the Chinese government to try to de-industrialize the rest of the world (in particular the West and the US, geopolitical rivals), and this is most clearly seen with how China has dominated drone manufacturing and rare earths mining and (just as important) processing. Rare earths is relevant not because it’s irreplaceable or incredibly rare (they’re not, in spite of the name)but because it’s super easy to see the Chinese govt use access to what would otherwise be a kind of niche mineral group as a geopolitical trade weapon. DJI leveraged corporate espionage and stolen IP of rivals (like Parrot) as a launching platform for absolute dominance of what has become a national security relevant sector. And Bambu Labs was started by former DJI folks, so they’re playing some of the same game. But geopolitical motivations aside, they legitimately HAVE upped the game dramatically, bringing to bear just an insane level of electrical engineering, software, and mechanical design and manufacturing expertise on what was not long ago a hobbyist driven sector, producing machines superior to the industrial Statasys machines at a hobbyist price with an Apple-like polish.
But I do think Prusa has, against all odds, actually kept pace. The Mk4S and XL, and then especially the Core One really are comparable machines that keep most of the core of the open source Prusa ethos (although diminished as Prusa got burned by cheap Chinese clones in the past & now doesn’t open source as much) and far less of the corporate control and surveillance embedded in the IoT-ified Bambu machines. The ONLY non-Chinese company to still make competitive machines.
I know two people with that exact model of 3D printer. Both printers are routinely out of commission for weeks on end due to some failure that the owners lack either the technical expertise to diagnose and fix or the desire to pay exorbitant prices for proprietary replacement parts to fix (or both). Meanwhile my Ender 5 is always chugging along, and is never out of commission for more than a day or two while awaiting replacement parts from Amazon that cost between a few cents and up to maybe $20 each.
I don’t actually think Bambu makes unreliable printers; to the contrary, they are excellent machines that, if anything, are much more reliable on the whole than Creality. But they’re kind of like sports cars, in that their target market is either people who want something fast and flashy and are willing to throw money at any problems to make them go away, or for technical types who want something they can take out on the track and don’t mind wrenching their own machines. The problem is that Bambu printers are marketed and touted as being great for beginners, and while they certainly make it easy to get into 3D printing for nontechnical people, I think most of them will end up ultimately being disappointed at either the lack of customization they allow or amount of time, effort, and money required to diagnose and fix them when something goes wrong.
I think that conclusion is wrong, they are absolutely for beginners. No bed leveling. Lidar scan of first layer. Filament sensors. Good software. Enders are sold to beginners but you actually need to be an expert to get good results and keep them running.
We had no issues with our bambu whatsoever. It's a great machine that does exactly what it advertised to do.
It's not magic and faces the same limitations as all other 3D-priters but it's execution is top notch. I can't remember a single instance where I felt the need to change the printer settings in the slicer besides selecting one of the presets.
Our filament purchases went up by at aleast an order of magnitude and new members to our club get the hang of it really quick.y
My Bambu A1 just works. I had an Ender 3 before and it almost killed my interest in 3d printing because my prints constantly failed. I don’t see a path where the A1 could disappoint me.
My biggest complaint is that the filament RFID spec is closed.
BBL parts are not very expensive and their support is stellar. Of course if they go bankrupt we'll be high and dry.
Prior to my two A1s I spent more time, and more money in parts, mucking about with the printers, modifying and calibrating, tweaking Klipper than getting anything done.
Mostly because they are proprietary in a community with an open philosophy, and for being successful doing that.
Most consumer-level 3D printers are derived from the RepRap project, which was about making a 3D printer that prints 3D printers. So if you want your own printer, find someone who already has one to print the specialized parts for you, add a few standard parts (screws, motors, etc...) and build your own, which you can then use to make 3D printers for others. You can then share designs, improve, etc... Totally in the open source spirit, of course, the software part is similarly open source, usually GPL licenced.
And this spirit is found in most of the consumer-level 3D printing world. With open source firmwares and slicers, easy to modify machines, and standard parts. I think one of the the companies that exemplify this the most is Prusa. They 3D print their printers using their own printers, and open source most for their work.
But then BambuLabs came along, and they have proprietary components, a proprietary firmware and a cloud-based system. Their slicer is open source, they don't really have a choice because it is based on GPL software, but they recently made it harder to use the forked version some people made (namely OrcaSlicer), and they did so via an automatic update. Of course people didn't really appreciate.
But maybe the worst part is that BambuLabs printers are actually really great and popular printers, for an affordable (but not cheap) price. And many people think that from now on, proprietary will become the standard.
If you don't care about that, then BambuLabs printers are maybe the best you can get. If you care, go with Prusa. If you are broke and don't mind getting a new hobby, go for something like an Ender3.
Buy used Prusa! Their printers are reliable machines, easy to fix or upgrade. I have seen MK3 or even Prusa Mini (which is a newer option) for ~150 EUR. Still great options for anyone who wants to go into this hobby.
>But maybe the worst part is that BambuLabs printers are actually really great and popular printers, for an affordable (but not cheap) price. And many people think that from now on, proprietary will become the standard.
This is the correct answer. A lot of people got used to eating shit. Turns out the 3D printer industry was selling you overpriced garbage. Bambu Labs was too good to be true so people were thinking that there must be a catch and now that there is a barely significant inconvenience, they start dog piling the company as if all hell had started breaking loose.
Now look at reality: everyone is building copycats of bambu lab printers, proving that the 3D printer industry was selling overpriced garbage products, because they knew they could get away with it. What people really wanted is the alternative reality where bambu Labs didn't exist and printers still sucked.
> Turns out the 3D printer industry was selling you overpriced garbage.
Mostly cheap "garbage" actually. Before BambuLabs, manufacturers competed on price more than anything else, using the Ender3 as a model. BambuLabs printers were considered rather expensive. Kind of an intermediate between semi-professional printers like Ultimakers and Ender3 clones. Even the affordable BambuLabs A1 at its base price is about twice the price of an Ender3.
They did shook things up on the high end though, and this, I think, is a good thing.
Have you got a source for the GPL non compliance ?
If I remember what I saw during the day, and from recaps since then, it was only the Bambu Studio slicer (that is a fork of Prusa Slicer), which was provided with review units but without the source code being released yet. The code was released in time for production units. The only violation of the license is if they did not provide the code to reviewers when asked (which may have happened, but is not as clear cut as what their competitors imply)
My favorite continues to be hardware from Prusa. They're rock solid and respect user freedoms (serviceability/upgradability/hackability). Being made in the EU is also a big upside for me.
I've had an MK3S+ for years and even though it's a primitive machine in comparison to the current Bambu hardware I see no reason to upgrade to something else. It just keeps printing whatever I throw at it and the results continue to be very good. In fact, I seem to have better luck with it than the Bambus I sometimes use at various hacker/makerspaces.
If you just look at the numbers (speed, volume, ...) against Bambu hardware they're not as good, but the reliability and simplicity make up for it IMO. The main missing feature is multi-material support, but that's something I'm not really interested in due to how wasteful the current technology is.
Bambu AMS is useful even if you're doing single color prints - you don't have to worry about filament running out, it'll just continue on the next roll if it has the same filament loaded on two slots. It can also print multiple (small) objects in the same job with only one filament change per object.
Right, but I'm also wary of the extra complexity and whether it's worth it for me personally. (I've seen Bambu AMS systems act up, and I also know they're picky about spools).
Prusa. Made in Europe, from quality components (or buy it as a kit from them and build it yourself, which is a really fantastic experience). Hardware is repairable and upgradable and the firmware is open source.
But they cost more than Bambu. Most Chinese things tend to cost less than alternatives, for obvious reasons.
Note that Prusa recently opened a US-based factory according to their blog, so in addition to EU-made they also got US-made going.
As a big fan of the company I'm hoping this will make them price-competitive to Bambu (or even considerably cheaper) while the tariffs rage. I'm not a fan of the tariffs, but if it gives a boost to the Core ONE launch, welp ... good for them.
While they target a completely different audience (tinkerers and DIY vs "just works") the VORON printers are the gold standard of open source printers, and you'll get a very capable machine when built.
GPL issues and concerns about the SaaS-y aspect. Folks on HN and often techy folks in general don't like it when hardware requires an internet connection vs local control. These concerns are somewhat warranted based on recent moves Bambu has made
Incredible article, learned quite a lot. To me, a very good supplementary reading would be Structures by J. E. Gordon [1]. Helped me grasp a lot of the mechanical design notions necessary for that sort of work.
This looks so good. I’ve gotten into 3D printing in the past six months with an A1 Mini. I initially bought it intending solely to do creative projects with my kid, but I’ve been surprised to find myself getting deeper into printing functional parts. I recently printed a 6” server rack for a GLi.net Beryl and Apple TV for travel, from a combination of pre-designed and self-designed parts.
3D printing as a pursuit can be time-consuming - there’s always a risk with these things that you take them on as a dilettante and they end up gathering dust in a corner. I initially scraped by with some middling Blender skills (leaning into non-destructive operations where possible), but that is far from ideal - you really do need CAD. But to anyone considering jumping in, I would say: if you get an A1 (get the full size, not the Mini) and use Claude to write your parametric OpenSCAD scripts, the time commitment is such that you can _just about_ indulge in this hobby as a dilettante - eg, as a project for your kids. Without LLMs, I think it would be too much of a commitment unless you’re really dedicated, or already have CAD skills.
the Bambu P1S with AMS is one of the better purchases I've made. I've had an ender3v2 for so long and while it worked ok (and arguably better than many people's experiences with them), I got tired of constantly fiddling with stuff.
Now, it just works. It doesn't matter what I throw at it. Made me get into the CAD hobby too.
>use Claude to write your parametric OpenSCAD scripts
I use ChatGPT to help me with OpenSCAD and really enjoy it. It doesn't always nail it, but often works as a shortcut, especially with loops to create radial extrusions. You can muck around with things like asking it to give you code to design a castle, and then see how off-track it is.
Side bar... There are a lot of people who are going to use LLMs to try to do 3D modeling stuff and who are going to hit a wall with it really, really fast. Mechanical design really is a completely different discipline that is very poorly abstractable in the particular way that software engineers are used to.
I disagree. My co-worker is an industrial designer and uses Rhino as his day to day CAD tool of choice. I was delighted to see that it translates everything you do to a command line syntax and there's also Python integration. We did some simple tests the other week and you can actually prototype reasonably well by instructing an LLM to generate the Python code that creates the models. It still requires fine tuning but seems like a similar multiplier like using LLMs for programming to get the boring boilerplate out of the way.
I'd say a good designer will at least 2x, probably 5x. We are preparing to test with students next semester to see how non-experts profit from this.
If you can assemble Legos you can design in Tinkercad. You don't need to mess around trying to get LLMs to write scad files, though the results can be hilarious.
Worth noting: TinkerCAD is capable of parametric modeling in "CodeBlocks" mode. I prefer writing OpenSCAD (by hand, rather than via a warmed-over markov chain), but having the option within something as inviting as TinkerCAD seems great for beginners.
The article states it is specifically geared towards FDM (i.e. filament) 3D printers.
I wonder if anybody with more experience knows how much of this would overlap with SLA (i.e. resin-style) 3D printers.
For example, there's rough guidelines like, overhangs are less of an issue with SLA - and the Z-height is ultimately what most affects print-time, but would be great to see something more in-depth here, with some engineering behind it.
Or if there's similarly in-depth articles for resin 3D printers?
My friend and I have been getting into forge molding carbon fibre using 3d printed molds like this: https://www.youtube.com/watch?v=25PmqM24HEk. It is a great technique for making small batches of really strong parts and I'm surprised it isn't more common.
Has there been any interest in leveraging LLM's for 3d modelling? Sort of an AI assistant with CAD software, to help beginners get going and also more rapidly design simple objects.
Yes, there has been. Unfortunately, there are a few core issues blocking this from becoming a big thing:
1. The majority of 3D modeling is not done parametrically, meaning there is not a lot of data. The little data there is is generally in OpenSCAD, which isn't very powerful or extensible for useful CAD.
2. Generally, when you want to do CAD, you need to come up with a way to define everything precisely. Like I want this hole 2 millimeters from the bottom, and this exact edge next to the hole to be beveled, etc. Saying all that to an LLM is slower than just making the whole.
That said, these still can be useful for beginners, and there are things like Adam AI that are starting to catch on for simple stuff.
> There is no excuse to not add text to a printed part.
Super off-topic, but I've always kind of been let down by the appearance of 3d printed text. As noted, engraved seems to be better than embossed, but it still just looks kind of weird. I envy the clean, crisp labels that seem to be commonplace on commercial injection-molded plastic parts.
The toner transfer technique seems kind of promising. I think I've also seen people spray painting 3d-printed parts, and then lasering away the paint to draw text, which is interesting (if somewhat more materials- and equipment-intensive).
I've heard people have had pretty good luck laser engraving text onto 3d prints with fiber lasers, though it is pretty steep price bump just to get some text on a 3d print
I always thought 3D printing would make multi widget machine[0] manufacturing possible
While it’s done a lot of cool stuff and enabled rapid prototyping etc it never scaled the way I really thought it would
[0]: there may be a better turn for this however this is what I mean: that is one machine that can output a wide variety of different things using the same common material, IE maybe one day it produces ball bearings and the next it could produce a bunch of car pistons, with only having to make minimal changes to the machine itself if not changing anything at all
There are companies with big print farms that offer this service. But of course it’s limited to materials that can be 3D printed, and if the product reaches a certain scale, it’s likely best to invest in injection molding or some other process.
That said, for smaller scale products, news businesses, or things where 3D printing is the only way the thing can exist, these services exist.
"Flexible" or "Quick Turn" manufacturing are terms used for this kind of thing. Quick-turn comes from being able to change from one kind of part to another, quickly, with no added setup cost.
In theory, it seemed perfect for flexible manufacturing: same machine, same material, endless outputs. But in practice, it hit limits in speed, material properties, and post-processing. You still can’t print a high-tolerance metal part at scale and cost-effectively replace traditional machining. It’s amazing for prototyping or niche parts
From a readers perspective as well, this was a long read, but the way it was written was very clear and interesting all the way through. So well done on both counts!
6 months into 3D printing and I couldnt have asked for a better article to stumble upon. What a massive field this is and I love some of the take aways. Paricularly circles into hexagons, and making things adjustable.
I’m not making my own designs yet. It is too difficult. Modifiying a little here using Blender is where Im at
It's super easy to design using OnShape. Hit me up with private message and I will show you everything you need to model 3D printable parts in under 5 minutes.
* Sketch a 2D design on a surface
* Make the elements in that design depend on each other (this is parallel to that, this is equal to the other, X is at an angle to Y) as much as possible
* Pull the 2D shape up into 3D space
Now you know how to design your own things! The rest is just learning the buttons, but there's usually one called "sketch", one called "constrain", and one called "extrude".
Great article. Unfortunately it seems that there is a lot of information out there about DFM for 3D printing but not much about the actual print process itself: temperatures, bed flatness, bed adhesives, nozzle size, etc. Does anyone have any suggestions or resources on the subject?
Are you asking about best practices? Or the theory behind the printing process? I think there is a ton of this actually, because when 3D printing became affordable, the community did a huge amount of experimentation to figure out how to make their $250 Ender reliable.
Stefan's CNC Kitchen is a good channel if you want to see experiments with things like temperatures and materials. https://www.cnckitchen.com/
Or you could look at the original RepRap research and how it's evolved. The MK4S+ is just a very refined version of the original bed slinging printers. There are also papers on slicer development. There has been a trend towards thicker nozzles as slicers have gotten better (eg using 0.6 by default instead of 0.4).
Otherwise advances in printer technology, particularly first layer calibration, have improved massively in the last few years. So things like bed flatness and adhesives are much less of an issue with auto-levelling/probing nozzles. Bear in mind Ultimaker has been doing it this way for years, but it became mainstream (cheap) more recently. Any of the major modern enclosed printers (Prusa Core/XL, Bambu) shouldn't have adhesion problems with standard filaments. It's also highly filament specific, though the really high end machines (Markforged) are reliable in my experience because they discourage any deviation from their recommended materials and print settings.
For example MarkForged - a $10000+ printer - shipped their desktop FDM machine with Elmer's purple glue. They said it worked best in their testing and it still works for me.
I'm looking for best practices, although any theory as it relates to higher quality finished parts is also welcome.
And thank you, I've seen Stefan's work and it seems to be about as good as it gets. I'll take a look at the original RepRap research too, probably some interesting bits in there.
I agree that the really high end machines from Markforged and co look dead reliable, but they remind me of that old quote, "you can make anything on a lathe but money." It took me a fair bit of scrolling through slick marketing pages to find out that they are 5-figure machines that print at half the speed of consumer printers and can't print ABS (but can print $200/kg high strength proprietary filaments!) Instead I just got a handful of the major modern enclosed printers.
Background: I am trying to produce some ABS parts in small volume (10s of kg per day) and going crazy trying to find any decent source of information about the print process. Everything seems to be based on anecdotes and if you're lucky maybe a Youtube video.
Here is what I have gathered so far, in case it helps anyone: 1) print ABS enclosed in a chamber temp of a minimum 50C, ideal 60-80C. 2) use quality filament, Polymaker filament is good; issues are plastic composition and diameter variation. 3) dry the filament properly. 4) the fumes will destroy your lungs and eventually the printers themselves, so they need to be vented out, and also filtered inside the enclosure. 5) bed flatness is critical. 6) use a good bed adhesive such as Magigoo.
My gut feeling is that 10s of kg per day should be injection molded. Or SLS/resin printed so you can take advantage of layer speed. That's what 10x printers running at full tilt constantly, at least?
Plan is definitely to injection mold at some point, but this is for several different complex parts that will be expensive to mill molds for. The breakeven point between injection molding and 3D printing is really about the cost of the molds. Let's imagine a 1kg part. If you say 10x $1000 printers at 1-2kg/day and $10-20/kg filament then you can produce 900-1800 parts in 90 days for a total of $15-30/part. Meanwhile with injection molding you have a mold cost of $5k-50k and say $3/kg for pellets, so for 1k parts it costs $8-53/part. So if you're making a thousand 1kg simple parts ($5k mold), molding will be better. Making a thousand complex parts ($50k mold), 3D printing is better. And making five complex parts (5x$50k mold), you can do a lot of 3D printing before injection molding becomes competitive.
I am also in a bit of an unusual situation because of the size of the parts: voluminous enough that shipping from the manufacturer is no longer negligible.
Oh, and unfortunately can't do resin because of strength reasons. 3D printed ABS is already pushing it.
Yeah that's tricky. I suggest Occam's razor: environmental control is likely to be the most serious factor? Any $1k printer should be able to extrude filament at the right rate in the right place, and I don't know that ABS is particularly challenging to melt. The difficulty seems to be in fume management (extraction) and the parts not warping on the bed?
Or you pay a lot of money for a higher end printer and make use of a support contract where they can figure out where your parts are failing.
One other suggestion would be to contract the parts out to a company like Shapeways and see if people are actually able to reliably make them in low volume, then try to replicate. May be a dumb question, but presumably you've tried to print the same parts in PLA or a more forgiving material to confirm that they are "printable"?
If you're printing ABS, you do not need magigoo or any special 3d printing adhesive. Forget it. Among the most useful characteristics of ABS is that it's soluble in acetone.
Dissolve a portion of ABS in pure acetone (often available as nail polish remover). You're looking for something very roughly the consistency of milk. Colloquially this is called 'ABS juice'. Apply a thin coat to your bed/buildplate in the print area. I use a small amber glass bottle with a brush, but there are certainly faster ways to do this if you're doing a lot of printing every day. You now have a thin layer of ABS strongly attached to the surface of your bed. When you print ABS on top of this, it will be strongly attached to this, just the same as the layers adhere to each other.
You should be aware that acetone will damage PEI. It won't instantly destroy them, but it's something to be aware of. As a hobbyist, I just dedicated one side of my buildplate to ABS and don't care about the damage. You could just as easily use a different bed/buildplate material, though, since you're adhering the prints with ABS juice. I have had success with Kapton sheets in the past.
For hot-end temperatures, this is something you actually are best off figuring out yourself. To some degree, it depends on what you're doing and also your setup. Filaments generally come with a documented temperature range, but that should just be considered an initial starting point for testing. You should test print at different temperatures. The classic 'temperature tower' is a diagnostic print used for this purpose. Colder prints (to a point) will have crisper details and superior bridging. Hotter prints are stronger. ABS particularly loves to be printed hot, and when printed really hot I have found that layer failure pretty much stops occurring. ABS also abhors cooling. When testing cooling %s with a temperature tower, I found that even a small amount of cooling massively reduced layer adhesion. This does mean that if you're printing ABS for strength, you'll need to seriously limit overhangs and bridging at the design and slicing stage. Also consider that your nozzle can have an effect. It's often suggested to bump your print temperatures if you use a hardened steel nozzle.
Plastic composition is definitely something to be concerned about. Polymaker is solid. My favorite brand for ABS is Atomic Filament but they're too pricy to use in large quantities, so I save it for specific projects. For just one example of how things can get off with some brands, if you acetone vapor polish Hatchbox ABS it gets a matte texture instead of shiny, likely indicating there's something in there besides ABS.
Bed flatness is critical, but it's not something you should have to worry about. Good machines should have a decently flat and rigid bed to begin with, and even remotely modern machines also have mesh bed leveling features that correct for bed errors in software. It's usually not an issue nowadays. Back in the day, people would compensate by printing on a raft.
I didn't see you mention nozzles. If you're printing in ABS it's unlikely to be a pressing issue, but do consider that nozzles are a wear component and some filaments are abrasive. You will eventually need to replace your nozzles, as a worn nozzle can badly harm print quality.
The moment the teacher realizes it was never about the perceived correct answer, but the questions that led to the paths taken. The sudden realization that teaching is more than the teacher initially perceived. Its not about teaching "this is so", but rather, "why do we know this is so?".
Which is what education should have always been about. It's not about responding with the correct answer. It's about asking the right questions. A famous Greek philosopher knew this, as did many before and after.
One technique which bears mentioning is printing in 100% infill using a filament which will allow re-heating/cooling and then putting it in a tray of powder salt (very finely ground table salt) and then backing and cooling it.
Nice article, though what I'd personally love to see is a resource where I can go from zero to actually making (basic) designs using open source tools, which can then be taken to a 3D printer and printed.
Give SolveSpace a try. It's fantastic for 2D sketches and then you can extrude/revolve/subtract these sketches into other solids to build up your part. It can export to STEP or STL and then it's an easy trip through the slicer and you're ready to print!
If you're more programming minded, try out RepliCAD. Or if you don't mind dealing with Python and its build ecosystem, there's CADQuery or Build123d
The learning curve was steep, but FreeCAD has allowed me to start playing with 3d printing gears and other things on my Bambu Lab P1S. I'm largely self taught with electronics and programming, so just starting and making small experiments got me going. For inspiration, there are lots of sites that share 3d print designs.
Would you say Blender is a nice tool for this purpose? I'd much rather learn one graphical tool which does a lot of different stuff than lots of different graphical tools that do different specific things (it's a different story in the terminal though :))
Blender is serviceable for simple stuff, but you really want CAD for mechanical parts.
Think figurines (Blender) vs gears (CAD).
Constraints, among many other important features, just aren't as well represented in Blender.
An analogy is C vs JavaScript. Can you do "memory management" in JavaScript? Sure, but you're fighting the tool. Ditto for building a complex frontend in C.
The desire to "just learn one thing" is naturally strong. But the "design 3d things" problem space is as large (if not larger) than "programming computers". Hence the proliferation of tools with very different approaches (the underlying representation in CAD is generally brep [1], which is much different than vertices / edges / faces at the core of Blender)
The good news is the underlying thinking is somewhat transferrable, especially for core concepts.
Parametric modelling isn't really there in Blender, but Blender is too good to not use. And it is still improving at an astonishing rate.
For me Blender has all I need for creating Models for 3D-Printing. And if e.g. Geometry-Nodes get some more love in Blender, they could become a base for proper parametric modelling...
It's not really suitable. Blender uses polygonal modeling, which is quite limiting. It's possible but very difficult compared to CAD, unless you're modeling something organic like human figures.
I'm currently using Shapr3D and it's very quick to design simple parts. Blender doesn't have any of the tools which I'm using in Shapr3D, such as sketches, constraints, parametric modeling etc. and most of the direct modeling tools are just way easier to use than Blender.
This is fantastic-- while I'm aware of most of the techniques in it, it would have saved me a ton of time and trouble if I had it a few years ago.
Each of the points could basically be expanded to an article on their own. E.g. they don't mention for vase mode that you can get much better results using a big nozzle with it.
I'd love to read an article (or watch a video) of such depth and expertise about techniques for printing parts in place, which this article just touches on.
This article reminds me of another I read first here, 'Reality Has A Surprising Amount of Detail' by John Salvatier. At first blush 3D printing seems easy, but especially with smaller parts that might go through many duty cycles it's anything but. I'm going to have to do more than skim this, I think this one is worth multiple reads over many days to really absorb the densely packed information.
Thanks to the author for being willing to put so much of their hard-earned experience into a resource for the rest of us.
There are lemons, but generally Prusa is excellent for that, yes. My Mk3s has been working reliably for six years. The only problem I ever had with it was an error I made in assembly. I can go six months without using it or use it every day all day for a week and it prints reliably either way.
I'm not sure anything 'just works'. I have an Ender 3 S1 with autoleveling. I still have to adjust 4 knobs while getting under the print head with a feeler gauge. It's absolutely maddening. I need to do this with every print. If I don't touch the thing for a few months it's really bad. If you don't get it right it will gauge your printing surface or alternatively rip your piece apart as it prints. Then you need to know about bed temperature, nozzle temperature, and a hundred other things. Then what types of filament work best with certain bed types. I wish I never got it.
I've never any sort of pre-print processing/calibration on my Prusa MK4(S), other than cleaning the build plate. This sort of hand-holding really isn't required anymore on the modern printers.
Slicers also come with presets for different filaments these days, which generally do a reasonable job and knowing about temps & co is largely optional to getting going.
Yes, Prusa and Bambu should both be reliable. I've been printing with Prusa MK3s for a couple of years without any problems. I think I've had just one failed print and it was because there was dust on the plate and I needed to wash it with water and soap.
Yeah, they're work horses. I've printed for thousands of hours on my MK4(S) now, and it's still going strong. I've had no issues at all. Similar experiences around me.
Circles are not that harmful if you print a diameter template with 1-10mm holes with 0.1 or 0.2 step. Don't measure your bolt, stick it into the hole where it's tight enough and you're good to go.
- Solvespace --- small and lightweight, the UI may be a bit off-putting
- FreeCAD --- hugely improved in the recent 1.0 release, this is a large and impressive system
- Dune 3D --- the new kid on the block, it has the advantage of a modern appearance and UI standards, and the consistency of being a one-man project
If one moves away from traditonal/contemporary CAD there are a few other options:
- BRL-CAD --- intensely old-school, this is one of the oldest opensource codebases
- OpenSCAD --- programmatic CAD, this has inspired more successors than I would care to count (esp. look up libfive and Matt Keeter's Master's Thesis if you are academically mathematically oriented)
For that last, one of the more successful hybrids is "OpenPythonSCAD" which is just what it says on the tin --- Python in OpenSCAD:
OpenSCAD is an underrated but powerful modeling tool, especially for developers and engineers who appreciate precision and code-driven design. It has a low barrier to entry — the syntax is simple, yet expressive — and with just a bit of practice, you can build tight, parametric models that are incredibly robust.
One of its standout features is the `hull()` function, which computes the convex hull of multiple shapes. When used skillfully, `hull()` becomes more than a geometric operation — it’s a design primitive that lets you smoothly bridge components, create enclosures, and generate complex organic forms without manual sculpting. It's like having a smart “connective tissue” for your model.
If you're comfortable with code and want exact control over your 3D prints or CAD designs, OpenSCAD delivers precision with minimal overhead. It rewards clean thinking and composability — making it ideal for rapid prototyping, parametric part libraries, and even mechanical design.
I've been a newbie too and tried to use FreeCAD as others mentioned but I found myself enjoying build123d (basically a python library that uses an long-existing technology called OpenCascade and a viewer called OCPViewer generally used within visual studio code).
The learning curve is still there, but I felt more empowered to adjust/share 3d printing designs made in it over dealing with quirks of GUI-based CAD applications. The discord community on there is rather helpful too.
I'll still use FreeCAD on occasion as a secondary viewer for stl files, though my hope is to use build123d entirely including for describing joints as well.
BTW there is an open source project on GitHub named 'Mayo' which is a pretty incredible viewer for 3d files including most CAD formats. 'F3d' is another great viewer. Both are cross platform.
> does anyone has any good tips for a complete Newbie where to begin?
Start with Tinkercad: https://www.tinkercad.com. It runs on the browser, it has some limitations, but it is really simple to use, just open and model whatever you want joining and extracting shapes and importing SVGs for extrusion.
After that, if you know any programming language you'll find OpenSCAD easy to learn. I gave a course last year about it, the slides are available here: https://lucasoshiro.github.io/posts-en/2024-03-24-openscad/. They are in Portuguese, if someone shows interest I can translate them to English, but I think they are easy to follow even by non-speakers.
Onshape is amazing. The learning curve is much more forgiving than other software while still being a feature-rich, optionally constraint-based and parametrizable CAD application. It works on any OS, even on a laptop with an iGPU, a Chromebook, and for basic stuff like exporting a part for printing, a phone.
Consider signing up via your favorite YouTuber's sponsorship link to support them.
Downsides are that the CAM plugin is paid-only (irrelevant for 3D printing) and you're obviously trapping yourself in a commercial, proprietary walled garden that might start charging subscription fees or otherwise rug-pull you once it gets popular enough. I've decided that the ease of use benefit is high enough to warrant the risk - I'd rather risk not being able to edit my models in the future than not creating them in the first place because the alternative software is too painful to use.
It's helpful to understand how the software works, because it's different from what you might have experienced from other software: It essentially stores operations, like "start with this sketch, then extrude this part of it to a height of 10 mm, then add a fillet". You can go back and edit previous steps and the following steps will be directly re-applied.
In sketch mode, you can just draw, but you can also add arbitrary constraints, e.g. "these points have to be exactly 3 cm away" and it will adjust your sketch to match the (new) constraints. This makes it really easy to change some aspect of the part later. This is common in CAD software, although OnShape's implementation seems more intuitive to me than e.g. Fusion 360.
If you want to do actual 3D CAM (for CNC machining), Fusion360 seems to be the only free option (not available for Linux).
In general, with all CAD software, the common "just poke at it until you figure out how it works" approach doesn't work well, although once you've understood the basic concepts that I've explained above and know some CAD terms/concepts like creating 3D parts by extruding or rotating 2d drawings, Onshape will mostly let you get away with that approach. You probably should still watch tutorials before you start.
Is there any realistic free alternative for 3D (not 2.5D) parts?
You certainly won't want to use it for mass production, but for hobbyist use where getting the model and CAM config right, setting up the machine etc. are the biggest time sink and most parts are made in quantity 1, I found it acceptable.
FreeCAD has a built-in CAM. It's not very powerful, but it's only going to get better with time (while the proprietary alternatives will only continue to get worse as companies try to squeeze money out of their users).
I just got started recently with OpenSCAD - it's a different beast, but very useful for simple parametric designs. You write code to describe the form of your object - no clicking and dragging things at all.
Learn FreeCAD. Getting trapped in commercial software and having to abandon years and years worth of project files isn't a mistake I'm making twice. Fusion seems attractive, but look at how they treat their shit tier users.
While this is a good idea in theory, one needs quite a lot of patience to deal with its bugs and kernel limitations. It has definitely become much better since 1.0, but the inability to put chamfers and fillets wherever is extremely annoying — whether the features compute is order-dependent and they routinely conflict with each other for unclear reasons.
So, maybe it’s not a bad idea to start with a free version of something more ergonomic, just to avoid getting too discouraged.
I use Fusion 360. Free for hobbyists. Yeah it's quirky and they constantly screw the free plan out of features (e.g. less saved editable designs, having to use the cloud to export STL) but it is also a highly capable tool that aligned best with the stuff I already knew.
Not entirely sure if it's available for Linux.
I probably shouldn't use autodesk but I'm not trying to make the world a better place. Just to unleash my creativity.
I'm pretty sure this now also leverages the cloud converter. It doesn't quite show as much because they've massively sped up the cloud conversion. It used to take minutes, now it is almost instant. However when the cloud is down it still doesn't work, so it's still cloud based for sure.
Ah I see. I've been looking at FOSS options like FreeCAD and Blender but both didn't feel right (especially blender as it's more a tool for animators).
And I rather spend my limited free time creating stuff than to learn a new tool. Unless it is actually a more powerful one for the purpose that enables me to do things I can't now. But this doesn't seem to be the case.
It's the same reason I use BambuLab printers. My hobby is making stuff, not tinkering with printers. They're just tools, a means to an end.
Ps forgive me my defensive attitude but I often get people at the makerspace that take my choice of tools as a political statement. But I don't care. I just want to use what does the job for me.
I can't vouch for this, but maybe you could get SolidWorks working in Wine? (e.g. https://github.com/cryinkfly/SOLIDWORKS-for-Linux). Of note, SolidWorks is cheap if you're a student or veteran, for a non-commercial license. It is a dramatic improvement over FreeCAD. (I wish CAS were in a state like EDA and artistic model makers where the free/OSS software was on par with commercial, but we are not.)
I use FreeCAD, but it definitely leaves some UX refinement to be desired. There are a couple of web based options like OnShape that seem to work well, too.
OnShape is great (we have been using it exclusively for a project over the past four months, the collaboration tools are phenomenal), but FreeCAD has made some fantastic progress over the past year. Some of the underlying technology problems have solved, and the UX has improved a lot with 1.0. The customization and scripting opportunities are also wonderful with FreeCAD. That said, if you’re coming over from Solidworks/NX/Inventor, as much as there are buggy parts of those, FreeCAD still has extremely frustrating workflows and buggy parts that you have to work around. It feels like it’s moving closer to Blender-like quality, but it still has a long road ahead of it.
All of Solidworks, Onshape, and Freecad have a very similar operating philosophy (I believe they're all based on the same backend engine). I used onshape for a while because I found freecad unusable but recent improvements solved most of those issues and now I prefer freecad.
Great article. This is all above the skill level of the average part on thingiverse or printables, but the good parts on there are going to follow similar ideas. Love the mouse ears, press-fit holes and step-by-step alignment of layers to build impossible bridges.
Notably, in fusion 360 this would all be designed in "plastics" mode, and yet that mode is oblivious to whether the part is printed or moulded. I wonder if any CAD engine can do "production-aware design" that constrains design to the capabilities of standardized machines, e.g. keeping a metal part 3-d millable. I've seen strict design rule enforcement with PCBs, and I have seen sheet metal macros, but nothing for general mechanical CAD.
I'm actually working on something along the lines of:
>CAD engine can do "production-aware design" that constrains design to the capabilities of standardized machines, e.g. keeping a metal part 3-d millable.
by modeling a part by only using subtraction based on tooling:
https://github.com/WillAdams/gcodepreview
you'll need: https://pythonscad.org/ but it's allowed me to do pretty much everything I've tried out in it thus far, and I'm putting the finishing touches on a joinery module which should let one make pretty much anything of wood, and metals should be much the same --- even turned out a thread cutting program as a proof of concept a while back.
Oh, that looks nifty. I'm going to take a closer look at this!
I've investigated this space, and I'm not entirely sure its even a desired goal from the perspective of a mechanical designer. The benefit tends to be for smaller aspects (ensuring hole sizes are appropriate for the desired thread, or that holes aren't too close to a bend line on a sheet metal part, etc) but the final design of a 3d part is so non-deterministic, and the variety of manufacturing methods are so varied and unique, it might just cause more issues than benefits.
The people I've talked to found it similarly unnecessary. But mainly because they weren't able to imagine a good implementation.
"But what if I want to do x" is what I heard the most. Like, sure, if you want to make your part on a 3-axis router and then drill one sideways hole, then put that in the markup. CAD always seems to have a feature stack, so apply a 3-axis design rule and discard it before the last step. Similar for multiple setups on a mill, or for surface treatment.
The gold standard still seems to be a signed and printed drawing that is never complete and full of implications. Mapping a design to a factory, or even pricing it, is an art form that has resisted automation. I expected this to change with all the "industry 4.0" push from ten years ago, but somehow that just meant adding wi-fi.
Totally just spitballing, I know nothing about this.
Thinking about the problem, it seems like it would be extremely difficult to come up with a set of design rules that cover everything somebody might want to print.
But would it be possible to literally simulate the printing process? Maybe using some kind of CFD code? I mean, for arbitrary designs this could get really complex. But, there’s a hard limit—the thing actually has to get printed, which is a slow mechanical layer-by-layer process, and the end result has to fit in the print chamber, haha.
Fusion has CAM integrated, which is already a small revolution.
Used to be that CAM was entirely separated software, operated by a separate person who usually spoke fluent g-code.(No seriously, old mills had pushbuttons where you could punch in your G72 with coordinates, and the grey beards would do that with no hesitation.)
CAM software simulates the machining process, not dynamically but with constraints and filters that use the results from dynamic measurements. Printer software is actually quite sophisticated there, Klipper knows about machine dynamics as well as how to compensate for acceleration in the molten plastic.
My issue is that all CAM integration only happens after the design stage. I draw up whatever, then check for manufacturability, and then realize that it's failed again. Electronics CAD software for a while now has had real-time design rule checks that don't let me draw an impossible line in the first place, and I kinda want that.
CAD has a number of features to help design engineers with manufacturability. In Fusion, take a look at the Inspect panel - you'll find analysis tools that will highlight areas on your geometry that might have insufficient draft to release from a mold, or areas that might be difficult or impossible to access with a milling tool. With the right extension, you can set EDA-style design rules for injection molded parts.
There are a number of software packages dedicated to design analysis for injection molding, although the price is far out of reach of hobbyists.
> I wonder if any CAD engine can do "production-aware design" that constrains design to the capabilities of standardized machines
At this time, none that I'm aware of. I am considering some manner of FreeCAD workbench that would integrate slicing to allow specific printing techniques to be applied to specific features of the part. I'm still not sure exactly what it would look like or integrate into the workflow yet.
There are DFM tools that you can use on the back end of your design process e.g. through fictiv/protolabs etc. However there is a lot of stuff that is "technically machineable" but way more expensive to do, and it really is an engineer's job to both understand how the part is made, talk to the machinists if they don't, and to trade off the design complexity vs. the engineering needs.
Amazing. Again: amazing!
I've been playing with 3D printers for 7 years, and I even assembled mine at home during the pandemic. Some topics described here I already found out by practice and I think most people with experience in 3D printing also do that.
But having everything studied, compiled and explained in that level is just, again, amazing! Not only that, but there are so many other topics covered here that I still have to learn.
Great work, thank you!
This is a fantastic article. It neatly summarizes several tricks that took me years to pick up.
Another useful trick to minimizing material in a print is to not print surfaces at all. Most of the mass in a print is concentrated in the shell. If the top and bottom surfaces are not particularly critical to the function of the part, then you can remove either surface. The slicer can still fill in the volume enclosed by these surfaces with infill. If you use a planar infill, such as a rectilinear, hexagonal, or triangular infill, the parts can look quite nice. This trick works particularly well on mostly flat parts.
I use two TPU parts printed in this manner daily: A phone case [0] and a relief strap for a pair of headphones [1].
[0] https://www.printables.com/model/615154-google-pixel-8-case
[1] https://www.printables.com/model/577575-hifiman-comfort-stra...
> Cut threads into printed parts with a thread tap for quick design of low-reuse joints.
I've found wood screws work well for this. The wood screw can cut its own threads without needing to use a tap.
It does put some stress on the part, though. I mostly print in PETG, which is strong enough; but PLA might split if the hole was parallel to the layers.
> A design limitation of threaded inserts is that they are not reliably usable for screws inserted from the back side. During insertion, heat-set inserts often push some molten plastic into the hole beneath them, preventing easy insertion of a screw from the back side.
A trick I sometimes use:
1. Before installing the insert, insert the screw from the back side
2. Screw the insert onto the protruding screw
3. Use a soldering iron to install the insert+screw together into the plastic
Because the screw is filling the hole, the molten plastic can't block the hole. Instead, the molten plastic forms itself around the screw, and it acts like a Nyloc nut.
In my experience even small machine screws (M3) can cut their own threads into a properly sized hole, and function well enough for a small number of re-assembly. That said, I'm rarely designing for portability, I just find the right sized hole for my printer by printing some test prints.
If you don’t gave a tap handy you can quickly “heat-set” threads in a part. Print the hole slightly undersized (I usually go 0.2-0.4mm under for M3-M4 size screws) so it takes some effort to screw in, then quickly screw the screw all the way in with a cordless drill. Friction should heat it up enough to melt the plastic and form it round the screw. Wait until cool before removing the screw. :)
I know they get a lot of hate in the HN community but my Bambu Labs P1S is mind blowing. It’s so easy to use I print 100x more than with my old Ender. It’s motivated me to learn Fusion360 … i’m actually printing droids for my kids to color this very minute.
Enders were... not a great experience. I understand they were in a good price spot at the time, but from my experience and from what I gather online, very finicky. People who liked tinkering with the printer itself loved and recommended them because 3D printing became a skill of its own (Not for the design considerations in the article, but to make the equipment work consistently).
I've heard that Bambus are much better. I have a Raise3D E2 from the Ender era, and it's rock solid. A step up in price, but no finicking. Just works, when new, and now.
Because a lot of the readers here seem to be comparing Bambus and Enders: These aren't the only options. If you want a similarly-featured and reliable printer that doesn't phone home, I'd recommend taking a look at Prusa.
It's where Bambu forked much of their software from, they're equally easy to use after recent updates, very reliable and easy to service.
They also added US-based manufacturing recently, and I think you can get US-made Core ONEs, which given the tariffs may mean they're soon to be cheaper than equivalent Bambus.
Some people will groan that every 3D printing thread must have a Prusa fanboy, but then again the company inspires that attachment also not without reason :-) I've printed for thousands of hours on my MK4(S) and I've had zero issues, and it's pretty great they offer upgrade kits to turn this into their next-newer model.
I’m a huge Prusa fanboy as well, but Bambu does deserve credit. There’s clearly a before-Bambu and after-Bambu era for 3D printing. Prusa had to adapt (and did, IMO, pretty quickly), and now so have a lot of the other Chinese printer manufacturers.
I totally don’t trust China from a manufacturing perspective. I think it’s literally an intentional policy of the Chinese government to try to de-industrialize the rest of the world (in particular the West and the US, geopolitical rivals), and this is most clearly seen with how China has dominated drone manufacturing and rare earths mining and (just as important) processing. Rare earths is relevant not because it’s irreplaceable or incredibly rare (they’re not, in spite of the name)but because it’s super easy to see the Chinese govt use access to what would otherwise be a kind of niche mineral group as a geopolitical trade weapon. DJI leveraged corporate espionage and stolen IP of rivals (like Parrot) as a launching platform for absolute dominance of what has become a national security relevant sector. And Bambu Labs was started by former DJI folks, so they’re playing some of the same game. But geopolitical motivations aside, they legitimately HAVE upped the game dramatically, bringing to bear just an insane level of electrical engineering, software, and mechanical design and manufacturing expertise on what was not long ago a hobbyist driven sector, producing machines superior to the industrial Statasys machines at a hobbyist price with an Apple-like polish.
But I do think Prusa has, against all odds, actually kept pace. The Mk4S and XL, and then especially the Core One really are comparable machines that keep most of the core of the open source Prusa ethos (although diminished as Prusa got burned by cheap Chinese clones in the past & now doesn’t open source as much) and far less of the corporate control and surveillance embedded in the IoT-ified Bambu machines. The ONLY non-Chinese company to still make competitive machines.
I know two people with that exact model of 3D printer. Both printers are routinely out of commission for weeks on end due to some failure that the owners lack either the technical expertise to diagnose and fix or the desire to pay exorbitant prices for proprietary replacement parts to fix (or both). Meanwhile my Ender 5 is always chugging along, and is never out of commission for more than a day or two while awaiting replacement parts from Amazon that cost between a few cents and up to maybe $20 each.
I don’t actually think Bambu makes unreliable printers; to the contrary, they are excellent machines that, if anything, are much more reliable on the whole than Creality. But they’re kind of like sports cars, in that their target market is either people who want something fast and flashy and are willing to throw money at any problems to make them go away, or for technical types who want something they can take out on the track and don’t mind wrenching their own machines. The problem is that Bambu printers are marketed and touted as being great for beginners, and while they certainly make it easy to get into 3D printing for nontechnical people, I think most of them will end up ultimately being disappointed at either the lack of customization they allow or amount of time, effort, and money required to diagnose and fix them when something goes wrong.
I think that conclusion is wrong, they are absolutely for beginners. No bed leveling. Lidar scan of first layer. Filament sensors. Good software. Enders are sold to beginners but you actually need to be an expert to get good results and keep them running.
We had no issues with our bambu whatsoever. It's a great machine that does exactly what it advertised to do.
It's not magic and faces the same limitations as all other 3D-priters but it's execution is top notch. I can't remember a single instance where I felt the need to change the printer settings in the slicer besides selecting one of the presets.
Our filament purchases went up by at aleast an order of magnitude and new members to our club get the hang of it really quick.y
My Bambu A1 just works. I had an Ender 3 before and it almost killed my interest in 3d printing because my prints constantly failed. I don’t see a path where the A1 could disappoint me.
My biggest complaint is that the filament RFID spec is closed.
BBL parts are not very expensive and their support is stellar. Of course if they go bankrupt we'll be high and dry.
Prior to my two A1s I spent more time, and more money in parts, mucking about with the printers, modifying and calibrating, tweaking Klipper than getting anything done.
as I said, as a Bambu owner, i’m really impressed with mine and highly recommend them to others.
Hate? I missed this. Why hate?
Mostly because they are proprietary in a community with an open philosophy, and for being successful doing that.
Most consumer-level 3D printers are derived from the RepRap project, which was about making a 3D printer that prints 3D printers. So if you want your own printer, find someone who already has one to print the specialized parts for you, add a few standard parts (screws, motors, etc...) and build your own, which you can then use to make 3D printers for others. You can then share designs, improve, etc... Totally in the open source spirit, of course, the software part is similarly open source, usually GPL licenced.
And this spirit is found in most of the consumer-level 3D printing world. With open source firmwares and slicers, easy to modify machines, and standard parts. I think one of the the companies that exemplify this the most is Prusa. They 3D print their printers using their own printers, and open source most for their work.
But then BambuLabs came along, and they have proprietary components, a proprietary firmware and a cloud-based system. Their slicer is open source, they don't really have a choice because it is based on GPL software, but they recently made it harder to use the forked version some people made (namely OrcaSlicer), and they did so via an automatic update. Of course people didn't really appreciate.
But maybe the worst part is that BambuLabs printers are actually really great and popular printers, for an affordable (but not cheap) price. And many people think that from now on, proprietary will become the standard.
If you don't care about that, then BambuLabs printers are maybe the best you can get. If you care, go with Prusa. If you are broke and don't mind getting a new hobby, go for something like an Ender3.
> If you are broke <...>
Buy used Prusa! Their printers are reliable machines, easy to fix or upgrade. I have seen MK3 or even Prusa Mini (which is a newer option) for ~150 EUR. Still great options for anyone who wants to go into this hobby.
>But maybe the worst part is that BambuLabs printers are actually really great and popular printers, for an affordable (but not cheap) price. And many people think that from now on, proprietary will become the standard.
This is the correct answer. A lot of people got used to eating shit. Turns out the 3D printer industry was selling you overpriced garbage. Bambu Labs was too good to be true so people were thinking that there must be a catch and now that there is a barely significant inconvenience, they start dog piling the company as if all hell had started breaking loose.
Now look at reality: everyone is building copycats of bambu lab printers, proving that the 3D printer industry was selling overpriced garbage products, because they knew they could get away with it. What people really wanted is the alternative reality where bambu Labs didn't exist and printers still sucked.
> Turns out the 3D printer industry was selling you overpriced garbage.
Mostly cheap "garbage" actually. Before BambuLabs, manufacturers competed on price more than anything else, using the Ender3 as a model. BambuLabs printers were considered rather expensive. Kind of an intermediate between semi-professional printers like Ultimakers and Ender3 clones. Even the affordable BambuLabs A1 at its base price is about twice the price of an Ender3.
They did shook things up on the high end though, and this, I think, is a good thing.
Non-compliance with GPL and other opensource licensing.
Predatory licensing agreements and cloud software which presumably allows the company to access/steal designs.
Have you got a source for the GPL non compliance ?
If I remember what I saw during the day, and from recaps since then, it was only the Bambu Studio slicer (that is a fork of Prusa Slicer), which was provided with review units but without the source code being released yet. The code was released in time for production units. The only violation of the license is if they did not provide the code to reviewers when asked (which may have happened, but is not as clear cut as what their competitors imply)
What are some alternatives? Ty in advance for any hint!
My favorite continues to be hardware from Prusa. They're rock solid and respect user freedoms (serviceability/upgradability/hackability). Being made in the EU is also a big upside for me.
I've had an MK3S+ for years and even though it's a primitive machine in comparison to the current Bambu hardware I see no reason to upgrade to something else. It just keeps printing whatever I throw at it and the results continue to be very good. In fact, I seem to have better luck with it than the Bambus I sometimes use at various hacker/makerspaces.
If you just look at the numbers (speed, volume, ...) against Bambu hardware they're not as good, but the reliability and simplicity make up for it IMO. The main missing feature is multi-material support, but that's something I'm not really interested in due to how wasteful the current technology is.
Bambu AMS is useful even if you're doing single color prints - you don't have to worry about filament running out, it'll just continue on the next roll if it has the same filament loaded on two slots. It can also print multiple (small) objects in the same job with only one filament change per object.
Right, but I'm also wary of the extra complexity and whether it's worth it for me personally. (I've seen Bambu AMS systems act up, and I also know they're picky about spools).
Thanks for the throughout reply!!
Prusa. Made in Europe, from quality components (or buy it as a kit from them and build it yourself, which is a really fantastic experience). Hardware is repairable and upgradable and the firmware is open source.
But they cost more than Bambu. Most Chinese things tend to cost less than alternatives, for obvious reasons.
Note that Prusa recently opened a US-based factory according to their blog, so in addition to EU-made they also got US-made going.
As a big fan of the company I'm hoping this will make them price-competitive to Bambu (or even considerably cheaper) while the tariffs rage. I'm not a fan of the tariffs, but if it gives a boost to the Core ONE launch, welp ... good for them.
While they target a completely different audience (tinkerers and DIY vs "just works") the VORON printers are the gold standard of open source printers, and you'll get a very capable machine when built.
Raise3D. Even the lower-end ones are expensive, but they're a step up in reliability.
GPL issues and concerns about the SaaS-y aspect. Folks on HN and often techy folks in general don't like it when hardware requires an internet connection vs local control. These concerns are somewhat warranted based on recent moves Bambu has made
More than that. They tried to gaslight people after people found out the changes Bambu Lab was making.
Incredible article, learned quite a lot. To me, a very good supplementary reading would be Structures by J. E. Gordon [1]. Helped me grasp a lot of the mechanical design notions necessary for that sort of work.
[0]: https://archive.org/details/StructuresOrWhyThingsDontFallDow...
This looks so good. I’ve gotten into 3D printing in the past six months with an A1 Mini. I initially bought it intending solely to do creative projects with my kid, but I’ve been surprised to find myself getting deeper into printing functional parts. I recently printed a 6” server rack for a GLi.net Beryl and Apple TV for travel, from a combination of pre-designed and self-designed parts.
3D printing as a pursuit can be time-consuming - there’s always a risk with these things that you take them on as a dilettante and they end up gathering dust in a corner. I initially scraped by with some middling Blender skills (leaning into non-destructive operations where possible), but that is far from ideal - you really do need CAD. But to anyone considering jumping in, I would say: if you get an A1 (get the full size, not the Mini) and use Claude to write your parametric OpenSCAD scripts, the time commitment is such that you can _just about_ indulge in this hobby as a dilettante - eg, as a project for your kids. Without LLMs, I think it would be too much of a commitment unless you’re really dedicated, or already have CAD skills.
Anyway, gonna go read this in full.
the Bambu P1S with AMS is one of the better purchases I've made. I've had an ender3v2 for so long and while it worked ok (and arguably better than many people's experiences with them), I got tired of constantly fiddling with stuff.
Now, it just works. It doesn't matter what I throw at it. Made me get into the CAD hobby too.
>use Claude to write your parametric OpenSCAD scripts
Can you talk a little about it?
I use ChatGPT to help me with OpenSCAD and really enjoy it. It doesn't always nail it, but often works as a shortcut, especially with loops to create radial extrusions. You can muck around with things like asking it to give you code to design a castle, and then see how off-track it is.
Side bar... There are a lot of people who are going to use LLMs to try to do 3D modeling stuff and who are going to hit a wall with it really, really fast. Mechanical design really is a completely different discipline that is very poorly abstractable in the particular way that software engineers are used to.
I disagree. My co-worker is an industrial designer and uses Rhino as his day to day CAD tool of choice. I was delighted to see that it translates everything you do to a command line syntax and there's also Python integration. We did some simple tests the other week and you can actually prototype reasonably well by instructing an LLM to generate the Python code that creates the models. It still requires fine tuning but seems like a similar multiplier like using LLMs for programming to get the boring boilerplate out of the way.
I'd say a good designer will at least 2x, probably 5x. We are preparing to test with students next semester to see how non-experts profit from this.
If you can assemble Legos you can design in Tinkercad. You don't need to mess around trying to get LLMs to write scad files, though the results can be hilarious.
Worth noting: TinkerCAD is capable of parametric modeling in "CodeBlocks" mode. I prefer writing OpenSCAD (by hand, rather than via a warmed-over markov chain), but having the option within something as inviting as TinkerCAD seems great for beginners.
The article states it is specifically geared towards FDM (i.e. filament) 3D printers.
I wonder if anybody with more experience knows how much of this would overlap with SLA (i.e. resin-style) 3D printers.
For example, there's rough guidelines like, overhangs are less of an issue with SLA - and the Z-height is ultimately what most affects print-time, but would be great to see something more in-depth here, with some engineering behind it.
Or if there's similarly in-depth articles for resin 3D printers?
Also useful to turn spheres into two parts you can screw one with the other, like in this design of mine: https://makerworld.com/it/models/99223-death-star-christmas-...
My friend and I have been getting into forge molding carbon fibre using 3d printed molds like this: https://www.youtube.com/watch?v=25PmqM24HEk. It is a great technique for making small batches of really strong parts and I'm surprised it isn't more common.
Has there been any interest in leveraging LLM's for 3d modelling? Sort of an AI assistant with CAD software, to help beginners get going and also more rapidly design simple objects.
Yes, there has been. Unfortunately, there are a few core issues blocking this from becoming a big thing:
1. The majority of 3D modeling is not done parametrically, meaning there is not a lot of data. The little data there is is generally in OpenSCAD, which isn't very powerful or extensible for useful CAD. 2. Generally, when you want to do CAD, you need to come up with a way to define everything precisely. Like I want this hole 2 millimeters from the bottom, and this exact edge next to the hole to be beveled, etc. Saying all that to an LLM is slower than just making the whole.
That said, these still can be useful for beginners, and there are things like Adam AI that are starting to catch on for simple stuff.
There are AI models that can generate 3D models, e.g. Hunyuan3D. Not quite CAD models, but maybe this could eventually be adapted to that use case.
Then there's the possibility of an agent automating an actual CAD program. This has already been done with game dev, e.g. Unity MCP.
Just last week: https://willpatrick.xyz/technology/2025/04/23/teaching-llms-...
Yeah, tons, there are already products like this in use
Can you name them?
Several from Bambu labs to start
> There is no excuse to not add text to a printed part.
Super off-topic, but I've always kind of been let down by the appearance of 3d printed text. As noted, engraved seems to be better than embossed, but it still just looks kind of weird. I envy the clean, crisp labels that seem to be commonplace on commercial injection-molded plastic parts.
The toner transfer technique seems kind of promising. I think I've also seen people spray painting 3d-printed parts, and then lasering away the paint to draw text, which is interesting (if somewhat more materials- and equipment-intensive).
Really cool article though.
Another option is water slide decal. It can give a really seamless look, but is time consuming and expensive.
I've heard people have had pretty good luck laser engraving text onto 3d prints with fiber lasers, though it is pretty steep price bump just to get some text on a 3d print
I always thought 3D printing would make multi widget machine[0] manufacturing possible
While it’s done a lot of cool stuff and enabled rapid prototyping etc it never scaled the way I really thought it would
[0]: there may be a better turn for this however this is what I mean: that is one machine that can output a wide variety of different things using the same common material, IE maybe one day it produces ball bearings and the next it could produce a bunch of car pistons, with only having to make minimal changes to the machine itself if not changing anything at all
There are companies with big print farms that offer this service. But of course it’s limited to materials that can be 3D printed, and if the product reaches a certain scale, it’s likely best to invest in injection molding or some other process.
That said, for smaller scale products, news businesses, or things where 3D printing is the only way the thing can exist, these services exist.
"Flexible" or "Quick Turn" manufacturing are terms used for this kind of thing. Quick-turn comes from being able to change from one kind of part to another, quickly, with no added setup cost.
In theory, it seemed perfect for flexible manufacturing: same machine, same material, endless outputs. But in practice, it hit limits in speed, material properties, and post-processing. You still can’t print a high-tolerance metal part at scale and cost-effectively replace traditional machining. It’s amazing for prototyping or niche parts
"You still can't print a high-tolerance metal part at scale and cost-effectively..."
Dan Gelbart has a response (with caveats)
https://www.youtube.com/watch?v=kLgPW2672s4
oh wow - that's cool! - Thanks so much for sharing!
Extremely interesting.
From a readers perspective as well, this was a long read, but the way it was written was very clear and interesting all the way through. So well done on both counts!
6 months into 3D printing and I couldnt have asked for a better article to stumble upon. What a massive field this is and I love some of the take aways. Paricularly circles into hexagons, and making things adjustable.
I’m not making my own designs yet. It is too difficult. Modifiying a little here using Blender is where Im at
It's super easy to design using OnShape. Hit me up with private message and I will show you everything you need to model 3D printable parts in under 5 minutes.
Agreed, you need to know three things:
* Sketch a 2D design on a surface * Make the elements in that design depend on each other (this is parallel to that, this is equal to the other, X is at an angle to Y) as much as possible * Pull the 2D shape up into 3D space
Now you know how to design your own things! The rest is just learning the buttons, but there's usually one called "sketch", one called "constrain", and one called "extrude".
One additional trick that some people are doing is printing just the shell and then filling the 3d print with some kind of resin, foam or concrete.
Here's a concrete filled CNC machine: https://www.youtube.com/watch?v=L8t82OQXefM
Thankfully, support necessity will go away as 4/5axis 3d printing comes to consumer hardware over say, 10 years.
With 5 axis, you can print any model without the need for supports.
(I'm well aware of the difficulties/realities here, i've built 5 axis motion control systems before)
How is this free.
I usually don’t bookmark anything nor print to pdf; done both just to be double sure I don’t lose it.
Great article. Unfortunately it seems that there is a lot of information out there about DFM for 3D printing but not much about the actual print process itself: temperatures, bed flatness, bed adhesives, nozzle size, etc. Does anyone have any suggestions or resources on the subject?
Are you asking about best practices? Or the theory behind the printing process? I think there is a ton of this actually, because when 3D printing became affordable, the community did a huge amount of experimentation to figure out how to make their $250 Ender reliable.
Stefan's CNC Kitchen is a good channel if you want to see experiments with things like temperatures and materials. https://www.cnckitchen.com/
Or you could look at the original RepRap research and how it's evolved. The MK4S+ is just a very refined version of the original bed slinging printers. There are also papers on slicer development. There has been a trend towards thicker nozzles as slicers have gotten better (eg using 0.6 by default instead of 0.4).
Otherwise advances in printer technology, particularly first layer calibration, have improved massively in the last few years. So things like bed flatness and adhesives are much less of an issue with auto-levelling/probing nozzles. Bear in mind Ultimaker has been doing it this way for years, but it became mainstream (cheap) more recently. Any of the major modern enclosed printers (Prusa Core/XL, Bambu) shouldn't have adhesion problems with standard filaments. It's also highly filament specific, though the really high end machines (Markforged) are reliable in my experience because they discourage any deviation from their recommended materials and print settings.
For example MarkForged - a $10000+ printer - shipped their desktop FDM machine with Elmer's purple glue. They said it worked best in their testing and it still works for me.
I'm looking for best practices, although any theory as it relates to higher quality finished parts is also welcome.
And thank you, I've seen Stefan's work and it seems to be about as good as it gets. I'll take a look at the original RepRap research too, probably some interesting bits in there.
I agree that the really high end machines from Markforged and co look dead reliable, but they remind me of that old quote, "you can make anything on a lathe but money." It took me a fair bit of scrolling through slick marketing pages to find out that they are 5-figure machines that print at half the speed of consumer printers and can't print ABS (but can print $200/kg high strength proprietary filaments!) Instead I just got a handful of the major modern enclosed printers.
Background: I am trying to produce some ABS parts in small volume (10s of kg per day) and going crazy trying to find any decent source of information about the print process. Everything seems to be based on anecdotes and if you're lucky maybe a Youtube video.
Here is what I have gathered so far, in case it helps anyone: 1) print ABS enclosed in a chamber temp of a minimum 50C, ideal 60-80C. 2) use quality filament, Polymaker filament is good; issues are plastic composition and diameter variation. 3) dry the filament properly. 4) the fumes will destroy your lungs and eventually the printers themselves, so they need to be vented out, and also filtered inside the enclosure. 5) bed flatness is critical. 6) use a good bed adhesive such as Magigoo.
My gut feeling is that 10s of kg per day should be injection molded. Or SLS/resin printed so you can take advantage of layer speed. That's what 10x printers running at full tilt constantly, at least?
https://www.reddit.com/r/3Dprinting/comments/7n0go2/my_first... for an anecdote.
Plan is definitely to injection mold at some point, but this is for several different complex parts that will be expensive to mill molds for. The breakeven point between injection molding and 3D printing is really about the cost of the molds. Let's imagine a 1kg part. If you say 10x $1000 printers at 1-2kg/day and $10-20/kg filament then you can produce 900-1800 parts in 90 days for a total of $15-30/part. Meanwhile with injection molding you have a mold cost of $5k-50k and say $3/kg for pellets, so for 1k parts it costs $8-53/part. So if you're making a thousand 1kg simple parts ($5k mold), molding will be better. Making a thousand complex parts ($50k mold), 3D printing is better. And making five complex parts (5x$50k mold), you can do a lot of 3D printing before injection molding becomes competitive.
I am also in a bit of an unusual situation because of the size of the parts: voluminous enough that shipping from the manufacturer is no longer negligible.
Oh, and unfortunately can't do resin because of strength reasons. 3D printed ABS is already pushing it.
Yeah that's tricky. I suggest Occam's razor: environmental control is likely to be the most serious factor? Any $1k printer should be able to extrude filament at the right rate in the right place, and I don't know that ABS is particularly challenging to melt. The difficulty seems to be in fume management (extraction) and the parts not warping on the bed?
Or you pay a lot of money for a higher end printer and make use of a support contract where they can figure out where your parts are failing.
One other suggestion would be to contract the parts out to a company like Shapeways and see if people are actually able to reliably make them in low volume, then try to replicate. May be a dumb question, but presumably you've tried to print the same parts in PLA or a more forgiving material to confirm that they are "printable"?
If you're printing ABS, you do not need magigoo or any special 3d printing adhesive. Forget it. Among the most useful characteristics of ABS is that it's soluble in acetone.
Dissolve a portion of ABS in pure acetone (often available as nail polish remover). You're looking for something very roughly the consistency of milk. Colloquially this is called 'ABS juice'. Apply a thin coat to your bed/buildplate in the print area. I use a small amber glass bottle with a brush, but there are certainly faster ways to do this if you're doing a lot of printing every day. You now have a thin layer of ABS strongly attached to the surface of your bed. When you print ABS on top of this, it will be strongly attached to this, just the same as the layers adhere to each other.
You should be aware that acetone will damage PEI. It won't instantly destroy them, but it's something to be aware of. As a hobbyist, I just dedicated one side of my buildplate to ABS and don't care about the damage. You could just as easily use a different bed/buildplate material, though, since you're adhering the prints with ABS juice. I have had success with Kapton sheets in the past.
For hot-end temperatures, this is something you actually are best off figuring out yourself. To some degree, it depends on what you're doing and also your setup. Filaments generally come with a documented temperature range, but that should just be considered an initial starting point for testing. You should test print at different temperatures. The classic 'temperature tower' is a diagnostic print used for this purpose. Colder prints (to a point) will have crisper details and superior bridging. Hotter prints are stronger. ABS particularly loves to be printed hot, and when printed really hot I have found that layer failure pretty much stops occurring. ABS also abhors cooling. When testing cooling %s with a temperature tower, I found that even a small amount of cooling massively reduced layer adhesion. This does mean that if you're printing ABS for strength, you'll need to seriously limit overhangs and bridging at the design and slicing stage. Also consider that your nozzle can have an effect. It's often suggested to bump your print temperatures if you use a hardened steel nozzle.
Plastic composition is definitely something to be concerned about. Polymaker is solid. My favorite brand for ABS is Atomic Filament but they're too pricy to use in large quantities, so I save it for specific projects. For just one example of how things can get off with some brands, if you acetone vapor polish Hatchbox ABS it gets a matte texture instead of shiny, likely indicating there's something in there besides ABS.
Bed flatness is critical, but it's not something you should have to worry about. Good machines should have a decently flat and rigid bed to begin with, and even remotely modern machines also have mesh bed leveling features that correct for bed errors in software. It's usually not an issue nowadays. Back in the day, people would compensate by printing on a raft.
I didn't see you mention nozzles. If you're printing in ABS it's unlikely to be a pressing issue, but do consider that nozzles are a wear component and some filaments are abrasive. You will eventually need to replace your nozzles, as a worn nozzle can badly harm print quality.
Question regarding two apparently conflicting bits of information:
- A: Fillet edges in the filament direction - B: Have a sharp edge for the seam.
How would you crack that nut, as A prevents B. For example, on a rectangular box, maybe fillet 3/4 of the corners, and leave the 4th sharp?
Some possibilities that come to mind:
1. not care about seam placement; or
2. place seams manually in the slicer; or
3. add a tiny V-shaped notch specifically for the slicer to put the seam there.
4. Use a scarf seam, which Bambu’s does if it can’t find a better option. Still visible, but much less so.
5. Use rear. The seam will be a single line down the back of the part.
Thanks for mentioning scarf seams. They seem like a very neat development that I didn't know about.
This was an interesting read: https://www.printables.com/model/783313-better-seams-an-orca...
The moment the teacher realizes it was never about the perceived correct answer, but the questions that led to the paths taken. The sudden realization that teaching is more than the teacher initially perceived. Its not about teaching "this is so", but rather, "why do we know this is so?".
Which is what education should have always been about. It's not about responding with the correct answer. It's about asking the right questions. A famous Greek philosopher knew this, as did many before and after.
This is another after.
One technique which bears mentioning is printing in 100% infill using a filament which will allow re-heating/cooling and then putting it in a tray of powder salt (very finely ground table salt) and then backing and cooling it.
Sure, but at that point, you'd almost certainly be better off using resin.
What is the purpose of this?
You get a solid plastic part without layer lines. This makes it about as strong as injection molded plastic.
Nice! Want to try.
Nice article, though what I'd personally love to see is a resource where I can go from zero to actually making (basic) designs using open source tools, which can then be taken to a 3D printer and printed.
Give SolveSpace a try. It's fantastic for 2D sketches and then you can extrude/revolve/subtract these sketches into other solids to build up your part. It can export to STEP or STL and then it's an easy trip through the slicer and you're ready to print!
If you're more programming minded, try out RepliCAD. Or if you don't mind dealing with Python and its build ecosystem, there's CADQuery or Build123d
The learning curve was steep, but FreeCAD has allowed me to start playing with 3d printing gears and other things on my Bambu Lab P1S. I'm largely self taught with electronics and programming, so just starting and making small experiments got me going. For inspiration, there are lots of sites that share 3d print designs.
Would you say Blender is a nice tool for this purpose? I'd much rather learn one graphical tool which does a lot of different stuff than lots of different graphical tools that do different specific things (it's a different story in the terminal though :))
Blender is serviceable for simple stuff, but you really want CAD for mechanical parts.
Think figurines (Blender) vs gears (CAD).
Constraints, among many other important features, just aren't as well represented in Blender.
An analogy is C vs JavaScript. Can you do "memory management" in JavaScript? Sure, but you're fighting the tool. Ditto for building a complex frontend in C.
The desire to "just learn one thing" is naturally strong. But the "design 3d things" problem space is as large (if not larger) than "programming computers". Hence the proliferation of tools with very different approaches (the underlying representation in CAD is generally brep [1], which is much different than vertices / edges / faces at the core of Blender)
The good news is the underlying thinking is somewhat transferrable, especially for core concepts.
1. https://en.m.wikipedia.org/wiki/Boundary_representation
Parametric modelling isn't really there in Blender, but Blender is too good to not use. And it is still improving at an astonishing rate.
For me Blender has all I need for creating Models for 3D-Printing. And if e.g. Geometry-Nodes get some more love in Blender, they could become a base for proper parametric modelling...
It's not really suitable. Blender uses polygonal modeling, which is quite limiting. It's possible but very difficult compared to CAD, unless you're modeling something organic like human figures.
I'm currently using Shapr3D and it's very quick to design simple parts. Blender doesn't have any of the tools which I'm using in Shapr3D, such as sketches, constraints, parametric modeling etc. and most of the direct modeling tools are just way easier to use than Blender.
Fusion 360 is an absolute beast of a tool if you’re willing to live with its license and can spend a few hours learning it.
Blender is for modeling, not CADing.
These are some great tips. The teardrop shaped holes are a neat idea.
Those were a staple of early reprap designs.
In fact, it was such an iconic piece of early 3d printing design language that it became _the_ RepRap logo!
https://reprap.org/wiki/RepRapLogo
Then overhangs got good enough that people just started doing normal holes again. :)
This is neat! What’s the angle you can do before you need supports?
What amount of bridging is ok?
It actually is fairly filament dependent (among other things)
For example, stiffer filaments can usually handle more overhang before they sag and screw things up.
The easiest rule of thumb is to assume 45degrees, which works for ~all filaments.
You can do a lot better if you choose filaments right however.
yeah i bounced off freecad so many times but once i finally got something printed it was worth the grind
For a second I thought that first picture said Festool.
This is fantastic-- while I'm aware of most of the techniques in it, it would have saved me a ton of time and trouble if I had it a few years ago.
Each of the points could basically be expanded to an article on their own. E.g. they don't mention for vase mode that you can get much better results using a big nozzle with it.
3D printing is fun because there's always something new to learn
I'd love to read an article (or watch a video) of such depth and expertise about techniques for printing parts in place, which this article just touches on.
This article reminds me of another I read first here, 'Reality Has A Surprising Amount of Detail' by John Salvatier. At first blush 3D printing seems easy, but especially with smaller parts that might go through many duty cycles it's anything but. I'm going to have to do more than skim this, I think this one is worth multiple reads over many days to really absorb the densely packed information.
Thanks to the author for being willing to put so much of their hard-earned experience into a resource for the rest of us.
Is prusa the way to go for someone who wants something that just works?
Get a Prusa, you'll love it. I have an MK4 which pretty much never fails to print.
There are lemons, but generally Prusa is excellent for that, yes. My Mk3s has been working reliably for six years. The only problem I ever had with it was an error I made in assembly. I can go six months without using it or use it every day all day for a week and it prints reliably either way.
I'm not sure anything 'just works'. I have an Ender 3 S1 with autoleveling. I still have to adjust 4 knobs while getting under the print head with a feeler gauge. It's absolutely maddening. I need to do this with every print. If I don't touch the thing for a few months it's really bad. If you don't get it right it will gauge your printing surface or alternatively rip your piece apart as it prints. Then you need to know about bed temperature, nozzle temperature, and a hundred other things. Then what types of filament work best with certain bed types. I wish I never got it.
I've never any sort of pre-print processing/calibration on my Prusa MK4(S), other than cleaning the build plate. This sort of hand-holding really isn't required anymore on the modern printers.
Slicers also come with presets for different filaments these days, which generally do a reasonable job and knowing about temps & co is largely optional to getting going.
You should upgrade to another printer. You shouldn't have to do this for every print with a better printer.
Yes, Prusa and Bambu should both be reliable. I've been printing with Prusa MK3s for a couple of years without any problems. I think I've had just one failed print and it was because there was dust on the plate and I needed to wash it with water and soap.
Yeah, they're work horses. I've printed for thousands of hours on my MK4(S) now, and it's still going strong. I've had no issues at all. Similar experiences around me.
Circles are not that harmful if you print a diameter template with 1-10mm holes with 0.1 or 0.2 step. Don't measure your bolt, stick it into the hole where it's tight enough and you're good to go.
What an impressive looking article (I've only skimmed it so far).
I've been meaning to try my hand at CAD and designing models to print but I haven't quite made the jump.
One thing that has given me pause is a good CAD program for Linux, does anyone has any good tips for a complete Newbie where to begin?
For traditional CAD the notable candidates are:
- Solvespace --- small and lightweight, the UI may be a bit off-putting
- FreeCAD --- hugely improved in the recent 1.0 release, this is a large and impressive system
- Dune 3D --- the new kid on the block, it has the advantage of a modern appearance and UI standards, and the consistency of being a one-man project
If one moves away from traditonal/contemporary CAD there are a few other options:
- BRL-CAD --- intensely old-school, this is one of the oldest opensource codebases
- OpenSCAD --- programmatic CAD, this has inspired more successors than I would care to count (esp. look up libfive and Matt Keeter's Master's Thesis if you are academically mathematically oriented)
For that last, one of the more successful hybrids is "OpenPythonSCAD" which is just what it says on the tin --- Python in OpenSCAD:
https://pythonscad.org/
which I have been using for a project on the other side of the fence --- making DXF and G-code for CNC mills and routers:
https://github.com/WillAdams/gcodepreview
EDIT: One additional tool to note is Fullcontrolgcode Designer, which to bring things full-circle, is the 3D-printing version of the above:
https://fullcontrolgcode.com/
also have a look at https://github.com/CadQuery/cadquery (and https://github.com/gumyr/build123d) python, but more pythonic then openscad
OpenSCAD is an underrated but powerful modeling tool, especially for developers and engineers who appreciate precision and code-driven design. It has a low barrier to entry — the syntax is simple, yet expressive — and with just a bit of practice, you can build tight, parametric models that are incredibly robust.
One of its standout features is the `hull()` function, which computes the convex hull of multiple shapes. When used skillfully, `hull()` becomes more than a geometric operation — it’s a design primitive that lets you smoothly bridge components, create enclosures, and generate complex organic forms without manual sculpting. It's like having a smart “connective tissue” for your model.
If you're comfortable with code and want exact control over your 3D prints or CAD designs, OpenSCAD delivers precision with minimal overhead. It rewards clean thinking and composability — making it ideal for rapid prototyping, parametric part libraries, and even mechanical design.
I've been a newbie too and tried to use FreeCAD as others mentioned but I found myself enjoying build123d (basically a python library that uses an long-existing technology called OpenCascade and a viewer called OCPViewer generally used within visual studio code).
The learning curve is still there, but I felt more empowered to adjust/share 3d printing designs made in it over dealing with quirks of GUI-based CAD applications. The discord community on there is rather helpful too.
https://build123d.readthedocs.io/
https://github.com/bernhard-42/vscode-ocp-cad-viewer
I'll still use FreeCAD on occasion as a secondary viewer for stl files, though my hope is to use build123d entirely including for describing joints as well.
BTW there is an open source project on GitHub named 'Mayo' which is a pretty incredible viewer for 3d files including most CAD formats. 'F3d' is another great viewer. Both are cross platform.
> does anyone has any good tips for a complete Newbie where to begin?
Start with Tinkercad: https://www.tinkercad.com. It runs on the browser, it has some limitations, but it is really simple to use, just open and model whatever you want joining and extracting shapes and importing SVGs for extrusion.
After that, if you know any programming language you'll find OpenSCAD easy to learn. I gave a course last year about it, the slides are available here: https://lucasoshiro.github.io/posts-en/2024-03-24-openscad/. They are in Portuguese, if someone shows interest I can translate them to English, but I think they are easy to follow even by non-speakers.
Onshape is amazing. The learning curve is much more forgiving than other software while still being a feature-rich, optionally constraint-based and parametrizable CAD application. It works on any OS, even on a laptop with an iGPU, a Chromebook, and for basic stuff like exporting a part for printing, a phone.
Consider signing up via your favorite YouTuber's sponsorship link to support them.
Downsides are that the CAM plugin is paid-only (irrelevant for 3D printing) and you're obviously trapping yourself in a commercial, proprietary walled garden that might start charging subscription fees or otherwise rug-pull you once it gets popular enough. I've decided that the ease of use benefit is high enough to warrant the risk - I'd rather risk not being able to edit my models in the future than not creating them in the first place because the alternative software is too painful to use.
It's helpful to understand how the software works, because it's different from what you might have experienced from other software: It essentially stores operations, like "start with this sketch, then extrude this part of it to a height of 10 mm, then add a fillet". You can go back and edit previous steps and the following steps will be directly re-applied.
In sketch mode, you can just draw, but you can also add arbitrary constraints, e.g. "these points have to be exactly 3 cm away" and it will adjust your sketch to match the (new) constraints. This makes it really easy to change some aspect of the part later. This is common in CAD software, although OnShape's implementation seems more intuitive to me than e.g. Fusion 360.
If you want to do actual 3D CAM (for CNC machining), Fusion360 seems to be the only free option (not available for Linux).
In general, with all CAD software, the common "just poke at it until you figure out how it works" approach doesn't work well, although once you've understood the basic concepts that I've explained above and know some CAD terms/concepts like creating 3D parts by extruding or rotating 2d drawings, Onshape will mostly let you get away with that approach. You probably should still watch tutorials before you start.
> If you want to do actual 3D CAM (for CNC machining), Fusion360 seems to be the only free option (not available for Linux).
The free CAM available in F360 has been artificially limited to only allow extremely slow travel speed. It's almost useless.
Is there any realistic free alternative for 3D (not 2.5D) parts?
You certainly won't want to use it for mass production, but for hobbyist use where getting the model and CAM config right, setting up the machine etc. are the biggest time sink and most parts are made in quantity 1, I found it acceptable.
FreeCAD has a built-in CAM. It's not very powerful, but it's only going to get better with time (while the proprietary alternatives will only continue to get worse as companies try to squeeze money out of their users).
As a fellow linux users and 3D printing newbie:
- Tinkercad (browser) fun and great for very simple projects. Like the MS Paint of 3D.
- OnShape (browser) seemingly pretty powerful, but not the easiest to learn in my experience, and has some annoying bugs.
- Plasticity (desktop) I played around with the free trial and liked it a lot, found it more intuitive than OnShape.
- Womp (browser) not CAD software, but easy to use and great for making free-form/organic looking designs.
- Blender (desktop) not CAD software and haven't used it myself, but I've seen others use it to design 3D prints.
I just got started recently with OpenSCAD - it's a different beast, but very useful for simple parametric designs. You write code to describe the form of your object - no clicking and dragging things at all.
Learn FreeCAD. Getting trapped in commercial software and having to abandon years and years worth of project files isn't a mistake I'm making twice. Fusion seems attractive, but look at how they treat their shit tier users.
While this is a good idea in theory, one needs quite a lot of patience to deal with its bugs and kernel limitations. It has definitely become much better since 1.0, but the inability to put chamfers and fillets wherever is extremely annoying — whether the features compute is order-dependent and they routinely conflict with each other for unclear reasons.
So, maybe it’s not a bad idea to start with a free version of something more ergonomic, just to avoid getting too discouraged.
FreeCAD is fine (the author also uses it). Make sure to follow the official documentation (eg. PartDesign tutorial) to not get immediately frustrated.
I highly recommend MangoJelly Solutions's tutorials.
Here's a playlist for FreeCAD 1.0: https://www.youtube.com/watch?v=t_yh_S31R9g&list=PLWuyJLVUNt...
But he has a bunch of other videos.
The parametric workflow can be confounding to some people, but most pick up the newer FreeCAD interface fairly quickly:
https://www.youtube.com/@4axisprinting/videos
Best of luck =3
I’ve had a lot of success with https://onshape.com, which just needs a browser.
I use Fusion 360. Free for hobbyists. Yeah it's quirky and they constantly screw the free plan out of features (e.g. less saved editable designs, having to use the cloud to export STL) but it is also a highly capable tool that aligned best with the stuff I already knew.
Not entirely sure if it's available for Linux.
I probably shouldn't use autodesk but I'm not trying to make the world a better place. Just to unleash my creativity.
Not sure if they changed this, but you used to be able to local export an STL without cloud by going to Utilities -> Make -> 3d print
I'm pretty sure this now also leverages the cloud converter. It doesn't quite show as much because they've massively sped up the cloud conversion. It used to take minutes, now it is almost instant. However when the cloud is down it still doesn't work, so it's still cloud based for sure.
You can right click a body and export as mesh locally
Are you sure this doesn't use the same functionality? I'll try.
It's not. There is a flat pack version but it says it's not supported
Ah I see. I've been looking at FOSS options like FreeCAD and Blender but both didn't feel right (especially blender as it's more a tool for animators).
And I rather spend my limited free time creating stuff than to learn a new tool. Unless it is actually a more powerful one for the purpose that enables me to do things I can't now. But this doesn't seem to be the case.
It's the same reason I use BambuLab printers. My hobby is making stuff, not tinkering with printers. They're just tools, a means to an end.
Ps forgive me my defensive attitude but I often get people at the makerspace that take my choice of tools as a political statement. But I don't care. I just want to use what does the job for me.
For Blender, try adding:
https://www.cadsketcher.com/
and
https://blendercam.com/
I can't vouch for this, but maybe you could get SolidWorks working in Wine? (e.g. https://github.com/cryinkfly/SOLIDWORKS-for-Linux). Of note, SolidWorks is cheap if you're a student or veteran, for a non-commercial license. It is a dramatic improvement over FreeCAD. (I wish CAS were in a state like EDA and artistic model makers where the free/OSS software was on par with commercial, but we are not.)
I use FreeCAD, but it definitely leaves some UX refinement to be desired. There are a couple of web based options like OnShape that seem to work well, too.
OnShape is great (we have been using it exclusively for a project over the past four months, the collaboration tools are phenomenal), but FreeCAD has made some fantastic progress over the past year. Some of the underlying technology problems have solved, and the UX has improved a lot with 1.0. The customization and scripting opportunities are also wonderful with FreeCAD. That said, if you’re coming over from Solidworks/NX/Inventor, as much as there are buggy parts of those, FreeCAD still has extremely frustrating workflows and buggy parts that you have to work around. It feels like it’s moving closer to Blender-like quality, but it still has a long road ahead of it.
All of Solidworks, Onshape, and Freecad have a very similar operating philosophy (I believe they're all based on the same backend engine). I used onshape for a while because I found freecad unusable but recent improvements solved most of those issues and now I prefer freecad.
OnShape and SolidWorks use Parasolid, FreeCAD uses Open CASCADE.
Does the world have an oversupply of ESP32/RaspberryPi/3D printers/similar but not enough use cases?