FreeCAD Takes Off With A Rocket Design Workbench

Here’s how FreeCAD works: the program’s design space is separated into different “workbenches”, each of which is intended for a particular set of operations, and a piece of work can be moved between them as needed. There is a sketching workbench, a part design workbench, and now a Rocket workbench has been added to the healthy ecosystem of FreeCAD add-ons. There’s even a series of video tutorials; ain’t open source grand?

It all started when [concretedog] posted on the FreeCAD forums, making a strong case for a Rocket-themed workbench. People got interested, and a short while later [DavesRocketShop] had some useful tools up and running. Here’s a blog post by [concretedog] which goes into detail and background, and while the Rocket workbench is available via FreeCAD’s add-on manager, the very latest experimental builds are available for manual installation on [Dave]’s GitHub repository.

This sort of development and utility is exactly the kind of thing our own Elliot Williams was describing when he made the point that one of open source’s greatest strengths is in the little things, like the FreeCAD ecosystem letting people scratch strange and specific itches, and the ability to share those solutions with others.

Open Source: It’s The Little Things

I use open source software almost exclusively; at least on the desktop — the phone is another matter, sadly. And I do a lot of stuff with and on computers. Folks outside of the free software scene are still a little surprised when small programs are free to use and modify, but they’re downright skeptical when it comes to the big works of professional software. It’s one thing to write xeyes, but how about something to rival Photoshop, or Altium?

Of course, we all know the answer — mostly. None of the “big” software packages work exactly the same as their closed-source counterparts, often missing a few features here and gaining a few there, or following a different workflow. That’s OK, different closed-source programs work differently as well. I’m not here to argue that GIMP is better than Photoshop, but rather to point out what I really love about open software: it caters to the little guys and gals, the niche users, and the specialists. Or rather, it lets them cater to themselves.

I just started learning FreeCAD for a CNC milling project, and it’s awesome. I’ve used Fusion 360, and although FreeCAD isn’t “the same” as Fusion 360, it has most of the features that I need. But it’s the quirky features that set it apart.

The central workflow is to pick a “workbench” where specific tasks are carried out, and then you take your part to each bench, operate on it, and then move to the next one you need. But the critical bit here is that a good number of the workbenches are contributed to the open project by people who have had particular niche needs. For me, for instance, I’ve done most of my 3D modelling for 3D printing using OpenSCAD, which is kinda niche, but also the language that underpins Thingiverse’s customizer functionality. Does Fusion 360 seamlessly import my OpenSCAD work? Nope. Does FreeCAD? Yup, because some other nerd was in my shoes.

And then I started thinking of the other big free projects. Inkscape has plugins that let you create Gcode to drive CNC mills or strange plotters. Why? Because nerds love eggbots. GIMP has plugins for every imaginable image transformation — things that 99% of graphic artists will never use, and so Adobe has no incentive to incorporate.

Open source lets you scratch your own itch, and share your solution with others. The features of for-pay, closed-source software are driven by the masses: “is this a feature that enough of our customers want?” The features of open-source software are driven by the freaky ideas of nerds just like me. Vive la diffĂ©rence!

FreeCAD Debugging

Powerful software programs often have macro programming languages that you can use, and if you know how to program, you probably appreciate them. However, sometimes the program’s built-in debugging facilities are lacking or even nonexistent If it were just the language, that wouldn’t be such a problem, but you can’t just grab a, for example, VBA macro from Microsoft Word and run it in a normal Basic interpreter. Your program will depend on all sorts of facilities provided by Word and its supporting libraries. [CrazyRobMiles] was frustrated with trying to debug Python running inside FreeCAD, so he decided to do something about it.

[Rob’s] simple library, FakeFreeCad, gives enough support that you can run a FreeCAD script in your normal Python development environment. It only provides a rude view of what you are drawing, but it lets you explore the flow of the macro, examine variables, and more.

Continue reading “FreeCAD Debugging”

FreeCAD Parametrics Made Simple

Simple drafting programs just let you draw like you’d use a pencil. But modern programs use parametric models to provide several benefits. One is that you can use parameters to change parts of your design and other parts will alter to take account of your changes. The other advantage is you can use one model for many similar but different designs. [Brodie Fairhall] has a nice video about how to use parameters in FreeCAD.

The nice thing about parameters is they don’t have to be just constants. You can put in formulae as well. For example, you could define one line as being twice as big as another line. You provide various constraints and parameters and FreeCAD works out the shape for you, keeping all the constraints and formulae satisfied.

Continue reading “FreeCAD Parametrics Made Simple”

FreeCAD Vs SolveSpace

When you are ready to design real things, you’ll find simple CAD programs can be pretty limiting. Serious modern designs tend to use parametric modeling where you don’t necessarily set dimensions and positions of everything but instead constrain the design by describing the relationship between different elements. For example, you can create a vertical line and constrain other lines to be parallel, perpendicular, or form a given angle with that line. There are many tools that can do that, including FreeCAD and SolveSpace, two programs that [Joko Engineeringhelp] uses to create a complex compressor blade and it really shows the differences and similarities between the two tools.

You probably don’t need this particular design, but watching over someone’s shoulder while they do a complex design can be very valuable. Being able to see the differences between the two tools might convince you to learn one or the other or maybe even switch.

Continue reading “FreeCAD Vs SolveSpace”

Designing 3D Printed Enclosures For KiCad PCBs

If you’ve used KiCad before, you’re certainly familiar with the handy 3D view that shows you a rendered view of what your assembled board would look like. But as [Vadim Panov] explains, you can take this capability a step further. With a few extra tools and a little bit of know-how, you can leverage KiCad’s PCB renderings to make custom 3D printable enclosures.

The first step is to design the PCB as you normally would in KiCad. This could be an original PCB of your own invention, or a digital representation of an off-the-shelf model you want to build an enclosure for. If the latter, then the PCB doesn’t need to be 100% accurate; the goal is really just to get the big components into roughly the right areas so you can get the clearances right. Though obviously you’ll want to make sure the board’s outer dimensions and mounting hole locations are recreated as accurately as possible.

From there, [Vadim] recommends a tool called StepUp. This will take your PCB KiCad PCB files and create either a STEP or STL file of the assembled board which can be imported into your CAD package of choice. For the purposes of this demonstration he’s sticking with FreeCAD, as he likes the idea of it being a completely FOSS toolchain from start to finish.

Now that you have a model of the PCB in your CAD software, the rest is up to you. Naturally, there are existing enclosure models you can use such as the ones produced by the “Ultimate Box Maker” that we covered previously, but you could just as easily start building a new enclosure around the digital PCB.

Looking for a bit more guidance? As it so happens, our very own [Anool Mahidharia] will be presenting a class on how you can develop a KiCad + FreeCAD workflow as part of our recently launched HackadayU initiative.

FreeCAD TechDraw Workbench Tutorial

FreeCAD started out a little shaky, but it has gotten better and better. If you are trying to draw a schematic, it probably isn’t the best way to do it. However, it is a great graphical alternative to OpenSCAD for 3D printing and even incorporates OpenSCAD if you don’t want to choose. However, if you have a 3D part — regardless of how you want to create it in real life — having a proper mechanical drawing is very valuable. FreeCAD’s TechDraw workbench makes this very easy and [Joko] has a tutorial that shows exactly how to do it.

Machinists everywhere are used to looking at these drawings that typically show a top view, a front view, and a side view. The program will automatically project the views you select and then allows you to pick dimensions. It creates them and keeps them up to date if you change them in the model later.

Continue reading “FreeCAD TechDraw Workbench Tutorial”