A Developer’s Journey: From OpenSCAD to FreeCAD, Embracing Open-Source 3D Design

As a software developer, the transition to the world of 3D printing and design often feels intuitive, especially with programmatic tools. My initial foray into this space was with OpenSCAD, a parametric CAD software that appeals to coders with its command-line interface. For a period of 7-8 years, I found its logic straightforward. For instance, creating a 50mm long pipe with a 0.5mm wall thickness was a simple matter of subtracting a smaller cylinder from a larger one: difference() { cylinder(r=10, h=50); cylinder(r=10-1, h=50); }. This approach, akin to writing code, resonated with my background.

However, as my design needs evolved, I encountered limitations. I had previously experimented with FreeCAD a few years back but found its sketch-based workflow and the application of features like chamfers and fillets less intuitive than I had hoped. My next step was to explore Fusion 360, guided by a fellow club member who offered weekly CAD learning sessions. After two months of dedicated use, I could produce some designs, but I also ran into persistent quirks and workarounds that Autodesk had yet to address. The situation escalated when Autodesk altered its licensing model, reminiscent of their move with Eagle CAD, by restricting features unless users committed to monthly payments. This felt like a manipulative tactic, and I was unwilling to be subjected to such practices.

The growing sentiment among peers to switch to FreeCAD caught my attention. Upon reaching out to several users, I learned that the beta version 0.18 and the alpha version 0.19 (now the latest stable release) had significantly improved usability. Intrigued, I decided to try FreeCAD again. I was genuinely surprised by how accessible it felt, especially after my recent experience with Fusion 360. While the latest stable version is 0.19.2, I’ve been running the nightly builds of v0.20 with remarkable success, living on the cutting edge of its development.

While I’ve encountered a few quirks, the FreeCAD forums have proven to be an invaluable resource. The community is highly responsive, with developers actively fixing issues or providing clear explanations for design choices. I haven’t yet delved into FreeCAD’s CAM capabilities. My current workflow involves exporting designs as STL files, which I then use Kiri:Moto to slice for my CNC projects. For 3D printing, I also export STLs and utilize PrusaSlicer (a derivative of Slic3r).

My hardware setup includes LinuxCNC with Remora running on SKR v1.4 boards to control my Creality Ender 3 3D printer. More recently, I’ve successfully configured LinuxCNC/Remora to operate my K40 laser cutter, employing a similar 3D printer board. I had hoped that the Maslow CNC developers would consider LinuxCNC for their platform, but that doesn’t seem to be the case currently. Furthermore, Remora’s development for DC motor and encoder support is still in progress but anticipated soon.

In conclusion, FreeCAD is a robust and highly capable open-source CAD solution. If your needs are simpler, Onshape and Sketchup offer quick and straightforward options. However, I would strongly advise against using Autodesk Fusion 360. Its licensing changes and the potential for being locked out of your own designs and files by a company that dictates access render it a problematic choice for anyone seeking long-term control over their creative work. The perceived ownership of a design within Fusion 360 is, in reality, limited to owning a file that is useless without the proprietary application to edit or render it.