For use or construction of a CNC machine, it's a good idea to understand what all the different components are, and how they work together, similar to owning a Car; the operator should know how to use it's features, for example turn on the Windshield wipers, turn the lights on, place the car/ truck in gear. Having a good understanding of what's happening under the hood is a good idea also, when you know your machine in and out, you'll be more safe, comfortable, just simply able to get the best out of it.

                In order to learn about a particular machine the best thing you could do is to refer to its manual, the manual provides information about the internal parts, it lists specifications such as its maximum values in terms of power consumption, speed, cutting limits, if the machine has an ATC (automatic tool changer) the number of cutting tools it is able to hold, and more.

 Knowing what makes up a CNC Machine is helpful if you want to build your own, or if you want to modify a manual machine. The conventional 3-axis machine is the most common for the Do It Yourself project, the 3-Axis machine can be used for 3D-Printing, Laser-Cutting, Spindle-Cutting (milling), Tangential-Cutting, Plasma/ Torch-Cutting, Waterjet-Cutting, or Hotwire-Cutting. 

People who assemble their own machines at home often have great success, the online community is very large so support is just around the corner, the components required are few, some technical know how is needed (online community) so some reading, troubleshooting, and parts hunting, will be needed to complete this rewarding project.

The best part, after building your own machine, you'll have that extra know how for other complicated projects, and you'll have the machines to help get those complicated projects finished with extreme accuracy, besides all that, it's easier than one might think, everyone has a hidden skill or two.

In case you decide to perform some modifications to an existing conventional machine some things will need to be determined before it can be converted, like Motor size, the proper Driver for that Motor, the proper Power supply/ supplies for the motor(s), even the kind of motor and driver you want to use, Steppers are common but DC, Servo, or AC-Motors can be used with the proper Driver.

Mechanical Breakdown:        


    Motors vary greatly, some have many phases, some are brushless, or with brushes, but they're all controlled pretty much the same way using Drivers with Controllers and Computers.

Serial and Parallel connections are the two main ways CNC Machines interface with the Computer, a Parallel Controller will use a DB25 connector, and the Serial connector would be either a RS232 or USB plug.

PWM circuits containing TRIAC's can be used fro control of AC motors, with a Micro Controller interfaced via Serial-Port. Universal motors can be controlled using any PWM circuit with a Micro-Controller (Serial-Port Communication), an Encoder is used with these motors making a Closed-Loop system for high Accuracy. 

Slides/ Drive Screws/ Belts:

The Drive Screw for the CNC consists of some threaded bar stock; known as Ready-Rod, this stock can be found down the Hardware Isle at the local hardware store, good for a small desktop hobby machines. ACME rod is used for industrial applications because of the thread pitch, the coarser the pitch the faster the machine can move with little motor movement, the Nut for industrial machines has anti-backlash properties, a simple spring also used in the Open-Source 3D-Printer builds is used in conjunction with the Nut.

Belts are also used on some applications, but not common for cutting machines due to torque loss and belt stretching, belts also make for a fast moving machine, hence why Belts are used on the common Open-Source 3D-printers where little resistance is placed on any axis and speed is required.

Bearings/ Bushings:

Linear Slide Bearings:


Other (V-Groove, ZZ, ULN):

                Controllers interface between the motor-drivers and your Computer. It is not impossible to design and construct your own controller board plans can even be found on the web or included with some PCB/ PBA (Printed Circuit Board/ Printed Board Assembly) design software, for example "Eagle".

As noted above, the controller will interface with the PC in different ways, a Serial-Controller will have Firmware installed, a Parallel-Controller will connect directly to the Motor-Drivers, one being much easier than the other to configure.

A Serial connection:

  • Firmware is loaded onto Arduino this is known as a Sketch, information is sent from the computer in the form of a packet to the Arduino, Arduino processes Packets of information based on the instructions written in the Sketch, and electrical Pulses are sent to move the Motor.

A Parallel Driven connection:

  • The Computer sends electrical pulses directly threw the Parallel-Port to Motor-Drivers that move the Motors.

                In addition to the Motors, the Bearings, Controller, and Power-Supply, the CNC machine also may carry some accessories, among them could be probing systems, pallet changers for automatic removal and reloading of material, adaptive control systems (temperature sensing for example), and other automation systems, the list of accessories could be a very long one.

In the case these accessories are included with a Machine you purchased, details can found in the user manual, if they are aftermarket additions other manuals/ datasheets should be available online.

CNC Software:
                When it comes to running a machine with the help of CNC software three components are required:

                CAD (computer aided design), CAD software is used to draft a part or complete assembly using the computer.

                CAM (Computer Aided Manufacturing) is software that programs the machine and plans the cut operation, this software converts the CAD drawing into G code,

                Machine Software (compiler), this is the software that converts the G-Code into packets or pulses to control the machine. 

                Software packages or components can be found online, this website offers Machine-Software for sale with Serial or Parallel control, configuration required for use with some machines, some Drivers are already configured just select the appropriate configuration file.

                 Spindle direction, speed of the tooling, and coolant changes are some of the things some machines can't be programmed to monitor, in this case the operator has to manually monitor and control these features.

                When it comes to programmable functions they vary from machine to machine. Also the commands used for changing them also vary from one manufacturer to another, Post-Processors can be written for CAM software so the outputted G-Code will work with your machine, M codes (miscellaneous commands) are included with the Post-Processor.


                Salvaging parts from old electronic devices and toys are great ways to start collecting components and get started if you're a Do-It-Yourselfer and you want to build your own machine. Alternately buying the parts isn't a bad idea either, specially if there's a concern a part or two salvaged won't work properly, or at all.

Collecting a part or two from an old device can be easy... Just smash your way in with a hammer and collect the parts you want, or analyse the construction and learn from it while taking it apart.

Old Printers are a good source for parts, and Motors, depending on the kind of printer Stepper, Servo, or DC, motors will be found in Printers, the Dot-Matrix machines have Stepper-Motors.  It's important to consider voltage and amperage values.