CDCNC: Making a capable CNC mill from CD/DVD drives

Similar projects worth following
CDCNC: a toy CNC mill that
. cuts substantial materials like acrylic & MDF
. uses CD/DVD drive optical sled frames for all axes
. makes chips
. was made with scrap materials, simple tools & eyeball precision

This project demonstrates the value of ignorance. If I'd known half of what I've learned about why this is impossible, I wouldn't have considered trying.

Thanks Dan Maloney for the very complimentary post!

Wow. Thanks Elliot Williams and Mike Szczy for your very complimentary conversation leading off Hackaday Podcast 082!

...and the top Highlight tap. You guys have been very kind to this project!

Anyone: if you like this, check out my follow-on project that Elliot mentioned.

Leading with Jolly Wrencher because Hackaday.

Jolly Wrencher
Click or see gallery for higher resolution

Video: milling JW in three operations

Three steps to Jolly Wrencher
Click or see gallery for higher resolution

CDCNC wide view

  • X - horizontal (perpendicular to spindle)
  • Y - vertical
  • Z - spindle (horizontal)
CDCNC XY axes profile

Video: 3D interpretation of amazing hackerspace Pumping Station: One's logo.


The guts of discarded CD/DVD drives -- especially those that use a stepper motor and lead screw to drive the optics sled -- provide great building blocks for CNC toys. Many people have shared a little or a lot about their own versions of 2D pen plotters, laser engravers, 3D printers and other clever machines made from CD/DVD drives.

As of writing this, I've found only three efforts to make a three axis mill/router. Of those: two successfully cut light foam and one bravely documented Epic Failure. So at the moment I think the machine described here does something new. If you know of others, please comment!

Coffin Corner

Some high-flying aircraft face a hazard called "coffin corner" where the minimum necessary speed to maintain lift and stay in the air approaches the maximum possible speed to retain wings and stay in the air. When too fast is slightly faster than too slow, flight gets fragile. When too slow is much faster than too fast, none of the things that might happen are stable flight.

U2 stall and mach buffet boundaries
public domain -- via Wikipedia (linked)

Obviously this e-waste lash-up was never going to go fast through hard materials.

While thinking something like this might work even if it could only work slowly, I had maybe heard but didn't really understand there is a limit to how low slow can go in milling.

A milling cutter doesn't work like sandpaper, rubbing away material. Rubbing makes heat and powerful rubbing at one point makes something hot. A spinning ball of melted acrylic may look kinda like it's cutting something, for a while, but it's not and not for long. For a milling cutter to work, the milling machine has to feed the spinning cutter through material rapidly enough that each cutting edge of the spinning tool advances far enough into new material to cut away a distinct chip. In the argot, that's "making chips". So there's the "stall limit" -- can't go too slow.

Trying to step an open-loop stepper motor too fast against too much resistance results in missed steps, and missed steps ruin CNC operations. For stepper driven linear actuators found in CD/DVD drives, the motors are weak and the optics sled engages the lead screw with a sprung follower designed to slip when blocked or back-driven. All aggravated by floppy/springy structure promoting load spikes due to uncontrolled tool engagement. Assuming a build capable of any engagement of tool into material, that chain of weak links becomes the "mach limit" -- can't go too fast.

This project started with too fast nowhere near fast enough to catch too slow and me not understanding the chase. Challenges include getting into "coffin corner" in the first place, and then not breaking out of either limit for the duration of complete CNC operations.

Secret Sauce

This example gets impossible results from inadequate parts because:

  • Heavy parts move horizontally. Only the Y sled and workpiece move vertically. 
  • Shims. Remarkably, IMO, much of slop in CD/DVD optical sled axes can be shimmed out. Note the mostly-round small circles in finished parts. However, Z backlash/hysteresis remains awful so...
  • "Waterline" tool paths. Parallel...
Read more »

  • 3 × Optical disc drive sleds More steps/distance is better. Check lead screw pitch.
  • 1 × Motorless sled If you've burned the motor. Or a healthy sled with same step/distance as another good sled.
  • 1 × Rotary tool Dremel should just work. Random dremeloid may need some help to tame runout.
  • 1 × set of 0.5 mm end mills And/or other sub-mm sizes. In small work area details will be small.
  • 2 × Exhaust clamps 1 3/4 inch & 1 7/8 inch nominal. Fits common dremeloid diameters. Available outside non-SI cloisters?

View all 12 components

  • About milling: there is no slow; only chips or no chips

    Paul McClay11/18/2019 at 07:15 1 comment

    An elementary but not obvious fact of milling: a machine that's weaker cannot just simply go slower. Every time a cutting edge of a spinning mill bit comes around, it has to be far enough advanced into new material to actually cut and carve off a chunk of material. Otherwise it's just rubbing, and maybe ablating some material, but mostly making heat rather than progress. Trying to remove material that way quickly turns into too much hotness for either the cutter or the material. Like, stirring a little puddle of melted acrylic. Or if the spindle motor can't even make enough power to heat stuff, then nothing happens.

    So there is no "slow" in milling. The machine either can push the cutter through the material fast enough to push each edge into new material, or it can't.

    Cognoscenti call this "making chips".

    My ignorance of this was a critical enabling capability for starting this project. Because clearly there's no way a CDROM sled can shove a mill bit through anything harder than floral foam.

  • About scavenging

    Paul McClay11/18/2019 at 06:57 0 comments

    Part of the voluntary difficulty of this project is the game of scavenging. Buying stuff is a kind of defeat. Of course you can buy a whatever for whatever. But justification for liberty in buying parts very quickly converts to warrant for simply buying a CNC mill that will be better for less than the ultimate cost of completing an inferior project paid for in small increments of direct cost + time not actually using the better machine.

    On the other hand, working through building a whatever from temptingly cheap/found parts is a great way to learn what is the value of a more costly well-finished product.

    Making stuff on the cheap is a hobby, not a profitable enterprise. If not fun, then likely not actually economically justifiable. Assuming first world circumstances where everyone specializes in some way to generate income more efficiently than than they can avoid expense by not paying others to do what they do more efficiently.

View all 2 project logs

Enjoy this project?



Paul McClay wrote 08/28/2020 at 22:58 point

@Owen Yes. I've made up an HDD motor spindle that seems capable but have progressed that only as far as a mention under "Future" in the Details. I've been working on #Cheap small CNC mill - "Formula 1551" for now instead lately where I'm leaning more toward repeatable BoM than scavenge.

Please say more about speed and why you would want the spindle to run slower? From a naive perspective, talk of pcb milling seems to more often favor high spindle rpm.

  Are you sure? yes | no

Owen wrote 08/30/2020 at 10:37 point

Apologies for not reading that far, a HDD motor +ESC based spindle is something I want to do on my machine eventually, just a matter of time and priorities.

I was mostly responding to your post about 'getting chip', Most pcb cutting is done with v-cutters, which do indeed need a high rpm, especially when cutting with just the tip (I use 10degree, 0.1mm flat vbits.) But, as you note in your discussion, this means a very high feed rate to get enough material into the cutting arc.

With a 328P based GRBL controller on my machine I just couldn't get a high enough feed rate without entering lost-steps territory. The machine was eroding rather than cutting the copper, leaving lumps and strands everywhere. The resulting PCB's were quite usable, but only after a lot of clean-up and a careful check under a microscope for burrs etc.

The solution was to slow the spindle. HSS cutting speeds for copper are pretty low, 5x lower than for the plastic you are cutting, and a slower spindle at the same feed simply bites deeper into the copper and gets a better cut. Dropping my spindle from 100% to 25%(*) produced much better results with tracks being cut rather than ground out. I did this because it was suggested several places where people complained about poor pcb performance with simple V Bits.

(*) PWM values give a very a non linear speed response under light load, this is probably still 3-4000 rpm. My spindle spec is 7500rpm at 100% but your Dremel clone should be a lot faster than that.

  Are you sure? yes | no

Paul McClay wrote 08/31/2020 at 01:10 point

Oh, there's a _reply_ option...

Thanks for describing your specific experience. I would at least start with Grbl on a 328P, so you may have just saved me from a load of hassle or settling for shabby results. Especially since my one brief try at copper-clad with a v bit  produced some raggedy lines that got a little less raggedy when i slowed the feed way down - starting off in the wrong direction.

  Are you sure? yes | no

Owen wrote 08/28/2020 at 15:44 point

Very neat, with a sharp V cutter I think it should do PCBs quite well if you could slow the spindle.

Have you considered a HDD motor for the spindle? Easy to scavenge, fairly easy to drive, and eminently speed controllable. 

  Are you sure? yes | no

Mike Szczys wrote 08/26/2020 at 15:45 point

It's fast! Was expecting it to cut at half the speed shown in the video. Great work!

  Are you sure? yes | no

Elliot Williams wrote 08/26/2020 at 13:40 point

Great hacks here, and a brilliant writeup of all of the challenges and lessons learned from doing it the junky way.  Don't listen to the folks who are all "but you could just buy ballscrews".  

Re: Jolly Wrencher logo cleaned up: Of course we care!  Post it up!

Bummed to hear about your experience with the open CAM projects.  That's really the next frontier, and I'd expect it to be getting better by leaps and bounds over the next few (two? three?) years.  Here's hoping.  Or heck, I should bite the bullet and buy a cheap mill.  Give me an excuse to do a software roundup...

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates