The 2418 CNC Mill is a small machine for cutting/carving detailed shapes in plastic and wood.


I spent a few hours taking great care to assemble it so that everything was lined up and square (see assembly instructions in a previous post). And as I did my eagerness to see and hear it come alive grew. But after I powered it up and plugged in the USB cable I discovered I’d have to wait. It’s taken me just as long to figure out how to get it running, as it did to assemble!

A lot of the documentation I found is great, if you’ve done a computer science degree. Hopefully these notes can save others some time.

Workflow for making a milled part

Firstly, a note on a general workflow in relation to the 2418 Mill:

  1. Refine idea and general form, layout, scale using paper, pens, rough prototyping.
  2. Detailed design and 3D modelling using CAD software (eg Fusion 360).
  3. Generate tool paths for milling using CAM software (eg Fusion 360), and export G-Code file to send to the milling machine. Note that some 3D modelling software may only export STL files, in which case (for the 2418 mill at least) you need another step to convert STL to G-Code.
  4. Send g-code file to the milling machine using G-Code Sender software (eg ChiliPeppr).
  5. Show milled part to friends.

This post deals with how to setup to be able to do step 4.


  • The 2418 CNC Mill I have came with a Woodpecker 3.0 Grbl (this is printed on the board) circuitboard that includes:
    • an ATMega 328P micro-controller (the same that drives many Arduinos), and
    • a CH340G chip (a USB to Serial converter, which is like an adaptor between different ways to send/receive data). This chip requires a driver that you may need to install on your computer.
  • I’m using an iMac with High Sierra 10.13.4

Here’s a schematic that indicates the main components, and what I was trying to achieve.


  • Web-based G-Code Sender: This is the user interface, that allows you to communicate with the micro-controller – to tell it how to move the motors and cut your part. Various interfaces are available that allow either visual, or direct coding in G-Code (a programming language). Some are web-based, and these require something called a ‘Serial Port JSON Server’ to be installed and running on your computer. The JSON Server lets websites communicate (ie send G-code) directly with the machine machine (via USB cable).
  • Grbl is software that’s pre-loaded (in this case) on the micro-controller. It converts G-code instructions into motor movements that do the milling.

Installing the CH340G chip driver

If you don’t have this driver installed your computer won’t recognise/see the mill’s circuitboard, and you won’t be able to communicate with it. Steps to install:

  1. Download here
  2. Unzip
  3. Open CH34x_Install_V1.4.pkg and follow prompts to install and restart your computer.
  4. Important: During the installation you’ll get a security/privacy alert. You need to allow/accept.
  5. Important: Despite point 4 above I also needed to go into System Preferences/Security & Privacy, to the General tab, and ‘accept’ again.

Installing and Running Serial Port JSON Server

If using a web-based graphical user interface (GUI), such as ChiliPeppr, to send G-Code files to your mill, you need to run another little program, on your computer, in the background called a Serial Port JSON Server. This lets the web-based application communicate with the milling machine’s circuitboard (or an Arduino). Steps to get this working:

  1. Connect your computer to the mill using your usb cable.
  2. Download Serial Port JSON Server
  3. Unzip the file. I put the folder it contained (called serial-port-json-server-1.94_macosx in my case) in the Applications folder on my Mac.
  4. Open the Terminal application (find it in /Applications/Utilities folder on Mac. If you remember MSDOS, it’s a bit like that).
  5. In the Terminal window, change to the directory where you serial-port-json-server.exec file is. In my case I’d type “cd /Applications/serial-port-json-server-1.94_macosx/
  6. Execute the JSON program by typing “./serial-port-json-server“. (Note you can execute directly from Finder but doing so didn’t run the program in the same way, and it didn’t work).
  7. You should see something like this (…usbserial…) in the Terminal window:
{/dev/tty.wchusbserial1410 tty.wchusbserial1410 [] }

Let it run in the background while you continue.

Open your G-Code sender

Now open whatever application you want to use to send your G-Code file to the mill. There are plenty of applications available. Here’s an extensive list of G-Code senders. I’m going to try a web-based one called Chilipeppr.

With the computer and mill connected via USB cable, select the relevant serial port in your G-Code sender.

Selected USB serial port (Chilipeppr)

Lastly, make sure the baby is not asleep in the next room. The machine is pretty loud.


One thought on “How to get a 2418 CNC mill moving

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s