How to connect your cnc machine to a PC

  • 7 mins read

This article will show you how a typical home cnc machine will be connected to a PC and a list of the main pieces of equipment you will need.

  • A Computer (PC) with cnc machine control software is connected to a…
  • Cnc motion controller board which is connected to a…
  • Stepper drive which is connected to…
  • Stepper motors which are connected to a…
  • Milling machine
  • All the above are connected to their own power supply.
info graphic showing pc to cnc

What equipment will you need to connect your cnc machine?

Windows PC

Obviously you are going to connect a cnc machine to a computer, any old PC will be capable of running your cnc mill. I say any old PC because I would not suggest using a new laptop in your workshop next to a mill. That could be an expensive mistake when it gets showered in metal chips!

If you don’t have an old PC I would suggest getting a cheap one from craigslist or somewhere similar.

It does not have to be a powerful PC because there is an extra piece of hardware you will need that will do the computing for the cnc machine. I will discuss this later in this article.

If you own an apple mac you will be out of luck. I did some quick research on the subject and I did find one website for apple mac cnc control software but it looked really bad. The website itself looks like the owner hasn’t updated it since the nineties:(

Cnc machine control software

Once you have a windows PC you will need to download software that will enable it to control your cnc machine.

This software will only read your g-code program, it will not generate your program for you..

It will use a g-code program to send commands to your machine to convert into movements using the stepper motors. This software will also enable you to move your cnc machine “manually”. This means you can press a virtual button to move any of the axes.

This function is primarily used to locate the datum of the part you will be machining. You can also use it to do some simple machining tasks. For example, facing the top of your stock flat.

A few examples of machine control software are:-

Mach 3

Mach 3 is the software I use to control my cnc milling machine. I found it very intuitive as it is like the software on the cnc machines I am using at work. I chose it because it seemed to be the most popular software available.

mach3 interface
Mach 3 screenshot

It does everything I need it to do and a lot more than I will ever use. It is not perfect though and I have found a few minor issues with it and it has crashed on me a few times. Check out my article ‘Mach3 Cnc Software Tutorial‘.

This software is not free but you can download it and try it out with some limitations without buying a license.

At the time I am writing this, a license costs $175…

Linuxcnc

Linuxcnc is an open source machine control software that looks similar to mach 3. I have never used it so I cannot say if it is any better or worse than mach 3.

linux cnc

Being open source software it has a lot of support and information. It has an active and large forum on the main website and an extensive wiki page.

The big advantage of this software is that it costs nothing but it requires some computer knowledge to get it installed and working.

I wouldn’t even know how to install linux without doing some research so I didn’t even consider it. I guess i’m lazy.

Universal gcode sender

Universal gcode sender is another free machine control software. I believe this software is very popular. It will work in conjunction with cnc controllers like GRBL and TinyG.

Universal g code sender

I have a full review and tutorial of this software. U.G.S Tutorial.

Candle Grbl Software

Candle is another Grbl based software solution, I have a full review here.

cnc motion controller board

The next element you will need to run your cnc machine is a motion controller board.

These boards take over all the work of controlling your stepper motors away from your computer.

This means you can use a USB or ethernet connection from your PC instead of using a parallel port.

Separating your computer from doing the processing for your cnc machine makes everything operate more reliably.

Your cnc machine will operate a lot more smoothly and it will be able run faster feeds. This will help surface finish on your parts as well as reliability.

smoothstepper circuit board

Having a reliable machine will also enable you to concentrate on learning how to operate a cnc, instead of constantly learning how to fix your machine. I’m pretty sure that would be frustrating and very disheartening.

There are quite a few motion controller boards available so I’m not going to list them all. The board I have is the warp 9 smooth stepper cnc motion controller.

Ethernet SmoothStepper CNC Motion Controller*
  • Simulates three standard parallel port interfaces.
  • Operate a CNC machine from an Ethernet connection.
  • Works seamlessly with Mach3 Software (sold separately).
  • Pulses at rates over 4 Mhz!
  • Made in the USA!

Another popular choice for motion controller boards are made by Sainsmart.

No products found.

Stepper drive

Once you have your cnc motion controller board you will need to use a stepper drive to connect your stepper motors to the motion board. This will enable you to choose how many axes you want on your machine. Typically this will be 3 or 4, depending if you want a 4th axis rotary table.

Gheckodrive stepper drive

I have the Gecko G540 for my machine. This is a 4 axis stepper drive and comes highly recommended from me and many others. You can check the price and availability from amazon through this link below.

Cnc power supply

You will also need a power supply for the stepper motors, mine is 48v, but this may change depending on your stepper motors. A separate 5v auxiliary power supply will also be needed to power the motion controller board. Oh wait… what about the spindle motor!!! A power supply will be needed for that as well…

When I bought my cnc I got a plug ‘n’ play control system. I wanted to get straight to machining the parts I needed, I did not want another hobby building cnc machines. You can check out the control system I have through this link.

cnc machine Control box

A cnc mill with stepper motors

I suppose this one is pretty obvious but I thought it worth mentioning…

You need to choose a mill that is cnc capable. This means it has to have, or be able to accept, stepper motors.

If you are considering limit or home switches with your cnc mill you can read my article about these here.

A cnc machine stepper motor

How to choose a stepper motor

Choosing a stepper motor for your mill can be pretty tricky.

You can’t just choose the most powerful stepper motors you can afford, they need to match the needs and size of your machine.

Having stepper motors that are too powerful can cause problems.

Which stepper drive hardware you have dictates which type and what size of motor you can use. The best advice I can give you is to ask the company you are buying your equipment from. 

The online store I bought my stepper motors from were part of a package put together specifically for the machine I bought.

If building a cnc is what you want to do then I would encourage you to do your own research. I am not the best resource for that. I run cnc machines I don’t build them, although I am planning on doing this in the near future. So keep checking back to this website!

Conclusion

So, to answer the question, “how will your cnc machine be connected to a computer?”

The computer (with software on it to control a cnc machine) is plugged into a motion controller board with a USB or ethernet cable. 

The motion controller board is then connected to a stepper drive which has all the stepper motors connected to it. Also there are power supplies connected to the stepper motors, the electronics and the spindle motor.