DVD-CNC is still very much a project in progress. The purpose of this and the future posts in this series is to present project build notes which will, hopefully, help someone building a similar DIY laser cutting device. The project is not complete but some of the biggest issues have already become apparent. So, if you are interested in building your own DVD-CNC device, read these notes at least to avoid making the same mistakes. Besides, despite the project as a whole is still in progress, some parts of it, such as the TTL-controlled laser diode driver for example, are already at a workable stage and can be used in your own projects.

This project came about as a result of my propensity to never throw away parts that were designed to or can be adapted to move electrons. I am also very interested in mechatronics and motor control in general and so it was all but certain that over time I would have accumulated enough of various discarded data storage devices because they are so cleverly combining parts of both mechanics and electronics. We live in world filled with discarded devices that only a few years ago were the stuff of science fiction. I always feel bad about the discarded yesterday’s technology and it gives me an extra kick to have it re-purposed for today’s needs.

I first started to think about a project like this more than 10 years ago and at the time I thought it would be based on parts of discarded 5.25″ floppy drives which were being eliminated from PCs. It was supposed to be a miniature CNC drill press as opposed to a laser cutter, but the principals of operation are the same. I took one apart, found the parts that would be needed but a few things have combined to push the project 10 years into the future, not the least of which was the fact that I realised that 5.25″ floppies have disappeared so fast that I could no longer easily find one. Finding, installing and operating CNC software 10 years ago was also not a walk in a park, and more pressing life issues got in a way, too.

Fast forward to 2011. I was perusing Instructables.com one day and came across a project description called Pocket Laser Engraver by Groover. it made me realise that in the years I was delaying my floppy-based project, DVD drives, even the writing variety, have become so common that they can be very easily found everywhere and, unlike the floppy, they have the laser diode needed for the cutting tool. As a result of my switching the gears towards a DVD-based CNC setup, I made a few tiny CNC models that could be cut on a DVD-based cutter.

The experience with the aeroplane models illustrated just how small of a working surface DVD linear slide allows (and a 5.25″ floppy would have the same limitations). 1.5″x1.5″ (38mmx38mm) is a very small area and, to fit in it, you have to drop small details – the scale I used was 1:212 which makes the planes only just barely recognisable. Given my particular interest in airspace models, I could sure use at least one longer axis to cut long parts of wings and the fuselage. On the other hand, the broken/discarded DVD drives are so cheap that adding one to the project does not really increase the cost all that much. If you are sourcing yours from eBay, they are usually sold in packs of 3 or more, to save on shipping. Buying them individually, even when offered, would make no sense to you due to prohibitive shipping costs anyway.

This is how the idea of two DVD drive linear slides working in tandem providing twice the length of the X axis came about. The video above shows the two DVD linear slides bolted together through the laser diode sleds. The control circuitry is designed to send each of the STEP signals coming out of the CNC control software to the alternating stepper drivers, causing only one stepper to move in each step but allowing the top platform (which the Y axis, not pictured, rides on) to travel twice the distance – a whopping 3.0″!

3″ x 1.5″ cutting area that this setup allows is still obviously very small. However, it represents a 100% increase in the X axis length and so the added complexity of the control circuit looked justifiable to me. The next posts in this series will present the control circuit, other design considerations and the results of the test cuts made on this DVD CNC laser cutter.

32 Responses to “DVD-CNC. Laser cutter DIY Project. Concept.”

Thanks for stopping by, Ddddd!
I have actually looked at Grbl (https://github.com/grbl/grbl) but at the time I had no extra Atmega328 (or 168) chip to load it on. I did not want to load it onto one of the Arduino boards I had. If I understand it correctly, it would overwrite the Arduino bootloader which I need because I keep switching the Arduino boards between projects and all my code is in Arduino IDE.
I’ve tried another Arduino-based approach – a slightly modified version of the RepRap Teacup firmware – but eventually settled on a non-Arduino solution, at least for now. One of the intended features of this project was to be a cheap CNC learning platform, and running EMC2 on a PC has the benefit of real time display output and support for all standard G-Codes, including arcs and tool diameter compensation.

You’ve touched upon an important issue which I wanted to dedicate a separate blog post to. There are pros and cons to every approach and I simply need more space to lay it all out. Watch for a future post specifically about the CNC software for this project.

Thank you for the confirmation on Grbl and the Arduino bootloader! I did not pick up on that detail. I guess, it now adds another software choice to the project. Do you know if Replicat.org software has been used to feed GCode to Grbl? So far all software I’ve seen mentioned as a GCode sender for Grbl was Windows-based and I am running a Linux shop here, so would have to adapt Replicat.org or some other Linux-based tool.

I would have to say that there was another reason I stayed away from Arduino-based solution. It has to do with accuracy of positioning and it is very specific to the two-motor tandem scheme I wanted to use (increase of the X axis length was very important to me). It’s yet another theme that’s just too long for a comment (and I have pictures I need to show to illustrate) and I’ll have to make an entire post about just accuracy.

I’ve seen the reciprocating laser cutter on Thingverse before but did not quite understand the reason for the reciprocating motion of the laser. My guess is that the initial idea was to deal with the laser beam’s kerf (if I understood it correctly anyhow) but it would be a nightmare of G-Code programming to make it properly timed to the horizontal motion. One thing I do know from using a laser diode cutter on a router with Z axis, however, is that the ability to move it vertically greatly simplifies the process of focusing the beam. So, maybe not so much the reciprocating but I’m all for adding another axis at least for focusing.

Sorry to hear about your laser diode. Yes, these things are rather delicate. I’m always using the diode at just below its spec’ed power which, unfortunately, precludes me from cutting foam that’s too thick or “too red” – e.g. can’t do purple. I’m running 200mW diodes at ~160mW and I’m proud to say that after tens of hours of use in constant power mode (which they are not designed for, anyhow), I’ve only lost one and even that is probably due to the driver’s problems. I did, however, lose close to a dozen while playing with the TTL-controlled laser diode driver, so I do absolutely feel your pain

Hi,
Grbl includes a script for streaming Gcode over Linux. I do not know whether ReplicatorG works with grbl but it should not be too difficult to add support. Grbl just receives Gcode over Uart and sends an “ok” when a Gcode has been stored in the queue.
Unfortunately my little DVD-CNC only has 2 axes at the moment(I still have one spare DVD drive;)). However I do not think that it will be a problem adjusting the Gcode for a reciprocating laser. One could just run the program many times and adjust the Z-Axis value before each run(That way you cut every run just a few tenth of a mm).
I am not experienced with reciprocating lasers and lasers at all. My device is only a plotter at the moment. Can you recommend a source for laser diodes except from DVD-drives?
I am looking forward to hear how your DVD-CNC will develop.

Thanks, I’ll take a closer look at what comes with Grbl, sounds like it already has all needed parts for Linux, too. I did like the Replicat.org interface and it is based on the very same principal – send a command over serial interface, wait for an “OK” back – so I’ll try to use it, if not – Grbl’s own should do.

I’d be honest, broken DVD-RW drives purchased in bulk on eBay are still the most economical source of laser diodes for me. At least until you start playing with IR or blue ones. Since you need both the stepper motors and the diodes, getting them in one package seems like the best way to do it. Besides, there are more useful parts in a DVD drive than just these two. I ended up de-soldering and reusing micro-switches, for example. The bay opening DC motor seems like a good candidate to be re-purposed as a fan and the spindle motor I used in the stroboscope project but I’ve seen people go as far as fly small RC planes on them (magnet and winding upgrade required).

Just be careful because not all drives have diodes suitable for DIY projects. Some use diodes in weird 12-pin packages and I have seen ones on just bare silicon glued straight into the sled (Apple does that, so steer clear of Apple for DIY purposes). I’ve found Phillips DVD8631 to be a great source of parts and I presume that similar desktop DVD-RW drives contemporary to that Phillips (2004-2005) would work best. Laptop drives may work but it’s hard to find one with a laser diode in a normal 5.6mm round can package.

I’m not sure where in the world you’re located but barring purchasing broken DVD-RW drives, eBay is still the best source of laser diodes as a separate product. There are a dozen or so sellers that would ship anywhere in the world and I’ve seen prices of 200mW red diodes drop to a manageable $10 level.

I guess my main reason is that CD, DVD and Bluray drives are vastly more common and can be had for less than a dollar (except for Bluray as yet) in “broken, for parts” condition – which is what I need because if they weren’t broken by the time I got to them, they certainly are now
Pretty much every computer these days has one of those and I had a few drives I didn’t know what to do with even before I got interested in this project. Also importantly, DVD-RW drives have the laser diode I need for the cutter. That pretty much seals it for me.

This project seems similar to what I would like to do, I would be very interested in reading the updates.

Are you re-using parts of the DVD mechanism and circuitry ?
I have some questions if you can answer :
-what is the mechanical motion precision (should be below or comparable to the track pitch and/or spot size right ?) ?
-How do you control this motion (what kind of signals are there)?
-what is the optical output power coming from the laser diode ?
-About the circuits, can we control the one used to control the magnetic coil system used to adjust the height ?
-And about the focusing circuit (set of photodetectors used to detect beam distorsion), can we control this circuit too ?

Do you have reference material to explain which cables and control signals are to be applied to command the DVD circuitry ? I could not find a clear description of the signals and interfaces, and I’m expecting to have to reverse engineer that :/
Somehow by tapping a digital analyzer to a working drive or something …

I’m trying to have a maximum of theoretical information before I open a DVD drive and begin to power the thing.

Well, the motion precision is what’s holding the project back at the moment. I have discovered that both desktop and laptop variety DVD drive stepper motors do not respond well (or at all) to microsteps and they are wound/magnetised to have only 20 steps per revolution (desktop) or 16 SPR (laptop). The pitch of the screws is pretty large – 3mm in desktop drives and 2mm in laptop ones. So, the best accuracy you can achieve with full-step stepping sequence is 3/20 or 0.15mm for the desktop mechanism and 2/16 or 0.125mm It’s not very precise, especially when it comes to cutting very small parts, which is what you would tend to be doing all the time giving the small size of the cutter.

I am trying to find a way to increase the accuracy by employing half-step sequence which can potentially double the accuracy which will make it just barely useful.

Please note that all the electronic internals of the drive except for the laser diode get discarded. The stepper motors are controlled directly, without the use of the drive’s original control circuitry. It would be very difficult to reverse-engineer the drive to the point where it would be controlled as just a linear stage using a CNC software. So, different stepper motor drivers are used.

Right now I’m using EasyDriver boards based on Allegro stepper controller chips but I am planning to switch to a purpose-built controller instead because I need an extra feature of synchronising two controllers. The particular design calls for two mechanisms back-to-back to double the travel of one axis, and I need to be sure which stepper went how many steps. If you didn’t want the double travel to make it a 1.5″x3″ cutter and went with single 1.5″x1.5″ instead, you would be best to use EasyDriver or a similar off-the-shelf stepper driver.

You can get some useful cutting done on craft foam with 150mW-200mW laser. Pretty much all the miniature laser cut models you see on this site are cut using a 160mW red laser diode.

The magnetic (voice) coil gets discarded with the rest of the electronics – it is carrying a very short focus lens, not usable for cutting. The coil is too weak to move the entire laser diode housing with proper lens etc. In other words, you’re left with using only the stepper motors for positioning, where is an actual DVD drive the stepper does the rough positioning and the voice coil does the fine positioning (and focusing).

The photodiode and its control circuitry as well as its optics get discarded, too. We do not need a very precise control of the laser diode power for cutting. Basically, the idea is to get as much power from it as you can without burning it out too quickly.

I will post more updates when I get past the custom dual-stepper controller stage; it hasn’t proved very useful with off-the shelf controllers.

You don’t actually have to have an Arduino (i.e. a board with a USB interface, 16MHz oscillator and the rest of the bells and whistles). I ended up with a breadboard-built controller based on a stand-alone ATmega328P chip (same chip as in the Arduino board) but a smaller microcontroller would work, too – just need to have 16+ I/O lines. I’ll try to post the schematics of the controller in a separate blog post here soon.

Maks, I would love to see the material you’re planning on cutting. What is it, a styrene foam of sorts? 200mW red laser cuts black (color is very important) 3mm styrene sheet like butter – I imagine you would have absolutely no issues with cutting your 0.25mm material, unless it’s much more dense than polystyrene foam, with a $5-$10 200mW red laser diode. Just need proper focusing and it should have all the burning power you may need.

Please note however, that this particular cutter, although also originally intended to cut small wings (like these http://elabz.com/resources/cnc-files/ ) could never achieve the positional accuracy needed for such small parts. I’ve yet to put this down in writing with more details (perhaps in another blog post later) but I’ve spent considerable time about a year ago trying to squeeze every last bit of accuracy from these DVD drives that use stepper motors with only 20 steps per revolution coupled to screws with a whopping 3mm pitch. This is just not a good combination when you need accuracy. I could get perhaps 0.2mm tops. It may sound accurate enough but if the entire surface you can work with is only 3″ x 1.5″, it severely limits what you can do.

The models on that page I gave you link for were all cut from a 3mm craft foam on a better, commercially available CNC router, seen of these videos: http://elabz.com/laser-cutting-diy/ .

I have several ideas for improving accuracy by re-building the DVD-CNC laser cutter and using parts of laptop drives instead of desktop. It has a theoretical accuracy limit of 0.125mm Also not great but almost twice a good as the existing one. Anything more accurate than that should be based on a difference set of hardware.

Still, I thought it’s fun to build something that works (inaccuracy noted) and costs less than $30 plus some found parts. That’s how this project came about.

I see about the accuracy, that is a very important thing to take into consideration.
I have access to MacBook DVD drives and I found some really nice stepper motors in them, I will try them out as soon as I get my EasyDrivers and will see how they perform, maybe they will be more accurate then the big chunky ones…

Do you have any recommendation about the Laser Driver? I’ve seen some on Ebay for like 5$ but am afraid to buy one if it won’t work with a DVD drive laser.

Ah, MacBook DVD drives! Don’t get me started no those I have a stack of UJ-845-C (a.k.a. Apple Superdrive 845-CA) and they are not only a PITA to tear down, but also turned out to be completely useless for the DVD-CNC project. Not only the laser diode is on the same can-less glass plate with the photodiode array (which makes it impossible to use it with any commercially available housing/optics, such as AixiZ) but even the motor is very different from anyone else I’ve ever seen, and it’s not even a stepper! It is a micro servo drive of sorts based on a simple DC motor with a Hall-effect sensor and a small set of reduction gears for a weird 1:1.9 ratio. Not only the EasyDriver will not work with it, but they are also LESS accurate than steppers. You gotta give it to Apple though: the servos provide exceptionally smooth wzz-wzz track search action. But the inaccuracies of the mechanical drive are then compensated by a electronics. Works for Apple but not for DIY.

As far as the laser driver, there are quite a few options out there. The first that comes to my mind is of course my own design http://elabz.com/laser-diode-driver-with-ttl-control-pcb-v2-0-is-ready/ . But, in general, you are looking for a driver that’s capable of at least 200mW output, preferably pot-controlled, and very important: TTL-level controlled ON/OFF. On/Off will be needed for tying this to a CNC controller.

I’ll need a some time to peruse your links and check out the planes and the materials used: when I get into a plane/x-copter Web/Youtube browsing mode I can be lost to the world for hours, and I need to set a time for that now. Hope to do it over the weekend, then post if I have any input on cutting those materials with (inexpensive) laser diodes.

I am looking at one of the drives right now, they are not a SuperDrive but rather a Combo drive, the model is CW-8221-C and the motor looks like a stepper motor, although I will have to double check it some time this weekend. Should I just see with multimeter if it has two coils then it’s a stepper?

I like your driver design but the thing is I’d need to buy each part for it, I need a ready solution that I can just plug in =)

Talking about the servos, on the other hand, maybe that would even be a better way eventually, to use continuous rotation servos to position the platforms? I wonder if there is anything that could translate G Code into servo output though…

Good new/bad news about CW-8221-C: its mechanics are most likely OK but it does not have the high power red laser diode you need to actually burn something. It’s CD-writer, not a DVD-writer, and so it has a much less powerful laser diode, and it’s IR, not red too. As far as the motor: all small CD/DVD steppers I’ve ever seen have the same distinctive design, you’d know it without even measuring the coils. Most obvious feature: they have 4 contacts, not 2 as a DC motor would. Also, they are constructed as two separate metal cans (each houses its own coil) and you are almost certain to see the seam that splits the motor’s can exactly in half – DC motors never look like that.

As far as the servo in the Superdrive, I didn’t mean it in the RC sense – there is no circuitry that responds to PWM, you’d have to make your own if you need that. It has other parts of what’s called “a servo” though (in a more general sense) – a DC motor and a rotating magnet with a matching Hall-effect sensor for rotational feedback. In an RC servo that feedback is provided by a pot with a wiper that rotates with the DC motor. I’ve never been inside a digital RC servo, but I would guess that it no longer has a pot and perhaps uses the magnet/Hall sensor for feedback instead, just like Superdrive does.

About your Arduino: it’s cute but if you’re trying to shave tenths of a gram, why are you using ‘duinos in the first place? The board only provides a degree of convenience compared to a straight-up Atmel MCU chip and it sounds like you can’t afford convenience and need super-light design instead. Simply forgo the board and use a small MCU in a SOIC8 chip instead – such as ATtiny (85,45,13 – depending on the features/memory size you need) . Here is how to use a straight-up chip: http://elabz.com/arduino-shrunk-how-to-use-attiny13-with-arduino-ide/ and also here for when you don’t have a specialized programmer: http://elabz.com/forums/atmel-and-arduino/attiny13-with-arduino-isp/

So it is a stepper motor(4 contacts, two shells with a seam) and mechanics is nice in the combo drive, this is what I will be using for the platforms, as for the Laser Diode I have another DVD RW from a computer, It is pretty old 4x DVD writer so I am not expecting lots of power, maybe I should check out some garage sales or Craigslist…

The hobby servos still use pots, it is most reliable solution for now I guess, because sometimes servos are positioned next to each other so I assume hall sensor feedback would interfere.

So I got my adjustable current drivers from Aixiz on ebay and it looks like they work OK.

Now I need a more powerful laser but this idea popped into my head. Why not combine two lasers with a PBS cube (beam combiner)? Let’s say I have two cheap drivers for 50-800mw diodes and I have two DVD burners that house the diodes that I need (300mw). We put the two diodes on the platform with the PBS cube and we should get almost double the power theoretically.

Every DVD burner has a beam splitter/combiner because is uses an IR laser diode to burn CDs and red laser diode to burn DVDs. I imagine a Bluray burner even has two splitters (although I think they might’ve did away with the IR one). So, it’s doable and it it already being done. However, look at the insides of the laser diode carriage in a DVD: it’s all very carefully positioned, aligned and glued in place with optic glue. If you were to do this by hand, I think you might lose more power on misalignment than gain on combining the two diodes. There’s one application of the splitter that I was considering myself though: powerful IR laser diodes are plentiful because they are used to pump up pretty much all other colored diodes, at least high power ones. And a 2W IR laser diode can be had for less than $50. However, working with them is PITA – you would not want to burn your eye out only to make a model airplane I was thinking of combining the IR and much less powerful red just so I can see where exactly the IR beam is pointing at. I even already have a 1W IR laser diode – just need to think through the initial collimation and focusing it on the workpiece – could not yet devise a focusing procedure that would not constitute a risk of losing my eyesight – it would seriously suck!

One other thing: if you already got your hands on a 800mW laser diode, you already have a very powerful (as these diodes go) machine. I looked at your Spitfire model, BTH, it is awesome! The thing is: if you are interested in WWII models, their most often used color schemes are based on green and green absorbs red light very well, almost like black. In other words, unless you start cutting VERY lightly colored materials (and I think white will still not even budge even at 2W), you may already be able to cut all you need with a simple, (relatively) safe and (relatively) cheap 200mW-250mW red laser diode.

Yet another thing: any chance we can take this comment thread into the forums: http://elabz.com/forums/post-your-projects/dvd-cnc-diy-laser-cutting-project/ – that’s the thread I started for the DVD-CNC project, and you are most welcome to start your own thread there if you like. I have quite a few questions for you regarding the specific flying airplane model CNC cutting and the blog comments are getting a bit out of hand and hard to read. Forums provide a much easier medium for a back-n-forth conversation than the blog. Thanks!

I’m in Pennsylvania. Online collaboration may have to do for now Still, I would love to see someone take what I’ve came up with so far and push it a bit further.

By the way, I wanted your input on the best size of a laser cutter specifically designed for those flying models you make. My models are in an odd tiny 1:212 scale but only because of the size limitation of the DVD slide (1.5″ travel). I would like to use some of the same components but forgo the slide. So, I’m looking for the best correlation between the sizes of the finished airplanes, the sizes of the sheets the foam comes in and the sizes of the new design elements of the cutter (which I’ve yet to pick). I’m very interested in your real-life based input, if you can post in the forum. Actually, I think it deserves a new topic in its own right. Thanks!

[...] the potentiometer (R1, space indicated on the board) because the project I’m using it for, the DVD CNC laser cutter, does not really require much current adjustment, which is what R1 is doing. I’m powering all [...]

Hello friend, first I would like to congratulate you on an excellent project.
Well I am Brazilian and I have difficulty understanding English, would aid her.
I’m struggling to understand how to download the files to the arduino, control the motors, which files should I download?
You could pass them to me by email?
Thank you.

[...] So I decided to stack two linear stages with 1.5″ travel each to create a whopping 3″ x 1.5″ working envelope. Something I’ve tried to illustrate in this video: So far so good, right? By the way, I’ve already posted the conceptual stuff about this project in this earlier post. [...]

Hi ,
Does anyone have any ideas or thoughts on how to configure a linuxcnc for a similar setup in this discussion . X Y axis driven by stepper dvd bipolar with L9110s . I am trying to connect from PC to the cnc using parallel port . Any ideas options etc

Sure, that is exactly what I was doing with my own setup. I did play with USB-connected Arduino running replicat.org firmware but in the end most of the time was running it on LinuxCNC connected via parallel port. Check out this thread and this particular message #186 : http://elabz.com/forums/motor-control/stepper-help/msg186/#msg186 – it has the circuit schematics and the Arduino sketch for a simple XY stepper controller to be used with LinuxCNC.

Leave a Reply

Or use the Forums ! If your comment is a question, please consider posting it to a matching section of our Electronics Forums. The forums allow for a more natural conversation flow, especially if multiple replies are required. Additionally, you'll be able to style your writing (bold font, italics etc.) and post images which can help with a good answer.