Introduction: Add Laser Etching Capabilities to a CnC Mill

This Instructable will show you how you can easily add laser etching capabilities to your existing CnC mill. After following this Instructable you will have access to an etching laser as well as a traditional milling spindle. By having both tools incorporated into the same machine your cutting/etching operations will be performed within the same coordinate system. This gives you immense control over the positional accuracy and will (greatly!) improve the results of your finished pieces.

Step 1: Inspiration

Before creating a custom housing to hold both my laser and spindle, I had to constantly switch back and forth between using one or the other. This entailed removing the entire laser or spindle assembly from the z-axis and then installing the other. Each time I did this I was unable to reliably match the centerlines of the spindle and laser after changing between the two. This resulted in lower quality finished parts then I preferred.

Naturally, I turned to 3D printing for a solution!

Step 2: 3D Modelling

I support the open source community, and one of my favorite open source programs is the 3d modeling package OpenSCAD ( . OpenSCAD is great, and I have come to prefer its text based entry method due to its efficiency (via variables) and its level of precision (it can be difficult to adjust things in millimeter increments when you are using a point and click interface).

Step 3: Z-Axis Disassembly

To begin, I removed the original Z-axis plate that the laser/spindle was mounted to. I measured the mounting holes and plate dimensions and then modeled the plate in OpenSCAD. In order to make the plate large enough to accommodate the laser, I increased the overall dimensions of the plate.

The upper two horizontal green lines show where the spindle mount pieces are attached. Since I was going to make a Z-axis mount plate I also added in a lower mount plate for the CnC Spindle (more on why I added this in a bit). This is the bottom green line you see in the 3d model.

Step 4: Initial Modeling

Next I measured out the spindle and its mounting brackets. The spindle mount brackets came with my CnC machine, so I reverse engineered them until I had the dimensions correct. This involved modeling the brackets and then printing my own until my brackets matched the machine brackets. This was critical for the design of the spindle base, so that the spindle center would pass through the 3d printed housing, while still utilizing the original spindle mounting brackets.

Step 5: Spindle Lower Mount Plate

Having used my CnC machine for several years, one thing that always bothered me was that the spindle was mounted using a friction connection. Occasionally the spindle would slip down through the mount brackets, ruining the piece I was working on. I determined that this was most likely due to running the spindle for an extended duration of time, and the heat built up from the spindle caused the mount brackets to soften, allowing the spindle to slip down through them.

Since I was in the process of making a 3d printed housing for my assembly, this seemed like the perfect time to solve this problem, so I incorporated a spindle base plate into the housing design. Having a base plate creates a physical boundary for the spindle, and allows the 3d printed bracket to resist any vertical forces the spindle might be subjected to, rather than having to rely on friction from the mount brackets.

With the lower base plate in position the second and third photos show how the spindle assembly looks inside the housing.

Step 6: Laser Housing

With the basic concept of the spindle assembly determined, I started designing the laser housing. I envisioned the laser being cantilevered out away from the Z-axis and began to work on the design. This consisted of lots measuring and modeling until everything fit into a nice compartment.

I am showing the final printed housing, and the modeled components to avoid any confusion. What you are seeing is a 6th revision of the housing, as I had to keep adjusting it until all pieces fit into a compact package.

Step 7: Laser Housing Components: Laser and Fan

This is the laser that gets mounted inside the housing, it is cooled by a 40mm fan, mounted directly above it. Due to their complexity, I only modeled the portions which were critical, and not the other features. The 3d model of the laser is accessible from JTech Photonics website. I made the 3d model of the fan is very simplistic as there was no need to spend to much time on the model as long as it is functional for what I need it to do.

Step 8: Laser Housing Components: Air Intake and Exhaust

Recalling the past few years, and the amount of dust and shaving produced by my spindle, I knew that creating a habitat to separate the laser from its surroundings would be very important.

After thinking about how to make a good air filtration system, I discovered a low-cost method of isolating the laser from the spindle. I found that using a rifle lens covers in combination with metal fittings resulted in an extremely "dust tight" connection that would keep dust out while the spindle was in operation and allow air to flow in and out of the housing when the laser was in use.

The rifle lens covers have an snap locking feature, allowing them to be opened and closed as needed. The image on the left shows the covers open, and the one on the right shows them snapped closed.

Note: I modeled the snap covers and fitting as a single piece, so the 3d model may appear dimensionally incorrect compared just to the size of the metal fitting. I disregarded the flip cover portion of the cover in the model (again, for simplicity) and the added length from the lens covers is reflected on one side of the model only.

Step 9: Laser Housing Module

This is the final design for the laser housing. It has mount holes for the laser and fan, along with recessed slots for the intake and exhaust fitting lock nuts. The finished product is shown here (without the bottom exhaust port installed).

Step 10: Laser to Spindle Fitup

Next I needed to establish the height of the laser housing relative to the spindle housing. To do so I brought the two models together, and adjusted the Z-Axis elevation of the laser housing until it lined up well with the spindle housing.

The location of the wiring harness access hole was chosen based on the relative alignment of the two, such that the harness did not clash with the spindle mount brackets. This is the single hole you can see in the back side of the laser housing in the third photo, beneath the lower spindle mount bracket and above the spindle base plate.

Step 11: Side Mount Plates and Laser View Port

The final pieces consisted of side mount plates and a piece of laser shielding used as a viewport for the laser.

I created two side plates to tie all the pieces to one another, creating a strong overall structure for the entire assembly. I added the ninety degree bend to the side plates for a bit of flair.

A piece of laser shielding acrylic was used to serve as a view port for the laser.

Step 12: Finished Model

After combining all of the modeled components and checking for fit-up and clashes I printed all the pieces. For reference, I printed a total of five individual pieces:

1.) Z-Axis Mount Plate

2.) Spindle Base Plate

3.) Laser Housing

4.) Left Side Plate

5.) Right Side Plate

Step 13: Final Assembly

I mounted everything except the 3d printed pieces using nut and bolt style hardware. All of the 3d printed pieces were joined together with 1" self tapping screws.

Step 14: Electronics: Wiring and Initial Laser Calibration

This Instructable does not cover the electrical connections necessary for the laser to function. Please refer to the link at the end of this write-up for step by step instructions to getting a J Tech Photonics laser connected to your existing CnC machine. They have a comprehensive tutorial and can help you troubleshoot any problems you may encounter during setup.

Step 15: LinuxCnC: Controlling the Laser

My software of choice for controlling my CnC machine is LinuxCnC ( LinuxCnC is an open source initiative, and has a great community of contributors and users. Plus its free!

I am using a 5-axis CnC control board from Zen Toolworks that is connected to my computer via a 25-pin parallel port cable. Seventeen of the pins are available for use, and eight of them are reserved for other functions. For my setup I have placed my spindle on a separate surge protector from my laser. In this way I can only turn on one or the other, depending on which I will be using at any given time.

I have chosen to connect the laser to pin #2, and my spindle to pin #14. I am using pulse-width modulation (PWM) to control the intensity of the laser on pin #2, while sending full power (spindle ON mode) to the spindle with pin #14. It is ok to control both the laser and the spindle from a single pin if you prefer to, or if all of your pins are in use for other functions, just remember to send enough power to your spindle when it is in use, and to restrict the amount of power going to your laser when it is in use it if will be on for extended periods of time.

Since I have several spare pins available I have chosen to control the spindle and laser from different pins.

This Instructables does not cover how to use LinuxCnC, but I have linked to their site where they have detailed instructions and will help get you started if you would like to use their software.

Step 16: Spindle & Laser Coordinate System Alignment

This step is arguably the most important, and is where you will see the most gains from a combined spindle/laser setup.

LinuxCnC allows you to work with numerous different coordinate systems, and here we will be using two of them: G54 and G55. I have nominated my spindle as "G54" and my laser as "G55". These are the coordinate systems where my spindle and laser will exist from now on.

For alignment of the two coordinate systems, I recommend you use the smallest bit you have available for your spindle; I used a V-Bit and set the depth of cut to 1mm. I then milled out a series of squares and circles, approximately 20mm wide in my spindle coordinate system (G54).

In my G54 coordinate system, the top left corner of my leftmost square has the coordinates of x=100, y=100; I have made a note of these coordinates, as they will be needed for setting our laser offset in LinuxCnC.

Once the milling operation was complete I turned off the spindle and activated the laser.

Note: Always wear eye protection when you have power to the laser!

Since I now want to work with the laser, I enter the G55 coordinate system in LinuxCnC. Currently the coordinate position readouts for the X, Y and Z axes are the same as they were for G54. This is because I have not yet input any offset for the laser. I turn on the laser on a low power setting, such that I can visibly see the beam, but that it is not etching the wood. I then manually position the laser until the beam appears more or less lined up with the milling square. Now I adjust the coordinate position of where the laser currently is by telling the software that my laser is at x=100 and y=100.

Next I will have my machine laser etch just the left most square. I outlined the square using the laser and although I entered an initial laser offset value into LinuxCnC, the square that I etched (first image) did not line up well with the milled square because I just visually aligned the laser in the previous step. This is ok, because I will now measure the alignment.

Once the laser finishes etching the square, position your laser/spindle out of the way so you can gain access to the square you have milled and laser etched. Using a pair of calipers or ruler, measure the X and Y coordinate offsets of the milled and laser etched squares. Mine measured out of alignment at +1mm in the X direction and -4mm in the Y direction (first image).

Next I moved my laser from x=100 y=100 to x=99 (100-1) and y=104 (100+4) to compensate for having been +1 and -4 in X and Y axes. I then engrave the second square (second image). I have overshot the 'correct' position in both the X and Y axes. I can tell this because now I am on the other side of the milled square in both the x and y axes. No worries, I can continue measuring, this time going to decimals of millimeter accuracy.

I measure again and find I am out of alignment at -0.17mm in the X direction and +0.85mm in the Y direction. I return my machine to x=100 y=100 and will again compensate for my new measurements by setting my current position to x=100.17 (100+0.17) y=99.15 (100-0.85).

I repeat this process two more times until the alignment comes out well, with the laser beam falling inside the milled grove all around the square. I then continued the test and etched the inner circle; this lined up well also (third photo). If your coordinate systems needs further adjusting simply follow the above steps a few more times and your spindle and laser coordinate systems will be lined up in no time!

Step 17: 3D Printing the Pieces

All of the pieces I made for this project were created on "The Micro" 3D printer, by M3D. The approximate build envelope is:

Print height: 116mm

Lower Print Area: 109mm x 113mm

Print Area Above 74mm: 91mm x 84mm

Based on this build volume, I designed each piece such that it could be printable on my machine. This required me to break the assembly into pieces small enough to be printed by my Micro. For those with a larger printable volume, you can combine one or more of the pieces thereby requiring you to use less screws and have an overall more uni-body construction for your finished product. Probably the most efficient design would be to print this as two separate pieces and then connect them together with just a few screws.

It is important to get the Z-axis mount piece to print as flat as possible. Even if it takes a few different attempts, keep trying until you can get a good flat mount plate. Having a flat mount plate will go a long way towards increasing the quality of your finished products.

Step 18: Pro Tips: Design Considerations

To provide insight into why certain aspects of my build ended up the way they did, in the next few steps I will give a general overview of some things to keep in mind if you want to convert your own CnC to a combined spindle/laser assembly.

Step 19: Pro Tip #1: the Right Tool for the Right Job

Zen's CnC machine is designed to be a milling machine. It was designed with steel linear rods and lead screws on each axis so that it can drive the spindle into material and be rigid enough so as to not deflect considerably while doing so, resulting in an acceptable finished product. For this reason, it is best to add laser etching capabilities to a milling machine rather than vice versa.

While it is possible to begin with a light-duty laser etching CnC machine and add a milling spindle, you may not be pleased with the results if your machine deflects noticeably while milling.

If you have a 3d printer, adding laser etching capabilities to it is a very straightforward process. Because laser etching does not exert forces on your drive system (except to sustain the weight of the laser) adding a laser to a 3d printer can be done the same as I have shown above, so this and any other CnC machine you may have are candidates for adding a laser.

Step 20: Pro Tip #2: Maximize Coordinate System Overlap

All CnC machines have a 'working area'. This is amount of space in which you can work on a piece of material. In my case I have approximately 330mm in the X-axis and 310mm in the Y-axis. By adding a second tool (in this case, a laser) there are a few things to consider:

A.) The workable area of my spindle does not change, it is still 330mm x 310mm. This is shown in the second photo in purple hatching. (You can see the laser area and the overlapping area in the image as well.)

B.) The workable area of my laser does not change, it will be 330mm x 310mm. This is shown in the third photo in red hatching. (You can see the spindle area and the overlapping area in the image as well.)

C.) I have created an overlapping region in which both the milling spindle and the laser can operate. This area cannot be 330mm x 310mm due to the physical restraint that the laser and spindle cannot both be in the same place. Therefore, the "combined workable area" of the two tools will be less than 330mm x 310mm. This is shown in the first photo in green hatching. ( You can see the spindle area and the laser area in the image as well.)

One of the main reasons for originally doing this build is because I wanted to be able to mill and engrave on the same object (typically wood but this could be anything), therefore it was in my best interest to design the system in such a way as to minimize the straight-line distance between the spindle shaft and the laser lens. You can see from the pictures of my final build, or by viewing my 3d models, that there is very little room between the spindle mount plates and the laser housing wall. I allowed myself just a few millimeters (for printing & installation tolerances) between the spindle mount and the laser housing. This helped to maximize the "workable area" of my spindle and laser combo.

In my case I chose to "lose" more of the overlapping area along the Y-axis. As long as you design the centerlines of the laser and spindle to line up in one of the axes, your workable area along the opposite axis (X or Y) will be nearly the same as its starting value. In my case I "lost" significantly more distance in the Y axis then I did the X axis (I lost about 65mm in the Y-axis compared to 2mm in the X-axis).

Step 21: Pro Tip #3

The laser is much more susceptible to dust and fine particles than is the milling spindle. Therefore I recommend you make some type of habitat for your laser to reside inside. It need not be the same design as I have chosen, but I do not recommend just mounting a laser to your existing Z-axis or spindle mount. The only reason I added the housing around the laser is so that I can control the atmosphere around it. You do not want a dust covered laser because it can block the beam as it exits the lens and/or it can reduce the effectiveness of your laser cooling system. I attached a photo taken after I completed a spindle operation; I would not want my laser to be covered in those plastic shavings!

Step 22: Materials List

Here is a listing of all items and software I used for this project:

1.) Zen Toolworks, 12x12 CnC Machine

Their kit comes with all parts needed to get a 3-axis CnC vertical milling machine.

2A.) Zen CnC Laser Attachment

I purchased this kit, but have since converted my setup to as described in this instructable.

2B.) 2.8 Watt Laser Kit

If you prefer to go with a custom build you can order the laser unit directly from JTech Photonics. The unit comes will all items required to connect your new laser to the Zen Toolworks (or similar) CnC machine

3.) Acrylic Laser Shielding

4.) Laser Safety Glasses

5.) Cooling Fan for Laser

6.) Cooling Fan Port (2x)

7.) Cooling Fan Port Flip Cover (2x)

Pick Size 01 (1", 25.4mm) from the list of available sizes if you go with the cooling fan ports from item #6, this provides a tight seal around the fitting.

8.) Self Tapping Raised Head Screws (50x), 1" Long

9.) Assorted Raised Head Machine Screw and Nut Kit

10.) M3D Micro 3D Printer (For 3D Printing All Custom Parts)

11.) Linux CnC (Open Source CnC Control Software)

12.) LibreCAD (Open Source CAD Software)

13.) OpenSCAD (3D Modeling Software)

14.) Source files of all 3d printed parts are attached for use

Step 23: Final Thoughts

I hope this Instructables has shown the benefits of combining your existing CnC machine with an etching laser. Please message me with any questions and I will help as best I can. Next I plan to make a custom electronics control package for my new Spindle/Laser combination CnC machine, watch for an Instructables covering that build in the coming weeks.

First Time Author Contest 2016

Participated in the
First Time Author Contest 2016

3D Printing Contest 2016

Participated in the
3D Printing Contest 2016