You need CAD software (computer-aided design) to make a model or drawing of your design.
Then, you will use CAM software (computer-aided machining) to fashion a toolpath strategy around your CAD model and generate G code.
Simulator software for CNC can show you visually what the G codes will do.
CNC Control software has two layers. G code senders allow you to interact with your CNC controller and send it the G code files and other commands.
The main part of your CNC control software is inside your controller firmware. It is the controller firmware that receives G codes and decides the kinematics of your CNC motion.
We’ve split this article up into different sections:
So you can either read through our full recommendations list, or skip to the section you need.
Free CAD Software for CNC
There are a number of free CAD software out there – but each has its own flaws.
You can find the right choice by knowing what works for you. So, we introduce the free CAD software from the simplest and easiest to the most advanced.
Easel is developed by Inventables, makers of the popular X Carve CNC routers, and is a free all-in-one CNC software. There is also a paid version (Easel Pro) that has some extra features.
If Easel suits your purposes, you will have CAD software, CAM software, simulator software, and control software all in one place – ideal for beginners or hobbyists who want a simple, stress-free CNC workflow.
- Easel has one of the most user-friendly interfaces and is very easy to learn. Plus, you don’t need to work with other software since it does everything from CAD to G code sending.
- Considering how Easel users usually work with their CNCs for art, hobbies, and simple woodworking, it has nice features for these applications. Easel has some basic designs and font libraries and also has an image tracing tool.
- Easel handles the feed rate automatically.
- Finally, Easel works in your web browser and its servers will do the simulations. So, even weak computers can work with it fast.
- As a CAD software, Easel is only good for simple 2D designs. So, if you want to do complicated 3D models, then Easel is not for you.
- Accordingly, its CAM abilities for toolpaths are average. It can handle 2D and 2.5D machining, but other useful features are limited to the paid version of the software. These include V-carving, rastering, and ramping plunges.
- Easel’s paid software offers limited features compared to other paid software. Easel Pro costs 233$ per year.
- Finally, Easel’s control software is in fact a GRBL control software. So, you can only use its control software for CNC machines that have GRBL controllers.
Final Verdict on Easel
Easel is a great choice for beginners and woodworkers who do simple 2D or 2.5D designs. Especially if they are using CNC routers from Inventables or other CNC machines that have GRBL controllers.
Carbide Create (CAD-CAM)
Carbide Create software is from Carbide 3D, makers of the Shapeoko CNC router range. Carbide Create is free for all, but other software from Carbide 3D is only free for Shapeoko users.
- Carbide Create is one of the simplest CAD software to learn. It is exceptionally user-friendly.
- Although Carbide Create is a completely free CNC software, there is a Carbide Create Pro version that costs $120 per year or a perpetual license for $360. But if you decide to go pro one day, Carbide Create Pro has better abilities than Easel Pro.
- Like Easel Pro, Carbide Create Pro has V-carving too. But unlike Easel Pro, you can also do 3D design and machining with Carbide Create Pro.
- Lastly, Carbide Create works offline on your computer, so you don’t have to rely on an internet connection.
- Carbide Create is also a beginner-level CAD CAM software. It’s suitable for 2D and 2.5D designs, but you can’t do 3D modeling in the free version of Carbide Create.
- Even the 3D features you get with Carbide Create Pro are not as advanced as several other CAD-CAM software down this list.
- You only get starting estimates for feed rates and speeds in the Pro version.
Final Verdict on Carbide Create
Carbide Create is great offline software for beginners and simple woodworking operations. For Shapeoko users, it can be integrated with other Carbide 3D software for free to become an all-in-one CNC software.
Inkscape is a completely free and open-source vector graphics software that you can use as your CAD software. It’s mostly considered a 2D SVG editor and creator, but has other powerful applications, too.
- Inkscape is not limited to CNC users – many use it for laser engraving and creating vector graphic designs. This also means it has a large and helpful community.
- Inkscape has many features and editing tools.
- Inkscape has extensions for specific purposes. There are extensions for ready laser cuttings. It even has CAM extensions that can create tool paths. But you can’t rely on it for sophisticated tool path strategies.
- Inkscape has a decent improvement speed so you can expect new extensions and features.
- Inkscape is only CAD software. Since its CAM extensions still need a lot of development, you will probably need other software for CAM and control.
- For those who use dedicated software, it is not as powerful as some of the items on this list like FreeCAD.
- Inkscape is slow. Some of its updates don’t run well with some computers. Some Mac users have reported slow processing or crashes.
Final Verdict on Inkscape
Inkscape is a good option for CAD learners who may want to do vector graphics as well. It’s crucial to laser engraving, and you can use it as a free alternative to the pro versions of Carbide Create and Easel Pro by editing your 2D SVG files within Inkscape, and importing it back in. It’s also a free alternative to Adobe Illustrator.
Autodesk Fusion 360 (CAD-CAM)
Starting with Fusion 360 from Autodesk, this is software that has more advanced features.
Fusion 360 is free only for personal use or non-commercial use that makes you less than $1000 annually. Otherwise, you have to get the paid version for $60 per month or $460 per year.
- Fusion 360 has genuine 3D abilities. So, you can use it for 3D CAD designs. (Its CAM can also generate tool paths for 5-axis CNC machining, but you can’t fully access its CAM with the free version.)
- Fusion 360 is cloud-based. This gives you a number of advantages. Firstly, you get fast software that doesn’t rely on your processing. Secondly, you can work from any computer anywhere.
- Video tutorials are plentiful for Fusion 360.
- Fusion 360 has a clear user interface.
- Although Fusion 360 is a free CNC software for personal use, over the past few years, Autodesk has limited its free version to basic features.
- So, its free version does not have simulation software. Plus it does not allow you full access to its CAM abilities. Also, you can export or import fewer file types.
- Although Fusion 360 is a capable 3D CNC software, it is simpler than other 3D software such as Solidworks. So, even if it goes in the more advanced category of CNC software it sits low there.
Final Verdict on Autodesk Fusion 360
Fusion 360 is the best choice for those who want to learn or do basic 3D modeling and machining.
Solidworks is the most popular design software among mechanical engineering students. Solidworks is definitely not a free CNC software by default, but you can get it for free if you are a student or an eligible entrepreneur.
This is a good marketing strategy to let potential future customers learn Solidworks early on.
- Solidworks is very powerful and full of features. You can use it for complicated 3D CAD designs and 5-axis CAM.
- Solidworks has assembly features for integrating 3D parts.
- Solidworks has online training through your account.
- Only eligible startup businesses and students can get Solidworks for free.
- If you are a hobbyist with simple woodworking needs, it is unnecessary to go through the learning curve of Solidworks.
Final Verdict on Solidworks
Solidworks is a great choice for engineering students and startups that look to manufacture 3D parts.
FreeCAD is open-source 3D CAD software – so it is completely free forever. FreeCAD is tremendously strong, but its focus is not on manufacturing or CNC.
- FreeCAD is completely free.
- FreeCAD is incredibly powerful.
- Because of the above two reasons a lot of people are using it for various kinds of CAD purposes. So, there are a lot of video tutorials online.
- FreeCAD has good import-export abilities. It can also send files for post processors that make animation.
- FreeCAD has a steep learning curve.
- There are some reported bad installations of FreeCAD.
- You don’t get integrated CAM software with FreeCAD.
- FreeCAD does not have manufacturing as its main focus. So, it has fewer ready features than Solidworks for manufacturing purposes.
Final Verdict on FreeCAD
FreeCAD is a great choice if you want advanced and completely free dedicated CAD software.
Free CNC CAM Software
Some of the CAD software we introduced also had integrated CAM, but if you want a dedicated and free CAM software, then you don’t have many great choices.
Openbuilds CAM Software
Openbuilds is also trying to offer free software solutions to go with their CNC routers. So, they have Openbuilds CAM Software and Openbuilds Control. Openbuilds CAM is web-based and simple.
Then, you can move on to Openbuilds Control for your controlling needs as well. We introduce Openbuild control further down.
FreeMILL CAM Software
FreeMILL from Mecsoft is free CAM software. It gives you a basic taste of their more advanced paid software. This way, you get to decide whether to buy their other CAM software.
The advantage FreeMILL has over Openbuilds is that you can import 3D models in several formats such as STL files.
But don’t expect to do much with them except the ordinary toolpath strategies for 3-axis CNC machines. So, you can’t define 5-axis machines or even get useful toolpath strategies like V-carving.
You don’t get many features in FreeMILL. But it can do your basic CAM toolpath.
EstleCAM has a free trial period that you can use forever. But if you stick with this CAM software, you may want to buy its $60 license since the trial version reportedly gets slower the longer you use it.
EstlCAM is not advanced but it offers a lot more for hobbyist-level users compared to other free CAM programs. You can import both 2D and 3D models into Estlcam.
One of my favorite features of EstlCAM is the Vcarving toolpath.
Remember that in Easel and Carbide Create, you only had this option in the paid versions. EstlCAM also offers you automatic toolpath strategies and sequences which you can choose manually as well.
EstlCAM can also control GRBL-based controllers. It can jog the machine controller and adjust the spindle speed. EstlCAM also supports automatic tool changing.
Free CNC Controller Firmware
When it comes to your CNC controller, you have three options: industrial controllers, parallel port interfacing or its alternatives, and microcontroller boards flashed with free and open-source firmware.
In the old days, the only option was to buy an industrial controller. They come with their own control software (G code sender).
When computers became widespread, hobbyists came up with a solution that used their computers as the CNC controller.
With this method, you can do one of two things:
- You use your computer’s parallel port directly for the electronic motor signals – which is unwise. Not to mention that most modern laptops do not even have a parallel port.
- You can use a board like Ethernet Smooth Stepper to insulate your computer’s motherboard and get extended pins. Many of these boards can work with USB.
LinuxCNC and Mach 3 are software that could turn your computer into your CNC machine’s controller.
Although Mach 3 and LinuxCNC are still popular software, this method is becoming outdated since we have a third option these days.
Microcontrollers have recently become cheap and widespread. Since Arduino and similar chips came around and took care of basic electronic circuitry and user-friendly IDEs, programming them has never been easier.
At last, the open-source software community came up with controller firmware that you could flash into microcontroller boards and get a real stepper motor controller – just at the cost of buying the raw electronic board.
Here, we will introduce free CNC controller firmware.
GRBL Free CNC Firmware
You can get GRBL for free and flash it into an Arduino Uno (or Mega 2560, or Esp 32, or Rambo) and get a 3-axis CNC or laser controller.
The only limitation is that GRBL performs open-loop control. So, it is best to use it with stepper motors.
There are rare attempts to use GRBL with servo systems that close the loop at the driver. But at the moment, industrial controllers are best for closed-loop systems.
You could also buy a ready one from a variety of ready controller shields and boards that are based on GRBL. In fact, a lot of hobby CNCs like the X Carve, Shapeoko, or Longmill run on GRBL.
One huge advantage of GRBL is the number of free control software that can run it free of bugs. Openbuilds Control, CNCjs, UGS, Easel, Carbide Create, and many more can easily control GRBL.
TinyG (and G2Core) Free CNC Firmware (vs GRBL)
Instead of GRBL, you can also flash TinyG into an Arduino Uno and get a CNC controller. Like GRBL, TinyG is only meant for stepper motors (open-loop control).
Here are the main advantages of TinyG over GRBL.
TinyG can do up to 6-axis control (XYZ plus ABC). Plus, TinyG has more complex math that generates better (smoother) motion for stepper motors (constant jerk motion). It has a buffer wipe that allows you to stop a motion in progress while jogging.
The TinyG project has advanced to the second version with G2Core. It has the smoothest control motion for stepper motors (with 5th order equations that bring in jerk control). You need Arduino due to flash G2Core.
But TinyG is not nearly as popular as GRBL which has led to several disadvantages for TinyG.
Although there is a Gshield that you can buy (for 4-axis control of small motors), there are simply more ready controllers based on GRBL.
When it comes to free CNC control software, there are more software options and better support for GRBL. Even some software that works with both GRBL and TinyG is not perfectly functional with TinyG.
For example, UGS can interact with TinyG too. But my experience (with the older version) was that it didn’t work as trouble-free with TinyG as it did with GRBL.
I have used CoolTerm with G2Core, and it can’t handle the amount of data G2Core pushes back even at the 115200 baud rate. Also, it couldn’t perform the buffer wipe if you had sent a lot of G code lines to the buffer before wiping.
The functionality of various control software is the reason behind GRBL’s huge success. So, unless we see enough fully functional control software for TinyG, GRBL remains easier to use.
Chilipeppr and cncjs are your best options with TinyG although you can also use UGS and Coolterm. Chilipeppr is completely bug-free with TinyG.
Lastly, all GRBL controllers that run on the Arduino Uno board can be flashed with TinyG as well. To clarify, they have the same hardware (Arduino Uno), only the firmware is different.
So, it is possible that Inventables, Shapeoko, Openbuilds, or other CNC brands make control software for TinyG in the future and you will be able to update your GRBL CNC machine controller to TinyG.
Free CNC Control Software
After you have done your computer-aided machining, you need software to send G code files to your controller.
The choice of your free CNC control software depends on the controller that you use. (We have discussed your controller options in the previous section.)
Industrial controllers come with their own software. Also, we have already introduced Easel and Carbide Create for GRBL-based CNC machines. So, let’s investigate other options.
Openbuilds Control Software (GRBL)
Openbuilds Control software is compatible with GRBL controllers. Openbuilds also has a BlackBox motion controller which is basically a GRBL controller with a motor driver shield. They encourage their users to use Openbuilds Control.
Openbuilds Control is actually a decent GRBL controller. What I liked about it is that it allows you to use your mobile phone to jog your CNC machine. That is a cool feature since I leave my laptop far from the CNC machine and I need jogging when I’m inspecting my stock.
Openbuilds Control has automatic probing and guides you on how to calibrate your GRBL.
If you are using GRBL, Openbuilds Control will not let you down.
UGS Free CNC Control Software
Universal G code sender is a very popular free CNC software. It is not universally compatible with all controllers, but it works with GRBL, TinyG, and Smoothieware.
UGS has a straightforward user interface with a visualizer that shows your model and toolpath. It can jog your controller, show data push back, and set up your motor settings.
UGS shines in that it controls all open-source controllers well.
ChiliPeppr Free CNC Software (G Code Sender)
ChiliPeppr is free CNC software that works well with TinyG and G2Core. It can also control GRBL. ChiliPeppr is cloud-based and works from your browser.
Some users have an aversion to control software that require cloud storage, but rest assured that after ChiliPeppr loads in your browser, it sends G Codes locally. So, you need not worry about reliability issues.
ChiliPeppr has a lot of widgets and can enjoyably jog Tiny G controllers with its buffer wipe.
ChiliPeppr is a favorite control software with the TinyG (and G2Core) users.
LinuxCNC Free CNC Software
Do you want to turn your computer into a CNC controller? If you have gone down that road, your choice of the control software is limited to LinuxCNC and Mach 3 (or 4).
We don’t mention Mach on our list since it is not free software. Mach 3 has a free demo version that allows you to test the software with very few lines of G code. So, we will focus on LinuxCNC.
LinuxCNC is completely free CNC software. But, LinuxCNC – as the name suggests – online runs on Linux, which is a huge disadvantage. Most of us prefer to work with Windows or macOS, making LinuxCNC impossible, and with most CAD or CAM software not on Linux, it’s a lot to sacrifice to move over.
If this has not deterred you, LinuxCNC is sophisticated and reliable.
It offers you a lot of settings to set up your machine. Plus, you don’t get that rough feel that a lot of people get from Mach 3’s user interface. (Even though some users have developed skins for Mach 3, its original appearance is a screen jam-packed with rectangular tabs and numbers.)
In short, you can make a robust and feature-rich controller out of your computer with LinuxCNC.
Other articles you may be interested in: