Google+ Followers

Tuesday, November 19, 2013

Shapeoko CNC router Electronics Upgrade - Part 1: New Enclosure

Right now, my Shapeoko variant router works fine.  There are only a couple of issues that need to be resolved.  The main issue is that I need to use a laptop (that I would rather use elsewhere) to act as a g-code sender.  My thought is that the perfect scenario would be to replace that laptop with a Raspberry Pi running a g-code sender and a XRDP allowing me to remote into it over Wifi from any PC or tablet in the house.  If that scenario could work, I would be able to create an enclosure housing the Arduino Uno/grbl shield together with the Raspberry Pi.  I could then also include a cooling fan and a sorely-needed emergency-stop switch (until now, I have been using the power strip switch as a poor man's e-stop).

The Enclosure

I decided to mill my rectangular enclosure out of 1/4" plywood.  I want all parts to have finger joints and T-slots so that I can use screws and nuts to lock the enclosure together.  After a bit of research on how to do this I found a great, free T-slot Boxmaker extension to the also-great and free Inkscape design software that allows you to specify the box's parameters before it creates the box design for you.  These were my parameters for the enclosure:

The result was this:

I then saved it as a DXF file and opened it in my preferred CNC software:  CamBam.  The following steps were to rotate the parts (on my CNC router, my Y is longer than my X axis), delete unnecessary screw holes and T-slots, add holes for the fan and E-stop switch and wire and ventilation slots to the end pieces.  The final design for the enclosure looked like this:

So with chest full of air and heart full of pride, I start my cut...  Only to fail.  For some reason, my computer and grbl controller disconnect well into the cut.  I needed to re-zero the tool, which of course means finding that zero.  When it failed, it had already cut the following in red:

So I reset the system to 0, 0 and manually moved the bit to this point that Cambam said was at 100mm x 83mm:

I then instructed X to go to -100 and Y to go to - 83 and, voila:  the old zero was found.  I now once again reset the controller so that the new 0, 0 was recognized, disabled the previously-completed T-slot cuts, regenerated the gcode and got it to continue where it left off. 

Now, I will try to avoid boring you with the intervening failure that took so much of my time.  Sufficed to say that my machine was failing when trying to drill small holes.  It turned out that it was choking on the fact that these holes were made from thousands of useless lines of code.  Once I simplified those holes by replacing them with circles and regenerated gcode, all worked well.  

Once everything was set, I finally had my machine cut the enclosure parts from 1/4" Birch plywood.
This was the result:

I noticed one problem:  The E-stop switch will not fit a 1/4" thick surface, so I will need to consider a fix to this.  Otherwise, I am pleased with my first computer-generated finger-joint box.
On my next post, I intend to detail how to configure a Raspberry Pi to be a remote-controller for an Arduino/grbl-based CNC router such as Shapeoko.


  1. Voila! And you did it! Excellent work. It isn't easy though even with the computer to set all the measurements. Trial and error is the way to do it. :)

  2. Check Our Website For Play Online Casino Thanks For Sharing...!!!
    baccarat online
    royal gclub

  3. There some very impressive points in your blog. I must appreciate your excellent work. I find the blog post very interesting and moreover very informative. I am thinking to write a piece on related topic.
    glass cnc machining

  4. It was great to see someone write on this topic. Thanks for sharing your thoughts

    aluminum nitride

  5. Your blog is very useful for me,Thanks for your sharing.