Assembly Manual

Last updated on November 2nd, 2018 at 12:22 pm

I bought myself a (chinese) CNC mill or an engraving machine respectively from ebay. It did not come with any assembly instruction rather than the ebay product images. So I decided to create this page on how to assemble the CNC 2417. I paid 260€ including the shipment plus an additional 42€ for customs.

This is what was shipped in the package:

  • t-slot aluminum profiles
  • t-slot aluminum working plates
  • linear guides + linear bearings
  • lead screws + ball bearings
  • plastic (gray) and 3D-printed parts (black)
  • AC adapter
  • laseraxe controller board
  • mini USB cable
  • three stepper motors + cables
  • router motor + cable
  • lots of screws and nuts
  • allen keys in four different sizes

I started with metal brackets, allen screws (short), t-nuts and the longest profiles to build the bottom frame. I aligned two profiles on the table and screwed them together. Then added the other two successively.

The next step was to assemble the working table. I used the two metal connectors (orange box) and four screws (short) and nuts to connect the two working plates. Do not place them where I did first as the allen screws will be in the way of the linear guides. Just place them close to the edges.

The linear bearings are simply plugged into the holes and fastened with regular screws (short). For me the screws actually did not have much effect. I was still able to pull the bearings out. Maybe I will replace the screws with a larger diameter later. Guess what, there are screws with a bigger diameter in the package. How could I oversee them?! After I exchanged the screws the linear bearings could not be pulled out any more. This also had the side effect that the machine makes a bit less noise while moving.

Now, the lead screw nut can be mounted with four of the regular screws. Actually, two lead screw nuts, two springs, and two of the long allen screws are supposed to form something like an anti backlash nut. I discovered this fact after I built the mill so I had to exchange all nuts with the anti backlash version. I was asking myself more than once why they would pack three spare nuts. Now I know… Keep that in mind for the other nuts. They have to assembled in the same way although it can not be seen in the pictures.

Afterwards, the lead screw (longest) and the linear guides (two longest ones) for the Y-Axis can be inserted. Now you can see that I relocated the working plate connectors more to the outside.

Time to mount the first stepper motor and the bearing for the lead screw. The bearing has a locking screw on one side. Make sure it is oriented to the working table. There is a notch through which it can be tightened. When everything is in place the working table should already move if you turn the spindle.

Now the frame is connected to the working table with six allen screws. Notice, that the side with the motor is located on the inside of the frame while the side with the bearing is located on the outside. As you can probably see I was not able to mount the black knobs on the lead screw because it was a bit to short. If you pull the lead screw or the stepper motor axis a bit out of the blue connector it is probably possible.

After attaching the working table to the frame I thought it might have been better to mount the outer plastic pieces first and push the linear guides and lead screw through the linear bearings of the working table afterwards. However, it worked…

The columns for the X-axis are built of the four short aluminum profiles, eight brackets, two plastic pieces, eight short allen screws + nuts, and eight long allen screws + nuts. To get a good alignment of the brackets I placed them on another profile before tightening the screws. You can not align them on the table because the brackets have a little ridge to center in the profiles.

According to the ebay images, the two linear guides should be above the lead screw mounting and the notches point to the back of the machine.

The columns are now connected to the frame with eight allen screws. I only tightened them so that I could still move them on the frame because the are not yet aligned. Afterwards the remaining aluminum profile and two metal brackets connect the two columns. I found out that a good spot to place them is 5cm from the inner back side of the frame as shown in the pictures. Then I tightened the screws and attached the next stepper motor with four long allen screw and the bearing to the plastic sides.

Before inserting the three linear guides and the lead screw, the motor mounting has to be built. It mainly consists of the three black 3D-printed parts with some bearings. The bearings are not screwed in any way because the fit very tightly. I had to push the large housing onto the table to fully bring them into place. The nut can now be screwed through the remaining hole.

The printed bridge-like part is for mounting the Z-Axis stepper motor. The ebay images showed, that only this one is connected with some plastic washers. Again, use four of the long allen screws to attach this motor.

The Z-Axis is built from the two smaller and shorter linear guides and the small lead screw and the motor clamp. Insert the four small linear bearings into the clamp and add the nut. Now you can push the linear guides through the holes of the outer housing and the linear bearings. I could not find any screws to secure them but it does not really seem necessary.

I connected the lead screw to the motor shaft and inserted the last and smaller ball bearing into the lower hole. There is a metal ring to be fastened to the lead screw so the bearing does not fall off.

Time to complete the X-Axis. This should be straight forward. Push the three remaining linear guides through the plastic sides and the motor mounting. Add the lead screw and connect it to the motor shaft and tighten the screws of the ball bearing. Unfortunately but again, when you completely insert the lead screw into the connection it will not be long enough for holding the black rotary knob.

Before mounting the motor make sure that the clamp is really opened. In my case so residues from the 3D-print prevented it from opening. I had to break it open with a screw driver and mild force. The first image shows how it should look like afterwards. Now you can insert the motor with the black printed ring. First, I placed the motor as high as possible but later had to lower it. Otherwise the cutter would have never reached the working table – even with a wooden plate on top.

The controller board is mounted with only three t-nuts and the spacers. In the end I only used two of them because I dismounted and mounted the board a couple of times.

After the cables are connected, the mill should work. Don’t mind the “Probe” pin for the moment. Do not connect the milling motor to the top right connector as it is shown in some of the ebay pictures. Nothing really bad will happen but the motor starts running as soon as you turn on the power supply and can not be stopped or adjusted by the controller. Furthermore, it runs in the wrong direction.

Optional: end stops

Thanks to my colleague who had a few end stop switches lying around I decided to add them to my mill. Practically, the Laseraxe board has connectors for end stops. The connectors are JST XH connectors with a 2.54 mm pitch. I bought a set of connectors and the according micro pliers from Engineer (PA-09). I also managed to crimp some connectors with regular pliers but I had to solder the cable to the connector to ensure they would not detach.

The Y-axis end stop is the easiest to mount. Drill one hole into the plastic next to the y-axis stepper motor, mount the switch and drill again through the remaining hole. I used some remaining screws that came with the mill.

The X-axis end stop is pretty much the same except that the motor carriage will not reach the switch before the spindle mount hits the aluminum profile. As you can see in the images I used two washers and a screw to extend the carriage a bit.

The only switch that I did not mount with two screws due to lack of space is the Z-axis end stop. I reused the hole that is used to keep the linear guide in place and. There is no need to tighten the screw stronger than before as the forces that impact on the switch are quite low.

When the switches are mounted some parameters for the GRBL firmware have to be changed.

In short:

  • $20 (Soft limits): true
  • $21 (Hard limits): false
  • $22 (Homing cycle): true
  • $23 (Homing direction invert): 3

You may be wondering why I did not enable the hard limits. I encountered random hard limit faults as soon as the spindle motor ran. As far as I can tell this should be an electromagnetic compatibility (EMC) problem due to the brush sparking. However, the soft limits work in both directions.

The value 3 for parameter $23 inverts the X- and Y- axis direction for homing. The default case is to seek in positive direction but my X- and Y- limit switches are mounted at the zero position.

15 thoughts on “Assembly Manual”

  1. Thanks very much. I am building my kit today and this will certainly be useful.
    If you have access to a 3D printer, there are a number of upgrades on Thingiverse. Just search CNC 2417.
    I have a 400W spindle I bought a while back I plan on mounting using one of the Thingiverse adapters. Banggood and eBay carry them. The low end ones range about $65 on this side of the pond. Quite a bit beefier than the 2417 included motor.
    (EagleCad is also able to export cut paths for PCB… at least I did use it for that in the distant past.)
    Thank you again. Bill

    1. Hey Bill,
      I also looked at those 400W spindles but found them a bit oversized and heavy. I also already printed some parts from thingiverse like this very clean looking spindle holder ( Just in case mine breaks.
      I also printed some parts to assemble a spindle using a brushless model motor (Typhoon 500H) and a C8 ER11 collet chuck holder (soon to be seen here). I was able to mill aluminum with 200mm/min at 10000rpm and a depth of 0.1mm to 0.2mm. The power consumption was 2A to 3A at 12V. The spindle could have done more but the mill itself is not rigid enough to handle the radial loads.

      A short comment on the 400W spindle. Have a look at this one: ( In the images you can see that the shank is the shaft of the motor (at least it looks like that). Thus, it can probably handle radial loads better than the one you linked as the shaft is thicker.
      Please note: I am not a machinist or anything like that so most things I write are based on assumptions and experiences.


  2. Thanks a lot for this manual, I’m sure it will help a lot when I start assembling mine now.

    Did you meanwhile do something with the “probe” connector?


    1. Hey Michael,

      I mainly use the probe for auto-leveling (height compensation) when milling pcbs. Without this feature it is nearly impossible to obtain a constant isolation depth.
      Another use is to determine the axis and zero-point of an alignment bracket as shown by Othermill ( I really like the idea of not only compensating the milling height but also determining orientation – especially for double sided pcbs. Othermilll sells a “Precision Fixturing … Set” ( but I found it quite expensive so I milled my own.


  3. You have an excellent page, and it is very useful, I also have a CNC 2417. Could you please share your configuration that you get when you put $$ in the command console ?. You could comment on how you do it to level it and that the PCB comes out uniform on all sides, Thanks !!!

    1. Hey Edgardo,
      here are my machine settings. Please note, I have (normally open) endstop switches installed and I use DRV8825 with 32 micro steps:
      $0=10 (Step pulse, microseconds)
      $1=255 (Step idle delay, milliseconds)
      $2=0 (Step port invert, mask)
      $3=4 (Direction port invert, mask)
      $4=0 (Step enable invert, boolean)
      $5=0 (Limit pins invert, boolean)
      $6=0 (Probe pin invert, boolean)
      $10=3 (Status report, mask)
      $11=0.010 (Junction deviation, mm)
      $12=0.002 (Arc tolerance, mm)
      $13=0 (Report inches, boolean)
      $20=1 (Soft limits, boolean)
      $21=0 (Hard limits, boolean)
      $22=1 (Homing cycle, boolean)
      $23=3 (Homing dir invert, mask)
      $24=10.000 (Homing feed, mm/min)
      $25=2100.000 (Homing seek, mm/min)
      $26=25 (Homing debounce, milliseconds)
      $27=1.000 (Homing pull-off, mm)
      $30=7000 (Max spindle speed, RPM)
      $31=0 (Min spindle speed, RPM)
      $32=0 (Laser mode, boolean)
      $100=800.000 (X steps/mm)
      $101=800.000 (Y steps/mm)
      $102=800.000 (Z steps/mm)
      $110=2100.000 (X Max rate, mm/min)
      $111=2100.000 (Y Max rate, mm/min)
      $112=2100.000 (Z Max rate, mm/min)
      $120=75.000 (X Acceleration, mm/sec^2)
      $121=75.000 (Y Acceleration, mm/sec^2)
      $122=75.000 (Z Acceleration, mm/sec^2)
      $130=230.000 (X Max travel, mm)
      $131=157.000 (Y Max travel, mm)
      $132=55.000 (Z Max travel, mm)

  4. Thanks for this. I built this over the past week and it was extremely helpful. Although I did screw it up multiple times and have to go back and fix it anyway.

    It looks like they made a new version of it as mine was slightly different and the screw box was blue instead of orange.

    My version had no trouble having enough lead screw to install the knobs so maybe they fixed that in this revision.

    I am really curious about why they included 2.5 million washers if they aren’t used anywhere on the unit unless I missed something.

    Thanks again this was an invaluable resource and I really enjoyed building the kit and I’m looking forward to playing with it some more

  5. One more thing.. The printed X carriage on mine the bearings were like a hot dog in a hallway… One wouldn’t even stay in… I used a little hot glue around the hole and on the bearings to secure them as I’m sure they would come out otherwise…

    I’ve also found I can hot glue my work piece to the bed and just pop it off after… This will do until I can get the hardware to clamp it properly.

  6. Thank for the tutorial. I’m a complete CNC novice and it definitely helped me assemble my CNC but I have an issue re the milling motor. Once it’s connected to the laser connector (as suggested in the diagram) and not the top right, is it supposed to turn on by itself when GRBL control software starts a run? I imported the Gcode of a design for a dry run and for some reason the spindle didn’t turn on.

    1. Have you checked wether your gcode contains an M3 (or M4) command to start the spindle?
      For testing you can try to send an M3 command manually. Which software do you use for sending gcodes?

  7. Ive got the laseraxe laser/router machine for laser engraving and have it somewhat working. I am not sure how the controller board should be connected to the laser itself. I currently have the laser plug connected to the pwm/grd on the laser head and then a 12volt power source to the voc/grd plug. The laser doesn’t come on or off using the software. Any ideas what I may need to do.

    1. Hi Terry,
      have you checked if the laser works by pulling the pwm-pin to either GND or VCC? If it works can you check if the pwm-output of the laseraxe board is active using a scope or multimeter?

    1. Hi Nor,
      in the attached picture you can see my mouse pointer. After making your settings click on the “Controller” button. The progress bar at the bottom will show the progress.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.