CNC is a popular topic on this website. I've built one, and I would like to take a moment to share some of my thoughts on the matter to those thinking about making their own. There's a gazillion different DIY CNC machines on the Internet and they all look cool. But many of those same machines suffer from basic design, and decision flaws. This article is focused on the lower end of the market. If you have money for THK linear guides, and ground ballscrews, then this is NOT for you!

For everyone else with a more modest budget to invest read on.

Step 1: What Makes You Such an Expert?

A fair question.

Well I have managed to make my own CNC machine. I should add that I made what I would consider a fairly capable machine too. It did not happen the first time I tried, or the second. The third time was not a charm for me either. But this one here is about the fourth machine I built, and it works great.

How great? Well, I have run it up to one hundred and seventy four inches a minute travel speed. I have isolation routed a printed circuit board on it too. Both pretty impressive capabilities for a machine that cost so little.

How little you might ask? I did not keep a running tally but I estimate I have about $200 into this machine, in total. That includes the cost of the computer, and the router spindle too. All of it, everything. The machine frame, the mechanical components, the electronics, every nut, and screw. But I scrounged up a lot of the materials, or bought it used. Someone could build an identical machine and spend a lot more than I did.

So tell us wise old sage, how did you manage this fantastic feat? Read on, that's what this article is about.

Step 2: It All Sounds Too Good to Be True

Perhaps it does. I have not told the whole story yet. While the machine I made is quick, powerful, and precise, it does not have a large work envelope for its physical size. That is because I had to make a design compromise due to the cheap linear guides I used. AKA drawer slides.

Yes, this is a drawer slide CNC machine. But I managed to score some high quality Accuride full extension bearing slides at a yard sale for next to nothing. I paid the princely sum of five dollars for two pairs of them. New these slides are easily a hundred dollars a pair. They're really nice.

Will cheap big box store drawer slides work? I don't know, I never tried them. From what I've seen the cheap slides are pretty loosey goosey. So this is problem number one. Sourcing quality slides for a reasonable price. Mine came out of some kind of equipment. There's a funny lip on them that must have went over sheet metal drawers.

The slides in the picture are not my slides, I never took a picture of them. So I just grabbed a picture off the net. I kind of like the dollar bill in the picture. I think it has deeper meaning. Anyhow, cheap slides might work. I'm sure they will to some extent. No drawer slides are great linear guides for a CNC machine. But used right they're not bad.

In the next step I will discuss how I used mine right.

Step 3: You Have to Be Realistic

When you're building a budget CNC machine there are certain constraints that need to be recognized. Some compromises that need to be made. The bottom line is in the end you want a machine that works. I'm going to tell you this right now, forget about a moving gantry design. If you don't have decent linear guides a moving gantry is just going to be a failure. Fixed gantry, moving table is THE WAY to fly.

It is far easier to keep a structure rigid if it is stationary, than if it moves. I can't believe I even have to say that, but there it is.

In this step I put in a couple pictures of an earlier CNC build I did, a machine that ended up not working well. It is a dual drive moving gantry skate bearing build. I was sure it was going to work. It didn't. It almost worked. But almost only counts with horseshoes, and hand grenades. CNC machines ain't none of that. So almost don't count for CNC.

If fixed gantry is so great why doesn't everyone do it? Well, there are some downsides to fixed gantry machines. They take up a lot of space for how much work envelope you have. At some upper scale moving a huge table poses a challenge too. The X travel on my machine is only fourteen and a half inches. That is somewhat limiting. But not nearly as limiting as I initially thought.

When a machine is accurate to a thousandth of an inch I've found that intricate little objects can become a major focus. If you look at what many people do with their CNC machines they often work on small jobs. Although some people do like to cut parts out of full sheets. 4x8 CNC machines are not generally in the budget range. You're going to open up your wallet and bleed for one of those. All of the full sheet to the wind types can leave now. This article is not for you.

Step 4: A Note About My Design

It may not be immediately apparent just looking at the pictures how I managed to attach my linear guide drawer slides. So I will discuss that a bit here. On the X axis they are inside the box frame, and the X axis table frame is preloaded between the slides. By that I mean I have the table frame members (the wooden frame under the table) jammed in there fairly tight. That is to take up any slop the drawer slides may have.

Now on the Y axis with my design I did not have the same jam it in there option available to me. Well, I might have been able to, but I opted for the full support strategy. With the full support strategy each drawer slide begins on an opposite side of the Y axis. That way the Y axis has solid support throughout its range of motion. That ended up working pretty good for me too.

Two puzzles vexed me while I was building my machine. They both had to do with how the drawer slides are screwed down. Manufacturers of drawer slides expect you to be able to pull the slides out, to gain access to the screw holes. Yeah well, CNC machines don't do that. They are constrained, and contained. Problem! I ended up solving it differently on the X, and Y axis.

On the X axis I mounted each slide to a piece of angle first. Then I screwed that angle to the inside of my machine frame. The angle hung down from the slide, and I could put holes in it wherever I wanted to. That was right out in the open. It was easy. I also mounted the bits of table frame to the drawer slides before I put the angle/slide assembly into the frame too. On the Y axis I just put a hole into the frame that I could go through to get to the screw holes.

The general theme of all of this is easy, and doable. Or at least as easy as is practically feasible. Because parts of this are hard enough as it is.

Step 5: The Frame

The frame of the machine itself should be at least touched upon. I made my frame out of construction lumber. Not because it is great, but because it is cheap. Cheap, and readily available. I went down to my not so friendly big box store, and just bought it. I think I used three 2x6, and four 2x4? All in ten foot lengths. Then I ran all of that wood through my thickness planer, to square it all up.

Yes, to square it all up. I cannot stress this enough, everything has to be as square as you can possibly make it. I keep going on about how my machine is accurate to a thousandth of an inch. That didn't just magically happen. I made my whole machine accurate to within thousandths of an inch. Take the time to be careful, and make it right. Be extra careful. You're making a CNC machine, not a rustic bench.

I actually used digital calipers and gauge blocks to setup the Y axis cross frame members. I took extra care to make sure they were as close to in plane with the table as I possibly could. I went back and forth numerous times making adjustments. That attention to detail paid off in precision, and performance. If your frame is not parallel your axis will bind. You've got to get it right.

It doesn't have to be pretty, but it does have to be right. At one point making my machine I got so bored of the butt joints I was doing that I decided to do a rabbet joint. That was a mistake. Because it made getting that square much more difficult than it should have been. It didn't really add any strength I don't think either. Butt joints are geometrically the simplest joints to produce accurately. If parts are the right length, and cut square, the joint can be adjusted to work. It is straightforward, dead simple.

On the base you'll notice that I just used bolts. They ain't pretty, but they're strong. That's what I was looking for too. The mantra for the frame is strong, and square. Everything needs to be aligned with the universe. This is the foundation upon which you will build.

Get this wrong, and you'll make yourself endless problems. So take your time, and get it right.

Step 6: Linear Actuators

What's a linear actuator you might ask? It is the mechanical bit that makes things move in a line. In my case it is the lead screws. Here's one place where I recommend you go middle of the road. The cheapest of the cheap isn't quite good enough. Which would be hardware store all thread threaded rod. Don't use that.

I used half by ten acme threaded rod. Which you can't buy at your local hardware store, but it is worth going through the trouble of getting. Sixty degree all thread is designed to bind up, and get tight. That is just what we don't want with our linear actuator! No we do not. We want to turn rotary motion into linear motion with some modicum of efficiency.

Acme screws are about 40% efficient. Plain old hardware store threaded rod is more like 10%. It sucks. Don't use it! Ball screws are 90% efficient. But I told all of the screw ballers to get lost already. One ball screw costs more than my whole machine did. Another viable option may be chain drive? I didn't go that route myself, but I won't discount it here.

Chain drives have some decided advantages over lead screws. You can get higher rapid motion with a lower motor shaft speed. When you get your CNC machine running you'll understand why that is so desirable. But let me say this, for my machine to travel two hundred inches a minute my lead screw has to spin two thousand RPM. Which is kind of fast. I said my machine can go 200 IPM, but I didn't say I run it at that speed all of the time. I don't either. That's ludicrous speed. I don't want to go plaid.

Back to acme lead screws. Acme leads work good, but well, acme is a whacky thread. Taps for acme are rather uncommon too. They're also terribly expensive. So I did not buy one. I made one. I wrote an article about how I did that here


Why did I have to make an acme tap? Because I made my own HDPE plastic lead screw nuts. HDPE is elastic, so it is naturally anti-backlash. It is also self lubricating too. Would you believe me if I told you that HDPE tastes great, and is less filling? That might not be true. I still love HDPE though. I melt my own.

Remember how I said I bought two pair of drawer slides? That left me one axis short of a 3 axis machine. So I made my Z axis out of HDPE that I melted myself. But that's a story for another day.

Step 7: Electronics

Ah electronics. The great love of my life. But I bet a lot of people hate the stuff, and find it a scary monster. Something they don't understand. We fear what we do not know. But fear not, because CNC is by and large, plug and play these days. There's single board solutions available now. Though I would not recommend any of those.

They're high priced, low performance, and severely limited in their versatility. But they are easy to use. Which is likely a large part of their appeal. If you want the ultimate in cheapskate performance you're going to have to go a la carte here though.

The picture in this step is my control box. There's a lot going on in there. We got power coming in on the top left. That goes into the power supply in the top right. It's output is being switched by a relay (I have a remote panel with switches that control the relay - something I decided I wanted after using my machine for a while). There's another step down board below the power supply. That is the distributed power for the logic. Then in the middle on the left is my homemade break out board. You can buy them already made now for like $5. Then in the foreground of the box is a line of motor drives. I've recently upgraded to some TB6600s. They're really nice drives. I think they cost me about eight dollars and change each. Well worth it.

Step 8: Software

I run LinuxCNC I wouldn't use Mach if you paid me to. Because I wouldn't run Windows if you paid me to. There, I said it. CNC needs something called a RTOS (Real Time Operating System). Windows ain't a RTOS. Mach is faking it. LinuxCNC is the real deal. LinuxCNC actually uses a RTOS kernel.

Do You need to be a Linux Guru to use LinuxCNC? No. LinuxCNC is distributed in a live image. That means the OS, and the application come integrated together. You just have to boot the image, and it runs. For it to be any easier I'd have to show up at your door and start your PC for you.

I'm not going to do that. There's plenty more information about LinuxCNC here


Go there. Get it. It's free.

Step 9: Conclusion

I could add more details. There's more to say. But I touched on the main points in this article. I know people are going to disagree with me about this, and that, but you're all wrong. If you want to disagree with what I've presented here go write your own article. You can argue with success, but don't expect me to suffer fools gladly.

The first image in this step is the first job I generated the G code for and ran on my machine. It is a pen plot (I love plotting on my CNC - it is so quiet) using a ball point pen and when you're looking at it realize that I did not know exactly what I was doing when I made that file. So my machine ran over all of those lines three times each. I guess I had some kind of progressive depth cutting setting active in the software I was using? I don't even know now. I still think it is funny though.

Every line you're seeing there is a line drawn on a line, then drawn over again. That should give you some idea what my CNC machine is capable of doing. Repeatable accuracy. It does the same thing with a spindle in it too. Because my machine is very rigid, strong and sturdy.

The second image is me dialing in PCB isolation routing. I didn't get that quite right on the first try. I had the bit in the collet crooked, so it cut wide as the tip of the bit described a circle on the work (I still used that board though). In the top board I straightened the bit out, and did some more test cuts. So the machine is quite capable, if run right. someone else said the wide cut was due to my machine not being rigid, and shaking about. That is obviously not the case. They were wrong.

I didn't even use height sensor software. There's people with commercial machines that cost many times what mine did, that can't isolation route boards. It is what it is. If you make wise choices you can build a CNC for not much that works great. But you have to have realistic objectives, and take care in your work.

Anyhow, this is super long, but it is a complicated topic. I hope someone finds some value in what I've written here. To wrap it all up, if you want to build a cheap CNC machine, then build a cheap CNC machine. Which means don't try to build a lousy version of an expensive CNC machine. Use the basic cheap machine design, like I outlined here. Fixed gantry, moving table. If a machine don't work, then it is junk. This design works. If you want one of them fancy moving gantry machines you need decent linear guides. Which will cost more than this whole machine did. That doesn't mean unsupported round rod either. That stuff don't work.

So many cheap CNC machines on the net deserve to be taken out back, shot, and put out of their misery. Don't make one of those can barely go 12 IPM living abortions. Make a machine within your means. You can dream, but when it comes time to act you need to be realistic then.

Please, tell us more about the motor drivers you're using, thank you!
<p>Right now I am using TB6600 V 1.2 drives from China. I'm pretty happy with them for the price. I paid about $8.50 a piece for them. They slightly outperform my old homemade TB6560 drives that I made. They're actually cheaper too. I'm running all of my axis at 90 inches per minute with them. Some axis will go faster than that, but overall 90 IPM seems like a good speed to limit my whole machine to.</p><p>I just burnt out my X axis HDPE lead nut running it up to 200 IPM. So that's too fast. It was still fun to do though.</p><p>This looks better than what I have, and it is even cheaper</p><p><a href="https://www.aliexpress.com/store/product/3D-Printer-CNC-MKS-TB6600-0-2-5A-Two-Phase-Hybrid-Stepper-Motor-Driver-Controller/1047297_32241755506.html">https://www.aliexpress.com/store/product/3D-Printe...</a></p><p>My drives only go up to 32V. If I was buying drives today I'd get them. Here's exactly what I have now</p><p><a href="https://www.aliexpress.com/item/4-5A-TB6600-stepping-motor-driver-stepping-motor-drive-board-single-axis-controller/32770716269.html?spm=2114.01010208.3.66.MH4MGF&ws_ab_test=searchweb0_0,searchweb201602_2_10065_10068_10000009_10084_10083_10080_10082_10081_10060_10061_10062_10056_10055_10054_10059_10099_10078_10079_427_426_10103_10073_10102_10096_10052_10050_10107_10051_10106,searchweb201603_4,afswitch_5&btsid=ad78a67c-2638-4bcd-ac4c-26ca603117e2">https://www.aliexpress.com/item/4-5A-TB6600-steppi...</a></p><p>Except where I ordered shipping was free. So shop around.</p>
<p>Hi there, a great instructable for ideas.</p><p>One point you never mentiond about whether to use a moving table or moving gantry is a moving table requires twice the room of a moving gantry for the same work area, I went with a moving table for the X axis and a moving gantry for the Y axis as the trouble tends to be in the gantry moving along the X axis creating movment in the whole machine.</p><p>Regards Poppy Ann.</p>
<p>The Y axis stage is not a gantry itself. The Y axis rides along the gantry. So when I say fixed gantry I mean the upright section, consisting of two uprights, and a cross beam, which is the gantry itself. In a X-Y table machine, like a common vertical milling machine the spindle is completely fixed. There is no gantry at all. Those machines have columns.</p>
<p>One of the most informative and invaluable CNC instructables for those of us planning our first build, Thanks</p><p>Are the spindle mounting blocks shown made of Norplex / Micarta material?<br><br>What say you about incorporating Steel into the stationary portions of the design?</p>
<p>Yes the mounting bracket for the router is Micarta. I am in the process of completely redoing my Z axis stage right now though. I got one of those Chinese 500W air cooled spindles because I couldn't stand how loud that router is. It is different on the machine, than just using the tool by hand. My new bracket is made out of aluminum.</p><p>I have a little steel in the frame of my machine. Steel is great if folks have the means of working with it. I'm not sure how wise it is to weld frames together out of steel. Joints need to be carefully designed when welded to warp into alignment. Because all steel warps when it is welded.</p><p>In this article I machined the pivot block to within 0.001 of an inch of square, then I welded it. I should add that I had the piece held in a vise with large C clamps on it too. The clamps I used far outweighed the piece I was welding. When I was done the block was 0.005 out of square.</p><p><a href="https://www.instructables.com/id/Pivoting-Arm-Vise-Mount-Build/">https://www.instructables.com/id/Pivoting-Arm-Vise-Mount-Build/</a></p><p>So there's absolutely no way to stop steel from warping when you weld it. People only think they can weld things up aligned.<br></p>
<p>Good article. Great advice. Thanks!</p>
<p>You're welcome. I hope you make a CNC machine. They're a lot of fun.</p>
<p>I have almost completed one, but I am still dust proofing it and getting the bugs out. (it is dropping steps on the Z axis). the X - Y is 700x800, but loses about 50mm each axis due to limits &amp; mechanical constraints.</p><p>I have included a photo to give you an idea of what it looks like. Don't gag when you see I am using a laptop &amp; running Mach3... . I agree with you that Linux and a non-windows processor is the best, but I have a lot of learning &amp; building to do before I get there.</p>
<p>That was an really great post 10/10 to you hopefully it will get some more people off the couch and having fun, and being amazed at what can be done Many Thanks for putting this together</p>
<p>That is another point that I forgot to add into my article. Telling people that you can make more than one machine in your life. I know I have. So far only one has worked halfway decently though. I'm already thinking about making another machine. Not necessarily a better one than the one I have now either. I am interested in just how little it can take.</p>
<blockquote>&quot;Make a machine within your means. You can dream, but when it comes time to act you need to be realistic then.&quot; GREAT!!! nice and very informative... had started to build a mini laser in my own version using scrap material... :) :) </blockquote>
<p>Wow that's something else you have there. I'd like to know more about it.</p>
<p>Intrigued about the &quot;melt my own HDPE&quot; comment, and looking forward to reading an instructable on that topic too.</p>
<p>Check this excellent site out:</p><p>https://preciousplastic.com/en/</p>
<p>There's not much to it. Well, there's a little to it I suppose. Let me see if I have any pictures. Here's the box that I made to do my melts in </p><p><a href="http://i.imgur.com/RpqLjJq.jpg">http://i.imgur.com/RpqLjJq.jpg</a></p><p>I line that with non-stick parchment paper. Then I load it up with HDPE, and pop it into a toaster oven at 385F. I keep recharging the melt until I fill the box up. Every 15 minutes, or so I add more plastic. Then when it is all filled up I put that diamond plate piece of steel on the plastic and clamp it.</p><p>This year I upgraded the toaster oven that I use. The very best ones are convection ovens. I scored a sweet one at a yard sale for $5. Retail it is like a $170 oven. It really melts plastic nice. But I started out with a very basic oven. Here's my stash of plastic blocks </p><p><a href="http://i.imgur.com/MogRQ2i.jpg">http://i.imgur.com/MogRQ2i.jpg</a></p><p>It is great stock to have around in the shop. It is fun just to make the stuff. Right now I am making a new Z axis for my CNC machine I am going for the classic dovetail stage design.</p><p><a href="http://i.imgur.com/ZojKewY.jpg">http://i.imgur.com/ZojKewY.jpg</a></p><p>In the background you can see little scrap blocks of plastic that I use as sacrificial blocks when I machine stuff. I have an endless supply of it.<br></p><p> </p>
<p>Construction lumber is often not fully cured before sale, and I've seen some of it warp quite a bit, even after only a year of purchase. How confident are you that wood warping won't cause problems down the road? Thanks.</p>
<p>I am not sure how critical it really is. The shapes of my machine tend to hold wood in place. I did have a bit of an issue this summer with the plywood my Z axis is on expanding from humidity and tightening my Z axis up on me somewhat. I am in the process of building a new dovetail stage for it now though. The new design won't rely on wood as a dimensionally stable element.</p><p>I'd have to say overall I'm confident my machine will continue to work as it does now indefinitely. That is due to the robustness of the design. I'm not asking the wood to do anything too difficult really. But if I included some reaction wood in my build then who knows? Some pieces of wood are destined to go crazy.</p>
<p>Please bear with me. What exactly is a gantry? </p><p>Thanks for the write-up, which contains some important details that are not easy to communicate. I think more pictures would help us get more out of your CNC wisdom.</p>
<p>The gantry is the arch over the bed, which supports the router.</p>
<p>Quite right. The arch over the bed is the gantry. I should have probably did a glossary of terms. I wrote this article for people researching CNC that know something about the topic, but haven't been told the whole story. There are a lot of rose colored glasses in the world of CNC.</p>
<p>Thanks for the instructive writing. I'm currently starting to build my own CNC, which brings tons of questions. Amongst others, I was hesitating on the gantry style... you convinced me to go for a fixed one! </p>
<p>I've seen shaky moving gantry machines. They kind of, sort of work. Which is how the ones I built ended up. Mine caused me endless problems that I never resolved too. I finally went ballistic at the end. The fixed gantry machine I made never did any of that to me. It just does what it does with no flightiness. It is rigid, and fast. What it isn't is long travel. So if you can make that sacrifice, two out of three ain't bad either. Because long travel is worthless if the machine is slow, and loose.</p>
<p>I don't know what I like better, the applicable scenarios given from experience, or the offhand slapstick commentary given alongside it. XD</p>
<p>Great Instructable with a lot of good points.<br>Do you think that you could post a note about your Spindle as it doesn't appear to be just a Router without the handle and any tips or ideas about souurces would be great.. Thanks</p>
<p>Hello, i think some people are interested in this: </p><p> ballscrews have fallen in price, 650mm for 35 $</p><p><a href="http://www.ebay.com/itm/322304354460?var=511204673463&ssPageName=STRK:MESINDXX:IT&_trksid=p3984.m1436.l2649" rel="nofollow">http://www.ebay.com/itm/322304354460?var=511204673...</a></p><p>,500mm for 28 $</p><p><a href="http://www.ebay.com/itm/302134233908?ssPageName=STRK:MESINDXX:IT&_trksid=p3984.m1436.l2649" rel="nofollow">http://www.ebay.com/itm/302134233908?ssPageName=ST...</a></p><p>200mm for 22$</p><p><a href="http://www.ebay.com/itm/221891896327?ssPageName=STRK:MESINDXX:IT&_trksid=p3984.m1436.l2649" rel="nofollow">http://www.ebay.com/itm/221891896327?ssPageName=ST...</a></p><p>then 3x housing for 3,5$</p><p>http://www.ebay.com/itm/322322366740?ssPageName=STRK:MESINDXX:IT&amp;_trksid=p3984.m1436.l2649</p><p>so all 3 for ~82$ :D</p>
<p>Great advice! Thanks for sharing!!</p><p>Very few tutorials include key tips for building a CNC.</p><p>I have also had to learn a lot with trial and error. I am currently completing my second machine... made of MDF. It is a great challenge to get a rigid machine using MDF. It already works quite well, but there are still pieces that can be improved. When I am completely satisfied, maybe I write an Instructable :)</p><p>Thanks for all your tips!</p>
<p>Thanks for the instructable. I was about to take the plunge into building a CNC router, but I am back to the drawing board and taking your advice.</p>
<p><em>Wise old sage</em>, a part II would also be considered required reading for the novice builder, you may have just saved the universe with this tutorial- thanks.</p>
<p>Thank, in depth, good.</p>
<p>I skipped some topics I wanted to cover. But the article was already longer than I wanted it to be. I might have to write a part two.</p><p>I wanted for instance to discuss lead screw length sizing, and the effect it has on machine speed, and crash survival. Most machines I've seen on the net have lead screws a lot longer than they need to be. That extra length is convenient as far as building the machine goes, but having it comes at a performance price.</p><p>When you look at my machine notice how the motors are inside of it. They're not hanging off the outside, like is often the case. That is because my leads are no longer than the travel of the axis. Keeping the leads short reduces whip, and inertia. Two factors that inhibit performance.</p>
<p>That is good advice! Thanks.</p>
<p>You're welcome. In researching various designs on the net I always found it difficult to figure out what worked, and what didn't by just looking at things. Lots of stuff looks great, but how much of it actually works great? Then folks can get somewhat reticent about matters. I tried to be more open in this article. By clearly stating what is good, and what sucks.</p>
long inscrutable but worth reading, thanks for the info
<p>Thanks. It took a long time for me to find it all out. An even longer time to accept it too.</p>

About This Instructable




Bio: I was pfred1 but moved, changed my email address, and lost my password. I suppose worse things could happen.
More by pfred2:Cheap CNC Dos and Don'ts Pimping My Arduino Hotgluing Erasers to an Arduino 
Add instructable to: