There are all kinds of third-party mods for it (one of the really neat things about the hobby is printing parts to make the machine itself better).
I recommend avoiding proprietary designs.
There are all kinds of third-party mods for it (one of the really neat things about the hobby is printing parts to make the machine itself better).
I recommend avoiding proprietary designs.
You'll also need "slicer" software, which takes the 3D model and slices it into layers and generates the actual tool control program (this is in a language called "G-code", which is more or less standardized across CNC tools).
For that I use Ultimaker Cura, also FOSS and available for Windows, macOS, and Linux.
A typical workflow is this:
1) Design part in FreeCAD. Save as a FreeCAD model (so you can edit it later) and also export it as an STL file (a standard 3D model format)
2) Load STL into Cura. Here you can control things like layer height, how much of the interior of the model is hollow (for most models you don't want to waste filament by printing it solid, though you can do that if you choose), what kind of infill pattern is used, etc. The defaults work well most of the time. Though Ultimaker makes their own printers, Cura also has printer profiles for many other common devices, including Ender. Cura generates the G-code file that controls the physical printer.
3) Put the G-code file on the printer (on a micro SD card, in my case) and print.
Many people like a package called Octoprint, which works with a Raspberry Pi to give you remote printer control and monitoring capabilities. I haven't made that step yet, but plan to do that soon.