CNC Milling Software / Workflow

So you have or are thinking of getting a shiny new Computer Numeric Control (CNC) router, but are unsure of the workflow and skills you will need?

Disclaimer:  – This blog post may sound like a plug for Autodesk’s Fusion360. apologise for our clear bias, however Autodesk have released a beautiful 3D design environment,  with integrated cam, and given it to hobbyists for free!  If there were any other such offerings we would rave about them too!
Workflow: The general workflow is CAD => CAM => Stream to CNC machine.

CAD: Computer aided Design

With your CAD software, you will design the object you want to create in 2D or 3D.
There are lots of options, some of which are:
  • Autodesk Fusion 360 – free and paid versions, works on MAC, HIGHLY RECOMMENDED
  • Sketchup – free and paid – not recommended
  • Autodesk Inventor – paid – expensive, fantastic, expensive;)
  • Dassault Solidworks – paid – expensive, fantastic, expensive;)
Its tempting to use Sketchup, or Inkscape thinking they might be easier intro into running your machine, in our view any time spent here is wasted as you will need more than these tools can offer you.
CAM: Computer Aided Manufacturing
CAM (for our purposes) in short is the process of applying tool path information to your CAD designs and generating G-Code which is the instructions you send to the CNC machine.    G-Code are basic text commands, so eventually you can write your own if so inclined.
There are lots of options, some of which are:
  • MakerCam – free and pretty cool but ultimately a bit rubbish
  • CamBam – Paid, not too expensive and very nice
  • Vectric Vcarve & Aspire – Paid, Not cheap but… pretty sweet!
  • Autodesk Fusion 360 – free and paid versions, works on MAC, HIGHLY RECOMMENDED
Our Pick for mechanical type parts is Fusion 360, for artistic works is Vectric VCarve Pro.
As well as being a great 3D Design environment Fusion 360 has integrated cam.
With other non integrated cam packages, you need to export your design files, import them into the cam package, setup all your toolpaths and… hope to hell you don’t need to change the original design or you have to start all over again.
With integrated cam, change a part and the cam adapts!  If that doesn’t excite you now, it will later.
Stream to CNC machine
Depending on your machine, you may be able to load a cam file into the machine or you may have to stream it in.
If your using an open source controller such as the Arduino based GRBL  (X Carve and Some heavy mill users) you will be looking at the streaming method.
The Arduino Uno has only limited amount of memory, and so cannot hold the contents of a G-Code file in memory.  The Gcode files are usually many thousands of lines long.  So we need a streaming program which will essentially spoon feed the Arduino lines of G-Code at a pace set by the arduino.
A super simple option for this is UGS  (Universal Gcode Sender) a more advanced and pretty cool sender is chilipeppr
In all of this we have ignored Easel and 123D
Many find it easy initially to use Inventible’s Easel. Regardless of the brand or type of machine your using, if it runs GRBL you should be able to make use of Easel.  Its actually a very handy way to setup your motor directions and homing cycles rather than tinkering with settings inside GRBL.  Other than that though its far to basic to be of allot of use to you past this point.  Users will outgrow it within a few jobs but thats ok its a nice easy way to start if so inclined.
123D – we want it to be just a little bit more – and are sure it will be soon.
Ok so thats allot of info – don’t worry if it doesn’t make sense now, as you work through the process it all becomes clear.