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?
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?
https://www.youtube.com/@4axisprinting/videos
Best of luck =3
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.
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.
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.
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.
- 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:
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:
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.
- 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.
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.
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.
The free CAM available in F360 has been artificially limited to only allow extremely slow travel speed. It's almost useless.
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.
So, maybe it’s not a bad idea to start with a free version of something more ergonomic, just to avoid getting too discouraged.