3018 CNC Upgrades
3018 CNC Upgrades
3018 CNC Upgrades
by ThomasVDD
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:
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.
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.
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.
Download
https://www.instructables.com/ORIG/FN5/MW5L/JKN8OWNU/FN5MW5LJKN8OWNU.stl
…
Download
https://www.instructables.com/ORIG/FS5/KNZN/JKN8OWOP/FS5KNZNJKN8OWOP.stl
…
Download
https://www.instructables.com/ORIG/F46/ATP0/JKN8OWOL/F46ATP0JKN8OWOL.stl
…
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.
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).
Download
https://www.instructables.com/ORIG/FMI/MHJU/JKN8OWS1/FMIMHJUJKN8OWS1.stl
…
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.
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.
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.
Download
https://www.instructables.com/ORIG/F3E/AM3O/JKN8OWO6/F3EAM3OJKN8OWO6.stl
…
Download
https://www.instructables.com/ORIG/FD8/BK2S/JKN8OXX4/FD8BK2SJKN8OXX4.stl
…
Download
https://www.instructables.com/ORIG/FPR/FZXB/JKN8OX1M/FPRFZXBJKN8OX1M.stl
…
Two more features are essential for a full-fledged CNC machine: an emergency stop button and Z probe.
Emergency button
Cables + dupont connectors
Crocodile clips
DC barrel jack and receptacle
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.
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.
M3 screws
M3 nut or threaded insert
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.
Download
https://www.instructables.com/ORIG/F7L/GJAF/JKN8OX4U/F7LGJAFJKN8OX4U.stl
…
Download
https://www.instructables.com/ORIG/F81/TT0S/JKN8OX4V/F81TT0SJKN8OX4V.stl
…
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.
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.
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.
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.
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.
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.
View in 3D Download
https://www.instructables.com/ORIG/F3E/PJYN/JQCOAD9R/F3EPJYNJQCOAD9R.stl
…
View in 3D Download
https://www.instructables.com/ORIG/FVI/ARMB/JQCOAGH6/FVIARMBJQCOAGH6.f3d
…
Step 8: Enjoy
Our basic CNC kit has now been upgraded to a very in the Epilog contest!
capable machine, capable of milling aluminium,
PCBs or anything in between. Furthermore, the case I hope you liked the project! Feel free to check out my
provides sound and dust isolation, which makes it other Instructables: https://www.instructables.com/me
perfectly usable in my office. If you have gotten mber/ThomasVDD/
inspiration to make your own, please vote for me
Thanks, Gary.
Hi Gary
I reused the hardware from the stock one. They are a press-fit, so you can get them out with a vice
(I used an M10 bolt or something to press out the bearings).
For the print, I used standard settings (20% infill probably), nothing special
Thanks a million.
If you are going all in with your CNC, you also could consider this brushless 400 W spindle motor
with driver and PSU.
https://www.ebay.com/itm/CNC-ER11-400W-Brushless-S...
Another upgrade could be to replace the A4988 stepper motor drives with DRV8825 drives. They
are more quiet, yet more powerful than the A4988 - at more or less the same price.
Cool project!
Using quiet stepper drivers is a bit useless since the spindle overwhelms everything :D
Could be usefull ir more power is needed though.
Awesome instructable! I have the same 3018 and had planned a lot of these upgrades. Thanks for
figuring them out and helping show the way. I'm quite excited working with CNC and have a lot of
queries and suggestions:
1. I wanted to put limit switches to keep it from crashing but don't get the benefit of enabling
homing. In Fusion360, I keep the origin on top surface with respect to stock. So I'm not sure of the
benefit of setting you cnc origin with respect to machine instead of stock?
2. What is the use of lasers you placed next to the spindle? They look too weak for engraving.
3. What cutting feed rate were you able to achieve before and after replacing the spindle? While
cutting plywood at 1mm depth pass, I can only go till 50-60 mm per min feed rate or the machine
starts making a lot of unpleasant noise.
4. I loved your enclosure. I had something similar in mind to keep noise, shavings and dust
enclosed and keep the 5.5W laser inside an opaque box. But I also plan on installing a dust
collector shoe. MDF dust gets everywhere including the linear bearings and may decrease their
life. Also less cleanup later on.
5. Another mod I wanted to implement is a jog controller. The newer 3018 on AliExpress have
boards with external jog controller and SD card support for running it without a PC.
6. I liked your Bluetooth control mod. To free up my PC, I have connected a Raspberry Pi with
bCNC to the machine. That way, I can wirelessly upload gcode files and even control it from my
mobile.
7. I have also glued a MDF spoilboard to the base and cut grooves into it for clamps. That has
been very beneficial. I like the PCB holder base you used. Do you have files for it as well?
Thanks, I'll gladly answer them :P
1. Homing is especially useful to recover your position when making emergency stops or when
Upgrade Your CNC: Page 20
steps are lost. With homing enabled, you re-home the machine and move back to the coordinates
set before. They are also needed for soft limits, which prevents crashes.
2. The lasers are only for aligning the bit to the work.
3. My feed rates for milling PCB material increased by a factor of 10, so it makes a huge difference
for cutting board outlines etc.
4. Nice idea. I didn't want a dust shoe since it requires an extra vacuum system; making noise :s
5 + 6. I have seen those! I'm thinking of upgrading my controller board for this. Unfortunately they
were not available when I bought mine. So I try to replicate this with the bluetooth control
7. If you are interested in milling PCB's with this machine, you might want to check uit my other
Instructable: https://www.instructables.com/id/DIY-Professional-Double-Sided-PCB/ It includes the
links for the PCB holders in step 2 :)
1. How do you define stock origin in the gcode and where do you place the stock once it is homed?
3. Can you provide any reference feed rates you are able to achieve? I'm curious how much I can
push the machine.
7. That's a nice instructable. I was following a similar method for making PCBs. I really liked the
PTH and silkscreen method. Though my solder mask will come off if I sanded it I believe.
1. You can set the origin in any CNC control program. The idea is to know where you set this origin
with respect to your machine origin (defined by your homing switches), which allows you to restore
your origin when it is lost due to skipped steps or whatever.
3. I can achieve about 200 mm/min in aluminium or PCBs (don't underestimate glass fiber) with 0.2
mm depth of cut.
7. Thanks! The UV curable solder mask is quite resilient if you start with a clean, oil free, PCB.
Very nice. I have been considering picking up one of these 3018s but you know... Chinese
manufacturing and all? It scares me. But your upgrades are smart, inexpensive and turn this
machine into a real tool. Thanks.
Go for it. Choose a model on AliExpress which has a lot of orders and reviews. That way you will
have very less chances of getting something bad. I got the same and it has been a great
experience for learning CNC.
They are fun little machines...if you get a laser with it try and get one with separate fan and PWM
input though; having the fan tied to the laser PWM means the fan won't actually run at low laser
power and means the laser doesn't actually pulse with as square a wave as it should as the energy
stored in the fan smooths the pulses.
I had the same feeling, but I'm very glad I took the jump. Glad you like it :)
I would add one more major upgrade to your list. Actually upgrade the GRBL firmware version that
is on the machine. This is especially helpful if you want you use a Laser in them as proper laser
mode works much better in later releases but it also speeds them up in spindle work and lets you
run the latest versions of GCode sender, Candle etc to run them.
Most of these machines from ali-express, ebay etc come with 0.9j while we are now up to 1.1f The
problem is these machines do not actually have the Arduino bootloader on them so you can't just
plug in USB and upload a sketch; you have to actually use an ISP programmer to do it. I don't
remember the exact process I used (I'm also at work) but I know that that can be any Arduino
(loaded with an Arduino as ISP sketch) or any typical ISP. You have to connect the pins in a
certain way and typically the woodpecker boards don't have good connection points for all of them
so you have to hold one while programming....also need a capacitor in there to prevent reset (there
are some web resources out there). I would recommend first burning the Arduino bootloader then
you can upload the sketch through the Arduino IDE.
Upgrading the software would indeed be a nice thing to do.
I looked into this at some point, but my board has no ISP header. Since the GRBL 0.9j does what I
//www.youtube.com/embed/noL3fKs0wxE
//www.youtube.com/embed/kJRy3_heliQ
Do u have a link to "300W 48V 52mm spindle motor" and DC controller for it?
I don't have the links from mine anymore. Just use those search terms on your favorite online store
and choose one with good reviews :)
Hey Thomas, This Instructable is extremely well done! Photos and documentation follow very
logically! It would be great if you included links to anything that needs to be purchased to
accomplish this project. A++++++++
Thank you!
I never include links since I buy most items on aliexpress and things tend to go out of stock or get
out of date. The products should be easy enough to find with the names I provided :)
it all seems very nice and clean. but those manual knobs are left engaged? it seems scary to have
them spinning all the time...
They are indeed, but it doens't bother me. They are small and rounded enough to not catch on stuff
either.
Very well made instructable. I don't have a CNC machine (yet) but I found this very interesting.
Thanks for sharing
Thanks! Glad you liked it :)
Hi Thomas,
Great Instructable! Thanks. I have the big brother of your mill and have been going thru some of
the same steps. Mine is a 2417 with the dual uprights. Surprisingly rigid. Got my motor holder off of
Thingiverse, similar to this:
https://www.thingiverse.com/thing:2707601
Came across this today, which is a fine intro to CAM on a CNC mill/router:
https://www.inventables.com/projects/kevin?
ref=Intercom&utm_source=Intercom&utm_medium=Welcome%20Email%20Series&utm_campaign=2%20-
%20F360%20Beginners-%20Btest
Thanks, Bill