58 points

FreeCAD

permalink
report
reply
35 points
*

I use FreeCAD and Assembly3 for everything and have for many years now. I sometimes use realthunder’s fork of FreeCAD but right now it’s quite a bit behind upstream and there are some cool new features in sketcher so I use upstream for those.

Some people get confused about workflow in FreeCAD because there are so many options and every youtube video has different opinions or tries to feature a particular workbench like curves or something. My opinion… Pretty much your workflow starting out should be to ignore everything else and use part design and sketches, it’s the simplest way:

  1. enable autosave with a short interval, like 2min

  2. Switch to part design workbench

  3. create body

  4. create sketches as the base of the features of your part attached to the xy, xz, yz planes, offset them to create a “wire frame” that resembles your project

    a. Your sketches should be fully constrained

    b. Your sketches should have as little geometry in them as possible, if you need more complex stuff make more sketches

    c. Your sketches should have closed wires, you can’t pad something that doesn’t create a face.

  5. use pad, pocket, revolution, loft, and hole operations on those sketches to form a 3d solid

  6. if you need to create additional sketches which import geometry from the previous operations (using the external geometry tool), import SKETCH geometry from the previous ops, not edges of solids, whenever possible. Hide your solid, unhide your sketch, select that with the external geometry tool.

    a. Use sketch on face sparingly.

  7. Do fillets and chamfers last, if you need to change something, delete them and recreate them once you’ve made your changes.

To make multiple parts make multiple bodies with the same workflow as above.

Once you get pretty good at making static parts with constrained geometry, holes, threads (with the hole function), etc, which you can do with only the stuff above, then you can branch out into other workbenches like assemblies or curves, but all of those things build on the concepts above, so it’s easy to get overwhelmed if you try to do it all right from the start. Learning how to recover from a mistake is just part of CAD in general, though I admit that it’s a bit more effort to find what’s wrong in FC vs commercial platforms, but we aren’t here, on lemmy, in a linux community, to use commercial platforms.

AFAIK that’s pretty much the same workflow as F360 uses for single-solid parts though things have different names. pad=extrude for example.

It’s obviously far from perfect but in my opinion it’s the best solution that runs natively on Linux and is actually open source. Also assembly3 uses solvespace as it’s backend solver so if you make assemblies using that you are kindof using solvespace too.

Also, I hear/read a lot of complaining about instability but I’ve honestly never had a crash that wasn’t on an experimental branch like RT or the edge release of upstream. However step 0 above should help if you’re worried about that.

permalink
report
reply
31 points

KiCAD for circuit boards FreeCAD to import those boards and do everything else

permalink
report
reply
20 points

I like to use openSCAD which uses code to describe objects so it’s probably not for everyone.

permalink
report
reply
2 points
*

AFAIK openSCAD is a code driven mesh format. So if you want to import openSCAD models into any other CAD software you have to convert the mesh to STEP or some other actual 3d object format during which there can be lots of error if the model is complex. I don’t have a lot of experience doing this but I just tried a model I had lying around from the dactyl keyboard project and converting it resulted in a lot of really broken surfaces.

This is a cool alternative that makes 3d objects instead of meshes (at least it says it does). https://zalo.github.io/CascadeStudio/ . Also open source but web based.

EDIT: I should mention that CascadeStudio seems to be abandoned, just a cool concept of a different way of doing code driven CAD.

permalink
report
parent
reply
1 point

I find it pretty easy to use when building my 3d print adapters, brackets, containers and very simple objects. But if, like me, spaghetti code is your natural language… OpenSCAD does you no favors.

permalink
report
parent
reply
1 point
*

OpenJSSCAD helps with the spaghetti code, unless you also write JS spaghetti, but I only use it for creating tools I want non-tech people to use.

It lets you make parameters editable from a web based UI of your liking with the model code hidden away, and can output decent meshes.

permalink
report
parent
reply
18 points
*

Sadly, I couldn’t fine even one that was at least usable in my experience.

I model a lot for 3D-printing, and of course tried FreeCAD.
It had a very steep learning curve and is very unique in its workflow, compared to other CADs.
I somehow got the hang of it, but it still was very much not usable.
It crashed every 5 minutes, the UI is very convoluted, and even the simplest tasks take half an hour, compared to the 2 minutes it takes on other software.

Since Fusion360 doesn’t work on Linux, there’s pretty much only Onshape.
Apart from being a SaaS-product (“cloud based”), and therefore out of your control, which I strongly dislike, it’s absolutely great UX wise.


But good news, there are people working on a solution. I will add the name of the project later if I can remember it again.
Edit: found it: https://github.com/dune3d/dune3d

There are also people forking the engine and some core features of FreeCAD and want to turn it into something better, but I don’t know if they’ve made something out of that idea yet.

permalink
report
reply
6 points

I personally never had a problem with Free cad. It’s the only cad software I ever used, so I can’t compare it to others but it just worked after I learned some basics.

permalink
report
parent
reply
3 points

FreeCAD requires a lot more clicks. Simple example: You want to extrude part of a sketch. In Fusion360 you select the part, hit extrude, done. In FreeCAD you can’t extrude a part of a sketch, only whole sketches, so you have to make a new sketch, important the geometry of your previous sketch, repaint over the imported geometry to make it an actually sketch and now you are allowed to extrude it. When you have an extrusion that would result in multiple bodies, you have to redo this produce for each and every body, since FreeCAD extrusions are only allowed to produce one body. This can easily turn a 5sec operation into a 10min operation.

On top of that you have the topological naming problem that forces you do basically remoddel your whole thing from scratch if you want to change anything in the early build steps.

There are numerous ways to ease the pain (MasterSketch, Datum planes, ShapeBinder), but they all require a lot of discipline and planing ahead. You can’t just YOLO your models in FreeCAD the way you can in Fusion360.

On the plus side, the discipline FreeCAD forces on you can result in cleaner results. In Fusion360 it’s quite easy to model yourself in a corner were everything is underconstrained and will just exploded if you touch anything. Fusion360 will let you get away with a lot until it is to late. FreeCAD will go “I can’t do that, Dave” a lot sooner and force you to clean up.

All that complaining aside, FreeCAD is my CAD tool of choice. I am never going to touch Fusion360 with its ever more restrictive licensing scheme ever again.

permalink
report
parent
reply
2 points

If you’ve used any mainstream CAD software like Inventor, NX, or Solidworks then FreeCAD is extremely clunky in comparison.

permalink
report
parent
reply
4 points

Remember faster!

Please 💖

permalink
report
parent
reply
2 points
1 point

Uh, that looks promising! Thank you!

permalink
report
parent
reply
2 points

But good news, there are people working on a solution. I will add the name of the project later if I can remember it again.

Im definitely interested as well, we got plasticity I suppose, but that doesn’t have a timeline and is missing a lot of more advanced features

permalink
report
parent
reply
1 point

I added the link into my original comment for you :)

permalink
report
parent
reply
1 point

Thanks! That’s awesome, I’ll check it out. Hopefully it will one day be able to match more professional software in terms of functionality and stability

permalink
report
parent
reply
1 point

What linux were you using if you don’t mind asking?

@Guenther_Amanita @jackpot

permalink
report
parent
reply
1 point
*

At this time Fedora. I used both the Flatpak and native package, but both were very prone to crashes.
I used it for some time too on Windows, same problem. It isn’t a Linux issue, it’s a FreeCAD issue. It’s too convoluted and bloated, while probably not having enough maintainers.

permalink
report
parent
reply
-1 points

You should try arch or an arch fork, arch doesn’t leave broken upstream pkgs unpatched too long, either they work or they are out

@Guenther_Amanita

permalink
report
parent
reply
1 point

Nobara has a pile of graphics optimizations, as well as OS fixes for programs like Blender and daVinci Resolve. It should work well for other CAD programs.

permalink
report
parent
reply

Linux

!linux@lemmy.ml

Create post

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Community stats

  • 8.9K

    Monthly active users

  • 5.6K

    Posts

  • 154K

    Comments