Upgrade Your CNC

150,706

536

109

Introduction: Upgrade Your CNC

CNC machines are more accessible than ever, with the large range of cheap CNC machine kits from China. The most common type are the 1610, 2416 or 3018 types, referring to the dimension of their machine bed. While they are great machines for their price, their performance is not that terrific. With a few upgrades however, the quality and safety can greatly be improved to turn it into a very potent CNC machine!

In this instructable, I will walk you through the upgrades I made to my machine, including:

  • Adding safety features
  • Upgrading the spindle to cut aluminium
  • Adding bluetooth control
  • Adding an enclosure
  • Adding manual control

We will start this guide with an assembled CNC kit. There is enough documentation already for the assembly of these kits, so I will focus on the upgrades only.

Most upgrades will be 3D printed. The necessary files are included in each step, as well as a wiring diagram. Besides a 3D printer, we'll also need a soldering iron and some basic tools.

Let's get started!

Step 1: Cable Management

As a first step, we will put the electronics in an enclosure and nicely route the cables to the main board. This protects the PCB from dust, and shorts in the case of milling aluminium.
Furthermore, we will add a drag chain for the wires.

Parts in this step

  • Drag chain 15 mm x 25 cm
  • 40 mm fan 12V
  • Zip ties

Electronics box
Start by printing Electronics_box.stl and Electronics_lid.stl and install it on the CNC. Add a fan to the inside and connect it to the 12V powersupply. Neatly route all stepper motor cables to the box and secure with zip ties.
Cableguide.stl is a part which fits in the channel of the extruded aluminium and allows for even nicer cable management.

Drag chain
Print DragchainCoupler.stl and place it on the Z stepper motor. The drag chain can be bolted to this part and also secured to the aluminium rails. When routing the wires through the dragchain, it is a good time to add 2 extra pairs of red and black wires for the next steps.

Step 2: Add Homing Switches and Soft Limits

Now that the wiring is neat, we can start with the real upgrades. Homing switches will allow us to home the machine and soft limits will prevent from crashes.

Parts in this step

  • 3 micro switches + M2 bolts
  • Cables + dupont connectors

Homing switches

The X and Y limit switches are mounted on the brackets which hold the M8 rods by means of LimitSwitchHolder.stl. Print this piece twice and mount it on the locations indicated in the pictures.

The Z axis switch is simply screwed into the Z axis mount. Use one of the extra wires we ran through the dragchain in the previous step to connect this limit switch to the main board.

Solder a red and black wire to the limit switch and add dupont connectors to the other end. Plug them into the PCB according to the wiring diagram.

Updating GRBL

The homing switches and soft limits must now be enabled in the GRBL settings (GRBL is the software which runs on the microcontroller on the PCB). Soft limits prevent the CNC to crash into its own frame by halting moves which would cause a crash.

To do this, connect your CNC to a PC with a USB cable. Use the Arduino IDE (or any other terminal) to connect to the CNC by opening a new serial monitor (make sure you select the correct baud rate).

Type $$ to view the current settings
Type $22=1 to enable homing
Type $27=5 to adjust the homing pull off
Type $20=1 to enable soft limits
Type $130=300 to set the maximal x dimension (for CNC3018)
Type $131=180 to set the maximal y dimension (for CNC3018)
Type $132=40 to set the maximal z dimension
Type $$ again to verify the changes.

Step 3: 48V Spindle and Speed Controller

The spindle is one of the weakest points of this CNC machine. Upgrading it will allow us to cut aluminium quite easily! We will also add a speed controller, which is necessary for softer materials such as acrylic.

Parts in this step

  • 300W 48V 52mm spindle motor
  • 48 V power supply
  • DC spindle speed controller
  • Thick red and black wire
  • Line laser modules

New Z axis spindle mount

To accommodate the large spindle, we will have to make a new spindle mount. Start by taking apart the original carriage: remove the stepper motor, leadscrew, M8 rods and spindle mount. Print Spindlemount.stl, SpindlemountLaser.stl and Z_leadscrew_stop.stl and reassemble the carriage according to the pictures. Finally, mount the carriage back on the CNC and insert the new spindle motor.

At this point, we can also add 2 line lasers to indicate the position of the router bit. Install them in holders and connect the cables to the remaining wires we routed through the drag chain.

Add the powersupply and speed controller

We can now install the 48V powersupply on the back of the CNC with some screws. To mount the speed controller, I removed the 2 outer fins of the heatsink, such that it fits perfectly in between the aluminium frame. Print MotorControllerBox.stl to cover the speed controller. Wire the speed controller according to the diagram.

Some versions of the woodpecker PCB might not have the PWM motor speed control signal brought out to the header pins. In that case, you can solder the wires directly to the original motor control MOSFET, as shown in the last diagram.

By changing the motor controller, the motor might not turn when the speed setting from candle is too high. This has to do with the PWM signal that is generated. To get around this, decrease the speed setting in candle. Another option would be to change the GRBL max speed value via the $30 command.

Step 4: Emergency Button and Z Probe

Two more features are essential for a full-fledged CNC machine: an emergency stop button and Z probe.

Parts in this step

  • Emergency button
  • Cables + dupont connectors
  • Crocodile clips
  • DC barrel jack and receptacle

Emergency Stop Button

Emergency stop buttons can cheaply be bought online and provide a very useful upgrade. Sooner or later your router bit will crash into your material or CNC in a way you didn't intend. Stopping your machine is essential for the safety of you and your machine.

Solder wires to the Normally Open side of the button and the other side to dupont headers. Then, connect it to pin A0 of the main board.

Z probe

Z probing allows you to probe the height of your workpiece. This makes it more easy to set the height of your router bit and allows for making so-called height maps, which are essential when milling PCBs. Since we don't need this all the time, we will connect the Z probe via a DC jack.

The first cable goes from a female DC jack to dupont wires and is connected to pin A5. A male DC jack can then be soldered to two crocodile clips. One is attached to the bit, while the other one is clipped to a (metal) workpiece, like a PCB.

Step 5: Manual Control

CNC stands for Computer Numerical Control, but in some cases manual control is beneficial. Therefore, we'll add knobs to the X and Y axis.

Parts in this step

  • M3 screws
  • M3 nut or threaded insert

Making the knobs

First, print the handles. If you plan on using threaded inserts, print CNChandleInsert.stl; otherwise print CNChanleNut.stl. Both options are shown in the picture. Also print CNChandlehandle.stl and assemble the pieces. Install them on the X and Y lead screws of the CNC machine.

Step 6: Bluetooth Control

As a final modification, I added bluetooth control to the CNC. This allows me to control it through my phone, but is a more advanced step and completely optional. I use the G-code2GRBL android app.

Parts in this step

  • HC-05 bluetooth module
  • 1k Ohm and 2k Ohm resistors
  • Switch

Hooking up the bluetooth module

The HC05 bluetooth module should be connected to the TX and RX pins of the microcontoller. Since the module is 3V3 rated and the microcontroller runs at 5V, a voltage divider is added between the TX pin of the microcontroller and RX pin of the bluetooth module. Furthermore, a switch is added to disable the module, as it otherwise intervenes with the USB communication. Hook up everything according to the diagram.

Step 7: Case

We now have a CNC machine with a lot more capabilities. As a final touch, we will give it a nice case to keep dust and sound under control. It will also make it look neat and professional!
The case is designed to be laser cut; I used 3 mm MDF for all sides and the top, and acrylic for the lid.

The files are specifically for the CNC3018 and will not fit the smaller variants! However, the fusion 360 file is included such that you can adjust it to your needs.

Parts in this step

  • IEC socket with switch
  • M3 bolts and nuts
  • LED strip
  • Carbon filter

Assemble the front and sides

First, add the sides and front to the CNC and bolt them together. The manual control knobs and emergency switch can also be added at this point. An IEC inlet and switch are installed for the 48V spindle powersupply.

Assemble the lid

Next, connect the top to the lid with bolts and nuts. Add an LED strip to the underside of the lid and plug it into the 12V supply on the main board.

Assemble the back

The back of the case has cutouts for the air inlets, to which a piece of carbon filter is added. To prevent dust from leaving though the Y axis stepper motor cutout, print StepperCover.stl and snap it in place.

Lastly, connect all the wires to the main board and close the enclosure for the electronics. The back can now be bolted in place to finish the case.

Step 8: Enjoy

Our basic CNC kit has now been upgraded to a very capable machine, capable of milling aluminium, PCBs or anything in between. Furthermore, the case provides sound and dust isolation, which makes it perfectly usable in my office. If you have gotten inspiration to make your own, please vote for me in the Epilog contest!

I hope you liked the project! Feel free to check out my other Instructables: https://www.instructables.com/member/ThomasVDD/

Epilog X Contest

Participated in the
Epilog X Contest

Be the First to Share

    Recommendations

    • Anything Goes Contest

      Anything Goes Contest
    • Organization Challenge

      Organization Challenge
    • Crafts For Kids Challenge

      Crafts For Kids Challenge

    109 Comments

    0
    ThomasR129
    ThomasR129

    3 years ago

    Hey there... I'm looking to buy a CNC 3018 machine for doing some parts for guitars (pickguards) but can't find one with a bed that does 300x300mm... all seem to be 300x180mm. Is there a way to (easily) extend the bed by 120mm? Thanks.

    0
    Makers_Hub
    Makers_Hub

    Reply 9 months ago

    Hi ThomasR129,
    There is quite an easy way to expand the bed. You can quite easily buy an upgrade kit that upgrades it to a 3040 machine (30cm x 40cm) if you are still interested.

    Kind regards
    Makers hub

    0
    ThomasR129
    ThomasR129

    Reply 9 months ago

    I am... though that comment was 2yrs old. :D I have the Sainsmart 3018Pro... doesn't get used very much sadly. But, would still like it to be large enough to cut out full sized guitar pickguards.

    0
    Makers_Hub
    Makers_Hub

    Reply 9 months ago

    0
    ThomasR129
    ThomasR129

    Reply 9 months ago

    That's insane... over $100 for 2 beams and 3 rods... doesn't even have a larger bed? Sheesh. I'll wait. One day I hope to have one that's about 600x900 (2'x3') for a bed size for guitar bodies and necks. I'll just keep saving my pennies... though Canada no longer has pennies. :D

    4
    ThomasVDD
    ThomasVDD

    Reply 3 years ago

    Since the system is made from makerbeams, you could buy longer 20x20mm beams and M8 rod to make your frame bigger. Let us know if you manage to achieve it!

    0
    geordie54
    geordie54

    Reply 2 years ago

    i extended the bed on mine 400 mm but i had trouble obtaining the right t8 lead screw i was lucky i had some 10 mm round bar lying around just had to drill and tap the ends then order some 20x40 etrusion for the frame

    0
    mjdp01
    mjdp01

    Reply 2 years ago

    Thanks your for your share about increasing the bed on your 3018 to 400
    mm. That's really great! And now you a workarea of 300 x 400 mm?

    Do
    you have a pic you can share please. I would like to get the 3018 and
    modify it and any information you can share about the exact lenght of
    extrusion you needed to cut for extending the 400 mm on the y-axis. Many
    thanks!

    0
    geordie54
    geordie54

    Reply 2 years ago

    hi the extrusion i used was 2040 with 6mm slots i also changed my lead screws to single start

    0
    mjdp01
    mjdp01

    Reply 2 years ago

    I got myself a CNC 3018 Pro and just got it all assembled. This Y axis alu profiles are 300mm long, shaft screw is only 8mm and the two linear rails are 10mm diameter so not so rigid.

    As soon as I become familiar with using the cnc, I would like to tincker with increasing the size to preferably 300 x 300 mm work area. From what @cncholic mentioned below the Y-axis shaft, linear rods and bearings would also need to be upgraded but I am not quite sure as to what size alu profiles (lenght) would I need to get the y-axis extended to 300mm from the current 160mm. And the best diameter for the shaft screw and linear rods/bearings in order to make it sturdy??

    2020-11-10 10.06.21.jpg
    0
    geordie54
    geordie54

    Reply 2 years ago

    basically it just means that i can get the full 200 mm rather than just 180mm extending too far would create more problems i have already upgraded the motor to the bigger 500 w one but because of the method i used it in its self has also created problems for me solve i will add some pictures when i have a bit more time

    0
    mjdp01
    mjdp01

    Reply 2 years ago

    Thank you for your reply. From what I am finding out, the z-axis assembly of the 3018 is very poorly designed and hanging from 2 T8 steel rods is not rigid enough when you fit those heavier spindles. I think it would require a total redesign of the x-axis to have T12 Steel rods.

    I was looking to get this low cost starter machine for learning about CNC and to do some prototype cutting and milling 3 mm acrylic material and maybe milling and engraving wood. But I felt the 180 mm y-axis is too small and having at least 300 mm x 300 mm would work well because the smallest size the acrylic sheets are sold is 1 sq ft.

    Here is what I was thinking would work in terms of increasing the y-axis workarea.
    (a) Replace the two from left and right side Y-axis aluminium profiles with the same size as the X- axis profiles which I think are 15 inches.
    (b) Replace the Y-axis motor thread screw to be the same as the X-axis screw
    (c) Replace the 2 T8 Steel rods for the y-axis bed.

    I could be entirely wrong in my above assumptions and will invite your thoughts and of others who might have tried to so this.

    0
    geordie54
    geordie54

    Reply 2 years ago

    the problem with extending the x-axis to 400mm plus especially if your intending to use the bigger motor as i have is the torsion when the z-axis moves down to the cut and moves along your design the steel guides tend to move back and forth so you to adjust your cut depth to lessen this and would mean your project would take longer to complete ive added a couple of images of mine you can see the size change in the y-axis and the dust from working with slate

    20200927_103128.jpg20200927_103139.jpg
    0
    mjdp01
    mjdp01

    Reply 2 years ago

    Thanks for your detailed reply. I like the enclosure you have made to house the 3018 - nicely built. I think it is a must have for any CNC machine to operate it safely and keep the noise out and dust from getting everywhere. Is it made from thin MDF board? I will put it on my list of must haves :)

    Yes, I would prefer to have a stronger spindle motor than the stock 775. I haven't done any research on the weight and power rating ratios of what the 3018 frame can support.

    I am fine with the 300 mm x-axis coverage so I would not want to make any changes to it. What I am more concerned is the very small 180 mm y-axis limit. I have added a pic to get an idea of the stock 3018 dimensions.

    So what I was thinking of doing is increase the lenght of the 32 cm aluminium profiles along with the y-axis thread screw and steel rods so that it can have more travel and shift the x-axis gantry forward to compensate for the bed to move by an extra 120 mm. Something along those lines :)

    Capture.JPG
    0
    cncholic
    cncholic

    Reply 2 years ago

    you can easily extend the two alu profiles left and right to any length you like. Just add a new piece and fix it by adding a plate inside and out. You need to get a longer T8 screw but that is easy to do and to buy. HOWEVER, the Y axis design is based on unsupported 12mm shaft and the longer you make it the weaker you make it. There is a reason for the original cutting dimensions.
    You can overcome the problem by replacing the shaft with supported linear rails. But that means you would have to replace y bearings too. If you have the 3018 it is worth considering. If you do not have the machine, start off with something that fits your needs.

    0
    geordie54
    geordie54

    Reply 2 years ago

    yes i understand where your coming from i have enclosed a shot of the alloy extrusion i got for mine i also replaced the lead screws with single start for better accuracy i think i have gone as far as i can with this machine now the only thing i might do is add extra steel runners on the bed that might help stabilise it more oh and yes the case was made with 10 mm mdf i borrowed from the neighbour

    Screenshot (3).png
    0
    mjdp01
    mjdp01

    Reply 2 years ago

    Thank you so much for your reply. I am going to dip my toes and get the 3018 frame for its limitations and tinker around with the spindle and bed size. Will report back my progress in due course.

    0
    Makers_Hub
    Makers_Hub

    Question 9 months ago

    Hi,
    I noticed that you said the speed controller needed PWM to control the motor. I am about to buy a 3018 machine and noticed that it had PWM control for the laser port. Could I use this to control the motor?
    I will leave a link at the bottom for the 3018 machine as well as some pictures.

    Kind regards,
    Makers hub

    https://m.vevor.com.au/wood-engraving-machine-c_11142/vevor-cnc-3018-pro-10000-rpm-3-axis-grbl-control-cnc-machine-laser-engraver-p_010370181592?gclid=EAIaIQobChMI2-qqxsiL9wIVhZVLBR3pWAZBEAQYASABEgIB1fD_BwE

    https://image.vevor.com/us%2FMGDKJ3018MJCK0001V3%2Fgoods_img-v4%2Fcnc-3018-f4.jpg

    1
    ThomasVDD
    ThomasVDD

    Answer 9 months ago

    Sure, you can connect the PWM control to your motor controller.

    0
    Makers_Hub
    Makers_Hub

    Reply 9 months ago

    Cool!
    Thanks this saves me a lot of head aches and troubles.

    Kind regards
    Makers hub