Ponoko is an awesome laser cutting service set up much like BatchPCB where you can design and build parts and then, if you want, you can sell it on their site. The Snake Stomp game stomp pads were created using Ponoko's laser cutting service and this tutorial will take you through how we designed and built the enclosures.
First, you need to design your parts. We wanted a square pad with rounded corners made of an opaque acrylic which would diffuse LEDs inside and have a RJ45 jack as the input/output connection. Three layers of 5.6mm thick acrylic were just enough to fit the biggest part of our system: the RJ45 jack. So to build this we chose to create the enclosure out of layers of acrylic glued together. There are four parts to each layer of wall which will layer on top of each other like bricks in 0.5” thick pieces. There are three layers with pieces that fit as shown below. The arrangement of the pieces for the top and bottom layer are both represented by the green dashed lines and the middle layer is in solid blue.
Open Ponoko's P2 template in Inkscape to get started. Working in Inkscape is easiest when you are in Outline mode. To do this go to: View>Display Mode> Outline. Now use the “Create Rectangles and Square Tool” (Square Icon) to draw a square. Next use the “Select and Transform Objects” tool (Arrow Icon) and make the size 6”x6” and placement x=0.197” and y=0.197”. Then go back to the Square tool and change Ry to 1.00”. Duplicate this by using Edit>Duplicate or press Ctrl+D. Now set the x,y position of the new shape to (0.197”, 6.197”) . If you are wondering about the 0.197", this is the equivalent of 5mm which is the border requirements for Ponoko.
Finally, we need to cut out a place to mount the Ethernet Jack.. The first time I did this I used the measurement from the data sheet posted with our RJ45 Jack. However, these proved to be too tight so remember to add some wiggle room when you don't have the part right there to measure. Use the “Create circles, ellipses, and arcs” (Circle) tool to draw two circles of 0.133”x0.133” place one at (0.555", 2.216”) and the other at (0.555”, 2.666”). Now draw a rectangle with Rx=Ry=0”, W=0.198”, H=0.351” and x,y=(0.840”, 2.332”). It should look like this:
To create the wall pieces, first copy one of the rounded squares. Place it somewhere out of the way, I chose (-10”,0”) to keep the fractions simple. Now duplicate and place at (-9.5”,0.5”). Select both squares and go to Path>Difference or press Ctrl+-. Now we need to cut off 1/3 of one side and 2/3 of the other. To do this draw two rectangles and place one at y=2” and the other at x=-6” while still covering the edge piece.
Now select the edge piece and the first rectangle, take the difference. Then select the edge piece and the second rectangle, take the difference.
Now we need some pieces to be shorter to accommodate the RJ45 jack. You can see from the layout picture above that a piece in the green dashed layer of parts will need to have width of the jack subtracted from the end of the piece we previously made. The blue layer piece will need to be split into two pieces. The width of the jack was measured to be 0.602” So first copy your piece and place that copy elsewhere on the board. Then position the piece you're going to edit so the flat edge is at x=-10” and draw a rectangle at x=-10” with width=0.602” Now extend the left side with your mouse to be sure the edge of the piece is covered. (Use File>Document Properties or Ctrl+Shift+D to change the ruler to inches and see how the piece is lined up below.) Take the difference of these two pieces.
Now create the corner piece. Move the shortened edge piece away and copy the full edge piece twice from step 2. Arrange as shown and Path>Intersection or Ctrl+*
Now we just need a small rectangle. This rectangle should be 0.5” tall and 1.398” wide. This number comes from this equation: (full piece width)-(corner piece width)- (RJ45 jack width)= 4”-2”-0.602”=1.398”
In order to save material and cutting time I designed the walls to nest inside of each other. Copy and paste to arrange the pieces as shown. (A good way to nest parts is to duplicate and add 0.5” to both the x and y positions)
Now we need to delete the paths that overlap each other. Go to View>Display Mode and change back to normal. Then select all the pieces and click Object>Fill and Stroke or Shift+Ctrl+F. Make sure there is no fill, stroke paint under RGB for R,G,B,A =0,0,255,128 and stroke style is 0.2” in width. It should look as below. The darker parts are the overlapping edges which need to be deleted. (Picture below doesn't show orange template markings as I deleted them because they got in my way)
For the rectangles select a rectangle and click Path>Object to Path or Shift+Ctrl+C. Then click the “Edit paths by node” tool and choose one element to delete lines on. Select the starting point of the line to delete and click the Break Path at selected nodes button. Repeat with end point of the line to delete. Then click on the line to delete and press the delete key. Repeat with the rest of the overlapping lines.
The result should look something like this:
Now select all the pieces again and change the fill and stroke to Ponoko's standards for a cutting line: No fill, Stroke paint: R,G,B,A=0,0,255,255, and Stroke solid and width equal 0.010mm.
There are a few things you will need to know about designing parts with Ponoko's laser cutting. First, the orange outer boundary of the templates is not the edge of the material. It is material reserved to create an outer boundary for keeping your parts together while shipping. Also, the laser burns/melts away about 0.2mm of material (called the kerf).
Checking your design is an important process with Ponoko. First, you need to check that all of your lines are correct colors for cutting or etching or the like. This design only uses cutting but your design may have etching as well. Next check that all your parts are at least 5mm or 0.197” from all the edges of the template. Then, because of the kerf you need to be sure the cutting lines are within 0.2mm of each other at the ends. Sometimes a part will be accidentally shifted and you'll have tiny gaps between the laser cuts. So zoom in real close and make sure the lines touch where they are suppose to.
Lines not touching:
Once you've checked your design you are ready to save your final file as a scalable vector graphics files (.svg). Then save as an encapsulated postscript file for making. Upload to Ponoko and follow their simple instructions to make using 5.6mm thick opal acrylic in the P2 384x384mm. Submit for making and wait for arrival!
When your parts arrive they will look something like this:
They are covered in a protective film for cutting and shipping. Peel this off of all the parts.
See how the RJ45 jack fits right into the base plate? Now we want to arrange the pieces and use some clamps to hold them down while we position and glue them. Use the blue and green diagram from above to arrange the pieces on the top plate. The top plate is the one without the holes cut for the RJ45.
Here are my pieces loosely placed. Once you have them placed like this and loosely clamped you'll want to put the RJ45 jack upside down into the slot to be sure it will fit once the glue dries. Now gently push and prod the pieces until the outside is as lined-up and smooth as you can get it. When you have it as smooth as possible fasten the clamps down hard. Now it's time to glue.
We actually used acrylic weld which is super strong and chemically bonds the acrylic to itself (as compared to only mechanically holding pieces like regular glue). You apply it with a syringe squirting it onto the joints and the acrylic joints suck it up. Apply liberally to all joints but be careful that it doesn't leak under the pads of the clamps because it will react with the acrylic and leave your glossy surface marred.
Whoops I forgot to put the RJ45 jack in before applying the weld-on! Don't forget to do this, forcing the jack even right after applying the glue can be a chore! Now turn the pad right side up to dry. This is in case there is enough weld-on to leak out you want it dripping away from your top surface so it doesn't get marred.
There's the RJ45 inserted properly! Once the pad dries (24+hours) you attach the base plate by drilling and tapping holes to screw the base plate on.
First, for this tutorial I use the P2 template from Ponoko although with some fanangling it's cheaper per pad to put the parts for 4 pads on P3. It's a tight fit but it just barely works. Both designs are available right here for the SVG files for the single pad or the set of four.
Also, when you make your own design always check how the model fits once you are done designing. In my design this could be done by stacking the pieces in Inkscape but your design may be more complicated and take a more creative approach.
In laser cutting the price is mostly based on time. The thicker a cut the more $$, etching is also very expensive. So, a few tips are to merge cuts together, go light on the etching and use material that is as thin as possible. Our pads were about $30 each for making 4 but using the P2 pad will make the cost more around $45
The electrical schematic for the pads is available in PDF or Eagle schematic format for the Stomp Pads as well as a schematic for wiring the pads to an Arduino Pro Mini in PDF or Eagle formats. Processing and Arduino code are also available for your reference.
Have a suggestion for how we can improve this tutorial? Steps missed? Instructions unclear? Please let us know. You can leave a comment below or email us spark@sparkfun.com. Also let us know if this is the most awesome tutorial you've ever encountered and we'll stop trying to improve it.
The link only seems to have the processing code for the computer, not the arduino. Is the arduino code posted anywhere?
Great idea!!!
one question... what detect when we put feet on the box?
is MMA7361?
is possible see box interior?
best regards
I guess I'm missing something here. How does this assembly know when someone steps on it? I don't see a switch anywhere for this function.
Note that near the top center of the schematic, there's a connector for "TRIAX_ACCEL_BREAKOUT_MMA7361".
That's this:
http://www.sparkfun.com/commerce/product_info.php?products_id=9652
It's an accelerometer that can detect things like being stomped on.
I haven't dug through the code to see exactly how the accelerometers are read, but I'd guess that they're used in a "click detect" kind of fashion where any sharp pulse (maybe only along the Z axis?) is detected and triggers what amounts to a keypress handler to control the snake movement.
Ok, I didn't realize the accelerometer could be that sensitive.
ARMinator: How much does it cost to get one of these pads using ponoko?
Argh, just find out by reading the post in full!
Also, if you start a Ponoko account (you only need a credit card for actually buying) you can upload your files and select the material and they will automatically quote you. This is not including shipping which I think you can continue with the order until it quotes you that too before buying. It was ~$11 for the P3 sheet for shipping to Boulder but that of course could change for you.
How much does it cost to get one of these pads using ponoko?
Awesome! Thanks so much for posting this. I really like the idea of stacking pieces for the "walls." Seems like such a nice way to make a custom box.
Apostrophes are never used to pluralize.
Whoopsies, Thanks for pointing that out!
Great tutorial, thanks! I am trying to get my first design ready to submit to Ponoko, and as I'm also using Inkscape some of the tips here (like the one to remove overlapping paths) will surely be very useful. Thanks again!
Wow...there's plenty to digest here. Thanks!
ObNitPick: Minor typo? In "What do I need?" section, should first bullet be "inkspace" or "inkscape"?
My bad, I've always been bad at grammar. Thanks for catching that!
Er revisions as misspellings aren't necessarily grammatically wrong...