In Part 1 I talked about the ongoing process of designing and layout out my DIY router project.  The reason I chose some of the dimensions and materials that I did was due to the fact that I have some existing hardware that I can apply towards the project rather than having to buy new stuff at new prices.

For the motor drive system I went with a package from Keling Inc which included the Gecko Drive G540 4-axis Motor Control System, Keling KL23H2100-35-4B stepper motors, and a Keling branded 350 Watt 48 volt power supply rated at 7.3 amps.

The Gecko G540 drive is an all-in-one 4 axis breakout board and motor driver assembly. You can also purchase the drives for each motor separately and then buy a breakout board and connect everything together but the G540 seems great if you want an all in one solution.  The cost is probably a little less than you would pay for 4 individual stepper drives and a breakout board as well but probably a bit more than the individual components for a 3 axis system.

If you need 5 axes or more you can install an additional parallel port / printer port into your computer and add another G540 to add another 4 axes, a total of 8 axes. This would allow you to build a 5 axis or 6 axis machine plus allows you to add in things such as automatic tool changers. If you just needed 1 or 2 more axes it would probably be better to get an additional  breakout board and individual stepper drives to go with the original G540 to suit your needs. This leaves more data lines open for things such as limit switches, home switches, etc.

The G540 interfaces to a PC via a parallel port which is controlled by the CAM software you plan on running your router/mill/lathe or other CNC device with.  Great documentation is included with the Gecko and it’s not to confusing to set up. It includes the 4 DB-9 connectors your need for your stepper motors as well. You will need some resistors to program the current for your motors. The resistors solder into the DB-9 connector to let the control know what the holding current should be.  My steppers run at 3.5 amps so I don’t necessarily need to use the resistors, but if you don’t use them the controller can’t pull the current back to 70% when at idle. If your motor is rated at a lower current then you do need the resistors to prevent damage to your motors. Everything you need to know for basic configuration is covered in the manual so just read through it carefully.

Click on photos below to enlarge.

There’s not a lot to say about the stepper motors, they’re from Keling Inc. and came with the kit.  The motors have good ratings, look nice and seem to perform alright so far.  The motors were pretty low cost with decent performance ratings. While I had ordered the 387oz in motors Keling did not have them in stock and they emailed me right after I placed my order to ask if the 381 oz in motor would be OK instead.

Also included in the Keling package was a 48 volt 7.3 amp / 350 Watt switch mode power supply. I’ve seen a lot of MeanWell brand power supplies in all of my electronics work and this power supply looks a lot like Meanwell in the case design, component layout, etc so I believe that Keling just re-brands them. That’s fine though as I’ve had a lot of good luck with Meanwell so I hope this one will perform reliably as well.

The other important components which I’ve purchased were some linear drives I found surplus.  The linear drives seem to have decent ball screws in them. I picked up three different sizes but only two of them are going to be useful in this project.  The longer on has about 20 inches of travel and the smaller square one has about 5 inches of travel.  I am going to use the 20″ long ball screw on the Y axis and the 5 inch long ball screw on the Z (up and down) axis of the router.

I will be stripping the ball screws and bearing blocks out of the linear drives as the drive assembly itself is not of much value to me.  The ball bearing rails they used for them are old and crunchy and don’t really fit into my plans anywhere anyways.  It would be nice if I could reuse the ones for the Z-axis but I will end up having to buy another pair of NSK rails for that as well I think.

In the photo below you can see the scale of the G540 controller next to the stepper motors and the linear drives.  The motor which is by itself with a piece of tape on the shaft is waiting for the 36 inch ball screw that I need for the X-axis.

The other thing I purchased was the license for the Mach 3 software for ArtSoft.  Mach 3 is the CAM software which is used to drive the CNC machine.  It takes the G-code which has been created by other programs and processes it out through the parallel port.  You may be thinking the parallel (printer) port is old technology and wonder why these programs still use it, but the answer is simple.  It’s a fast port with individually addressable pins and it functions quite reliable. To run a CNC machine you need precise timing signals and these can be generated through the printer port.  The Mach 3 software has a custom driver for operating the parallel port at high speeds and everything operates seamlessly.  There are some newer control boards out there which are using USB but they have to do the timing on board rather than relying on the PC to generate all of the timing signals. This adds a bit to the expense of the board and there are also software compatibility issues. I’m sure if you wanted to find a USB controller and CAM software to run for your own CNC you would have no problem doing that.

The photo below is of Mach 3 running on my 47″ Phillips HD TV.  I am using my HTPC as my CAM machine right now, and will probably build a new higher end HTPC at some point. The fact is I built it to watch videos and run my R/C flight simulator on the bigger TV but I just don’t get a lot of use out of it for those purposes.

I shot a quick video of Mach 3 running the stepper motors and old linear rails. You can really hear the bearings on the used linear rails crunching which is why I’m not going to be using them and bought the NSKs instead.  Check out the video below.

The one thing I notice is that the GeckoDrive G540 gets extremely hot while enabled, I can see that I’m going to need a fan pointing directly at the back of it with plenty of cool fresh air. While they say it’s safe for the temps to get pretty high, it makes me pretty uncomfortable. Cooling is cheap insurance.


I’ve also ordered 4 sets of NSK linear rails out of the 6 that I need.  Because I needed relatively long lengths for the X and Y axis I went ahead and order 4 1060mm rails with 2 carriages/cars a piece.  The rails are new old stock and not produced anymore by NSK but the have a P4 precision rating which is pretty high and they can be loaded from any axis so they will not be damaged from side loads, etc. The rail is LY20 20mm rail, 20mm x 19mm x 1060mm in size.  The cars are ALC2B01P41 which are high precision with a #1 preload from a possible o-4 preload.

I would like to get a 3kw water cooled spindle motor for the machine but to start with I am going with the DeWalt DW618 router I picked up for doing things around the house. As you can see in the photos below it slips easily out of it’s base and collar and should mount right up into a holder on the Z axis.  It’s a good quality router and should work out well for my initial needs and with the quick disconnect power cable I’ll be able to pull it out of the CNC router when I need to do some work around the house.

I’ve also got some Bosch-Rexroth aluminum extrusion on the way. I bought the extrusion on eBay used for about half the cost of comparable 80/20 aluminum profiles. The profile is large and heavy which makes it expensive to ship, I think it would be fair to say if you’re going to ship aluminum extrusion via UPS to expect to pay a lot. These 10 pieces alone cost $100 to ship. Here’s a picture of the lot I purchased. It consists of 10 pieces of 45mm x 90mm x 1168mm  ( 1.77 inches x 3.54 inches x 46 inches) which will be used to build the Y axis table and parts of the Gantry and Main Base of the machine. I’ll first be giving it a quick pressure wash at work to try and clean it up a bit.

I’ll be using the sliding 10″ miter saw with an 80 or 100 tooth carbide tipped blade to chop the pieces into the sizes that I need to build the various components. My miter saw does a nice job at making square cuts and the aluminum purposed carbide tipped blades do a good cut with a small kerf.

Update 3/13/2011: The aluminum extrusion arrived on Friday and boy was it a pain to move. The box weighed 105 pounds and I had to roll the box to get it into the house. I can still feel a bit of a twinge in my back.  I took some close up shots of the profile of the aluminum as seen below.

I’ve also receive 3 flexible motor shaft couplings to connect the stepper motors to the ball screws. The flexible couplings allow the motor to be off center without causing excess wear on bearings and the motor itself. While it’s good to get the best alignment you can between the motor and the linear drive this gives you an extra level of comfort knowing that you don’t have to be perfect. The couplers came from IM Service and I bought them from the eBay store as it was a bit cheaper than buying them from their website.

I’ve ordered a bunch of corner braces, joining pieces and other things for the Bosch-Rexroth materials from a place in PA but they’re taking a while to arrive. I was hoping such a small order would show up much more quickly, but I don’t know what’s going on with that.  Everything else I’ve ordered has taken a week max to show up, and most things show up in 2-3 days from across the country.  As soon as the parts show up I’m going to start on the sliding table part of the build.


The new linear guides / linear rails arrived and they are great and I also picked up some new tools check out Part 3: First DIY CNC Project – CNC Router Parts and Tools for information and pictures.

Previous: First DIY CNC Project Intro
Next: CNC Router Parts and Tools
Search CNC Posts