Basic Toolchain

Last Update: 22 November 2019

The operation of a CNC router at its core is very basic. A close analogy for machines like the LongMill would be as follows:

Imagine that you’ve got a friend who’s got a very steady set of hands and he’s holding tightly onto a trim router. He can move that router to any location within a limited space, he just needs you to tell him where you want him to move. In order to cut out the object you’re looking to make, you’ve turned that object into a list of points (or locations) in 3D space. By listing those points off line-by-line to your friend as he moves the router to those respective points, before long he’d have then cut out the object.

In that analogy, your friend is a CNC router, the list of coordinates which controls the CNC router is what’s known as a g-code file, and instead of you having to create that list of coordinates by hand you instead use what’s known as a CAM software. With this in mind, you can start to see how it all comes together once you’re following the process of going from a project idea to actually carving it out:

  1. Start off with your design.
  2. Put it into a CAM software.
  3. Take the output g-code file and run it on your CNC router.
  4. Now you’ve got your finished object!

Now, sit back and make sure you’ve understood this process. At it’s core, once you can tell the machine where to go then you’re good to go. With this foundation in mind, we’ll move on to explaining the nuances of how to actually execute on running your LongMill.

CNC Toolchain

Since the process of going from a project idea to actually making it on your CNC router is multi-step, you’re normally looking at using more than one piece of software where each software specializes in one part of the process; this is referred to as the CNC toolchain.

If you have an idea for a project it could stem from a:

  • picture you find online
  • hand drawing
  • vector design or graphic
  • engineering drawing
  • 3D model
  • and more…

All these inputs are quite different from each other and can either be pre-made (found online) or must be made from scratch. The software that deals with this is what’s known as the Design Software. The design software can be Adobe Illustrator, Inkscape, Fusion 360, and many others; whatever software it is it will normally deal with either 2D files (in the form of a .svg or .dxf) or 3D files (in the form of a .stl .obj .step or .iges) and once it’s prepared the image you found online, drawing you’ve made, or your 3D model then you’ll be able to open it up in the CAM software.

As previously mentioned, CAM software is the tool that you use to take the design you have and turn it into a g-code file. It does this by accepting certain inputs from you, including:

  • your machine specifications
  • your project material and its dimensions
  • your project cutting tool (or tools)
  • the desired carving operation

Some CAM softwares are made to only accept 2D design files (like MakerCAM), others only accept 3D design files (like CAMLab), and a small subset can accept images straight from the internet (like Halftoner).

With the g-code file made from your design, the last step is to set up your machine and run the g-code by using an Interface Software. This software is still run on your computer or laptop and allows you to:

  • manually jog / move each axis
  • set the starting point of the cutting operation either via limit switches, touch probe, work coordinate offsets, or manually
  • check the g-code looks correct via it’s g-code visualizer
  • send / live-stream g-code files to the LongMill
  • override the g-code file while it’s being sent, including making the machine run faster / slower, pausing / resuming the cutting operation, and stopping the cutting operation altogether

Choosing your Toolchain

Seeing now how this process works, it’s understandable that there isn’t a single piece of software out there that will do everything you need it to do and be accommodating to everyone that uses it. There are some options out there like Fusion360 which is a design software and CAM software in one, and Easel which is does design, CAM, and interfacing all in one; but these won’t accommodate everyone since Easel can’t create more complicated carving operations meanwhile Fusion360 has a really large learning curve.

To address this we made the LongMill software agnostic, meaning it can accept input from nearly any software out there. This way, with some initial guidance from us, you can find the best toolchain for your personal use. The primary factors that determine this toolchain for each individual is their:

  • previous design experience
  • previous CNC experience
  • difficulty of projects they’ll be making
  • budget
  • preference toward online or desktop software

An example of one possible toolchain could be as follows:

  1. Dan has had previous experience in graphic design, and now that he’s jumped into the world of CNC routers he wants to engrave one of his designs into a nice piece of maple on his LongMill.
  2. He starts by creating his vector artwork in Adobe Illustrator since that’s his design software of choice.
  3. After having made the artwork, he opens it up in Carbide Create. He prefers Carbide Create because it’s an offline software that is easy to use and can create a v-carving from his original design.
  4. Once Carbide Create has made the machine code file, he opens it up in UGS. UGS is the software he uses to interface with his LongMill, allowing him to easily jog it around, set the origin point, perform probing, and he can use it to load and execute cutting files.
  5. Once UGS completes the loaded file cutting operation, Dan will be able to grab the maple off his LongMill with the completed artwork engraving!

In this example, Dan used three pieces of software in his software toolchain. This allowed him to start with a program he was comfortable with for the design aspect (Adobe Illustrator), then move on to a beginner friendly code-generation software (Carbide Create), before finally running the generated code file using the machine interface program (UGS). This is just one software combination of many. Here are some other possible examples:

  • Inkscape → Carbide Create → CNCjs
  • AutoCAD → CamBam → bCNC
  • Rhino RhinoCAM → Source rabbit UGS
  • Picture online → F-engrave → bCNC
  • TinkerCad → CAMLab → CNCjs
  • Onshape → Kiri:Moto → Kiri:Moto Sender
  • Blender → ESTL CAM → UGS

We’ve done a lot of research on what’s out there for you to use, so in the following pages you’ll see how we’ve categorized what’s out there in a way that points you in the right direction. If you’ve got any other questions about the CNC toolchain or need some clarification, feel free to contact us directly or ask via our Facebook and website forums.