Introduction: CNC Hammer Joint Box

I am building some skills with my Shapeoko 2 and decided to cut a box that uses joinery and assembles without glue. Using a joinery technique called “Hammer Tenon”, I did some studies to translate it for CNC and did test cuts to make sure I had my file match the tolerance of the machine. Then, I did the layout to make a 4-inch box with lid that I cut out of 1/2 inch baltic birch plywood.

Step 1: Drawing the Hammer Joint

I started with this simple design to set up my shapes to be used for generating my tool paths. They are designed to use a .25 router bit to mill out of .5 inch plywood. These two details are critical to the success of using this pattern exactly as is to cut out joints that will fit together. If you use, .75 inch plywood, the lengths of the joints will not fit together.

Things to note:

  1. For best results using this design, use .5 inch plywood and .25 inch router bit.
  2. Tolerance of your machine will be different than mine. Make test cuts before going all in and expect the box to fit the first time.
  3. I have provided my .EPS files for both images above. You can tweak them for best results.


Step 2: Make Tool Paths

There are a number of ways to generate tool paths.
Use MAKERCAM for a lot of control:

Use EASEL if you are new to CNC and running a Shapeoko:

I used ArtCam Express software that I purchased:
This has been my go-to for much of my cutting success. It was worth my investment.

These will differ from machine to machine, but, I have the best success making average speed passes with shallow depths. It takes along time but my tolerances are much more accurate.

Step Down: .0313 Inches per pass
Feed Rate: 20 Inches per minute
Spindle Speed: Lower end


This was important to me for clean cuts and parts that fit with little sanding.

  1. SMALL POCKETS - I make the small pocket cuts first all the way through the material. .5 inches
  2. HALF POCKETS - These I cut second. Yes, there is a little "cutting air" but the first cut helped with the tolerance accuracy. I set it to cut the depth of .235 inches. This compensates for my z-axis and the bit pulling into the material
  3. PROFILE CUTS - These are last. They have bridges of .25 h x .38 w to hold material in place.


I cut these all at one time. It takes me 4.25 hours. Risking a failure.
I would encourage you to cut each piece out individually. If something goes wrong, you can just start again and not loose hours of milling.


The tool paths will export to G-Code. I use an export of the basic G-Code setting in ArtCam Express.

I send my code to my Shapeoko 2 using the Universal G-Code Sender (UGS). It is free. I'm now experimenting with It is free and really going well now that I have updated my GRBL to 0.9. This is inside baseball to those in the Shapeoko community. If you are running GRBL 0.8, take an afternoon and update your Arduino and G-Shield. GRBL0.9 is pretty awesome.

This is what it looks like when it's cutting. SEE IMAGES

*Notice the order of cutting.


Clean up any frays from cutting with sand paper. Hopefully, you used the right bit with the correct feed/speed for your machine and have little clean up.

*Also, These should fit snug. If they don't fit together and appear too big. You will have to make adjustments and cut another piece. This, friend, is a fact of life when CNC milling in the DIY style.


A rubber mallet is the right tool, but, you can use a hammer as long as you use a block of wood in-between you and your box sides.

OK, notice that there are 6 pieces. 1 Bottom, 2 Male Sides, 2 Female sides and 1 Lid

  1. BOTTOM - Set the bottom on your work bench
  2. MALE SIDES - These are the ones with the pegs on left/right. There is a female part on the bottom. Begin tapping them across from each other to the bottom. You may need to turn it on its side. Use gentle tapping. DO NOT WACK IT. The joints are tough but will not hold up to too big a' beating.
    MAKE SURE THE ARE FACING THE CORRECT WAY. It's just like a puzzle. They'll fit.
  3. FEMALE SIDES - With the 2 sides attached to the bottom, Line up the others so they fit. Begin tapping them to complete the box.
  4. The lid... set it on top!

Thanks for Milling a Revolution with me.

CNC Challenge

Participated in the
CNC Challenge