One of the most common questions we get from makers interested in CNC milling is the following : which CNC software should I use? Before diving into software recommendations, this guide will walk you through the following sections:
- What are the different type of software used in the milling process
- CAD Software
- CAM Software
- Control Software
- CAD / CAM software comparison and recommendations
- Autodesk Fusion 360 (previously Fusion360)
- FreeCAD
- VCarve
- SketchUp
- SolidWorks
- CorelDRAW
- Carveco
- CNC control software comparison and recommendations
- PlanetCNC
- Mach3
- LinuxCNC
- GRBL
- Easel
- Carbide Motion
- Onefinity (Standard and Elite)
What are the different type of software used in the milling process
Let's start by understanding the different types of software at play. There are 3 different types of software that are used in the process of milling:
- CAD (Computer Aided Design)
- CAM (Computer Aided Manufacturing)
- Machine control software
While there are three categories of software, a single tool (e.g. Autodesk Fusion 360) can sometimes offer a combination of a couple of them, which makes them even more complex to understand.
1/ CAD software
Simply put, CAD is the software you're going to use to design your parts. You're going to go from sketches (drawings in 2D) to objects in 3D.
If you're comfortable with 2D drawing software like Illustrator or Inkscape, you can start from there, and import *.dxf files into your CAD software.
If you're not, you can directly learn to do 2D sketches on the CAD software you're going to pick.
2/ CAM software
This is the software that allows you to generate machine instructions (G-code) to manufacture your object. It always goes like this:
- you define the size of the raw material you’re going to mill;
- you position your 3D design in it, and;
- you select milling operations to get the desired result.
Often, CAD and CAM software goes together as one solution. But you can also decide to separate the two, for example, if you're already familiar with a CAD software that doesn't have CAM capabilities.
Let's have a look at the last type of software, then discuss the existing solutions out there.
3/ CNC machine control software
This last type of software is simply the interface you're going to have to control your machine. Most desktop CNC milling machines don't come with an onboarded computer, so it's a software you may install on your laptop to connect it to your machine.
When it comes to machine control software for CNC desktop machines, some of the big names include Mach3, LinuxCNC and GRBL/USG. Before diving deeper into the pros and cons of each software, we need to understand how a CNC milling machine is controlled. The electronics that control a CNC are basically composed like this:
- Each axis is controlled by one or two motors;
- Each motor gets its instructions from a driver;
- A central controller sends instructions to the different drivers, based on the information it gets from a control software;
- A control software, which is directly connected to the controller with a transfer protocol (usually Serial (i.e. USB) or Parallel (i.e. DB25)).
Which CNC software should you choose?
1/ CAD and CAM software comparison
The criteria to decide the best software for your usage should be:
- your budget,
- the existing community of the software and
- the nature of what you want to mill.
For versatile usage in wood, metal, foams or plastics, here are the most used software:
Autodesk Fusion 360 (previously Fusion360) (CAD + CAM)
+ Advantages of Autodesk Fusion 360
- Free if you're an individual or a small business
- A very powerful software out there with almost infinite capabilities
- Huge online community and a lot of learning resources
- Perfect for learning on a tool that you'll be keeping for years
+ Downsides of Autodesk Fusion 360
- Some very handy features are only under the Autodesk Fusion 360 paid licence (the automatic Arrange feature for example, as well as limited rapid speeds in the CAM module)
- It is so complete that it might feel overwhelming at first.
For more information on how best to generate G-Code from Autodesk Fusion 360, see our full video tutorial.
FreeCAD (CAD + CAM)
+ Advantages of FreeCAD
- Open-source and free
- Growing online community and a lot of learning resources
- Perfect for getting into the CNC world
- Downsides of FreeCAD
- The graphic interface is not the most user-friendly, but the software is improving fast.
- Our experience is that only the Windows and Linux versions are stable.
- Currently not as powerful as proprietary solutions, but we all know the power of open-source solutions !
For more information on how best to generate G-Code from FreeCAD and use it on your CNC machine, see our dedicated tutorial.
VCarve (CAD + CAM)
+ Advantages of VCarve
- Very easy to use, gets you to milling in no time
- Designed for CNC milling users, lots of helpful features on the CAM side
- Perfect for engraving
- Downsides of VCarve
- Quite expensive (660€ ex. VAT at the time this article was written)
- No 3D CAD capabilities: you can import 3D files, or design in 2D for engraving
- The graphic interface is not the most user-friendly and can feel a bit old-fashioned
For more information on how best to generate G-Code from VCarve and use it on your CNC machine, see our dedicated tutorial.
SketchUp (CAD + CAM)
+ Advantages of SketchUp
- Free
- Loads of people know this solution already, maybe it is your case
- Active online community and a lot of learning resources
- Downsides of SketchUp
- The CAM plugin is not so easy to install and is not official
- Not CNC-oriented, some design might be difficult or impossible to make
To find out how to generate your own G-Code from SketchUp, follow our comprehensive tutorial on the subject.