I am a Makr, I sit at night in front of the tv with my family with a moleskin, or another one of my project notepads and sketch ideas. Many of my conversations are of the "wouldn't it be cool if _______" variety. Many of my ideas never leave my project pages. This one did. I think it is awesome. It is an enclosed Zen Garden built into an end Table. The movement was inspired from a cnc or a 3d printer. Actually started to use ramps 1.4 (a 3d printer arduino shield) until I thought of a much easier way to build it.

I wanted the end product to represent peacefulness, I wanted to bring some zen to my living-room. I think that I did.

Many of the things I build are not pretty, just the way it is. In the process of building this I never explained what exactly I was building to my wife. Just that it would be furniture that would be good-looking enough to want it in our house. To put this into context you should know that I share everything with my wife. She is my best friend. But on this project I simply promised her that the end result would be something that she would be proud to have in her living room. She knew it was an end table, but that was it. So I worked extra hard to make this end table look really nice, For her.

I have built 3d printers, I have also built some simple furniture (bookshelf, bench, etc), but I have never built anything that combines technology into furniture. So I really thought this would be a fun project.

I had the initial idea for this table about six months ago. The Tables and Desks contest (and all those beautiful black and yellow tools as prizes) inspired me to start this project.

Step 1: Design and Idea

I wanted to build an end table, something that would sit by itself or next to a couch, maybe have a lamp on it. I wanted it to be more "art" than anything, an infusion of technology into wood. I always see the rock gardens with the wooden rake, I always thought they were very peaceful. That is really what i was going for in this build, peaceful tech-infused art.

In order to accomplish this I thought about using a gantry similar to a 3d printer without the z - axis. In this way I could drive a ball bearing using magnets through some sort of medium, probably sand. I also thought about programing it to "print" pictures, or designs by itself.

I think im going to use arduino with 2 stepper motor drivers and some rather simple code. Rather than programming a set space into the code, I simply installed a endstop on the min and max for both axis, so 0,0 triggers motor stop, as well as XXX,XXX max triggers motor stop. This will make programming much easier.

Step 2: Part and Materials Required

Ok So this is a list of the parts that I Used. This does not mean that you have to use the same parts, I just want to give you a general idea of the the parts that I used to make this.

  1. Wood --- I basically went to my wood bin and found some 4x4 that I had salvaged from a treehouse, and some select pine that my wife had bought for window trim (promised her I would buy her more). I scrounged up all the big wood peices I could find and brought them to my shop. I also used 1/4 in birch plywood that I bought from menards several years ago for a different project.
  2. 1/8 MDF I used this in between the top and the base just to give the top something to glue to. In retrospect I probibly could have skipped it and if I were to do it again I would.
  3. 2020 aluminum extrusion ---- I used this in building the frame of the gantry.
  4. 2 Stepper Motors --Amazon $12.99 For the two axis of movement.
  5. Arduino UNO --- Amazon -$9.99-- used for the gantry movement
  6. Arduino UNO Joystick Module -- Amazon -- used to control the movement.
  7. 8mm Linear Motion Smooth Rod x 4 -- Amazon - $11.96
  8. 8mm Linear Shaft Guide Mount x 8 -- Amazon - $2.06
  9. 3d printer parts -- robotdigg.com -- I have built many 3d printers in the past and have a lot of these parts on hand. I ended up using belting, smooth rods, smooth rod bearings, and other misc 3d printer type parts.
  10. Kreg pocket hole jig--- Amazon --$39.99 This is not absolutely needed but makes building any kind of furniture so much easier. In this project I used it on the Top and attaching the top to the base.
  11. 1/4in Plate Glass --- Local Glass and Paint Store -- Note that this is not safety glass and can create dangerously sharp shards if broken, but for this project i wanted strength and thickness.
  12. White LED Strip -$7.99 -- and RF Remote -$6.99 -- Amazon
  13. LM317 Voltage converter - $9.29- Amazon
  14. A4988 Stepper motor Driver x 2 --$9.99 - Amazon
  15. 220mf 16v capacitor x 2
  16. 12 volt 5 amp power supply -$6.43 -- Amazon
  17. 3/4in ball bearing - $7.47 - Amazon
  18. 25lb white play sand - $16.49 - Amazon
  19. 2 Bags of Smooth River Rocks - $7.81 - Amazon
  20. Neodymium Round Base Magnet -- Amazon - $11.99
  21. Prototyping breadboard
  22. Permaboard Solder breadboard
  23. Several plastic conduit 2 hole straps - $5.65 - Amazon or some other way of fastening the gantry to the trap door.

Step 3: Assembling the Gantry

I started with some rough drawings and built the gantry. This is possibly not the most efficient way to build this, this is just the way i didi it keeping in mind that I was trying to use parts leftover from other builds and such. I has some 20/20 aluminum extrusion left over from another build so I used that for the frame for my gantry. I designed and 3d Printed the corner brackets and have included the files for those here.

I also Included the Laser-cut parts for the x and y axis. Study the pictures carefully to see exactly how I assembled the carriage and the separate axises. The way that I have assembled the carriage is maybe not the best way as there are many different ways to build a gantry, but i have used this method with several other builds and it seems to work fine with good reliability.

Step 4: Assemble the Curcuit

The first thing I did was to assemble the circuit on a prototyping breadboard and then when I was sure that everything worked the way I wanted it then I transferred it to the solder board. I have included the fritzing diagram above to help with assembly

Step 5: The Code

The code we made for this is really simple. I put end-stops on both the min and max for both the x and y axis so there is nothing in the code that determines the size of the gantry. Because the size is not set up in the code it does not matter if your design is smaller or bigger than mine. Nothing will have to be adjusted in the code. The code is here in .TXT format and .INO so you can download it.

Step 6: Testing Movement

After Installing the code, I tested it thoroughly. I wanted the diagonal movement to go horizontal and then vertical and then horizontal, similar to an etch a sketch. It seems to work well. So now I am going to solder all the connections to the arduino to make it permanent and see about getting it installed into the table.

Step 7: The Actual Table Part

So I set about trying to decide how I was going to build what I had in my head. What I was thinking was a sort of two level box with the mechanics hidden from view in the bottom part of it. It would be controlled by a joystick hidden under a ledge. Beyond that I really had no idea how i was going to do it.

After searching the wood pile I found a 4x4 that i had salvaged from another project, and I found some select pine that was altogether rather nice. So after promising the boss that I would replace what I was about to take I took the lumber to the shop and started building.

Step 8: Building a Bi-level Box

After measuring and cutting the 1/4in plywood I wanted to try a new way of holding it together while glue sat. I hot-glued cardboard to the corners. This method seemed to work well as it held the box together long enough to get other measures into place to hold it together. After building the division for the top and bottom and assuring that it was level, I fastened a piano hinge so that the bottom of the table that will hold the gantry can drop out to be maintained.

Step 9: Making Table Legs

For the table legs I wanted to reuse a pine 4x4 I pulled out of a playhouse that used to be in my kids toy room. To start I made sure that the 4x4 was free of screws and nails / staples . I measured and cut the 4x4 into 4 25in sections. Then I proceeded to Run the 4 legs through the plainer many times to remove the paint and clean it up.

After a few trips through the plainer I used a straightedge and clamps to make a makeshift jig so I could use a skill saw like a table saw. It worked well and left me with 4 cleaned and smooth L - Shaped legs that worked nicely for my purposes.

Step 10: Installing the Sides

After the legs were attached I set about with the sides. Plenty of careful measuring ensued. You want to be as close as you can so that there are as little gaps as possible. I glued the pieces into place and ran a few screws into them from the bottom side of the bi-level box.

Step 11: Sand Sand and Sand Some More

When building anything of form I recommend gratuitous sanding, starting with a meatier (like 80-120grit) sandpaper and working toward a finer (< 200 grit) sandpaper. The time you spend sanding out any imperfection will be rewarded when the project is completed.

Step 12: Installing LED Lights

Once I knew where the top would sit I fashioned a piece of 1/8in MDF to sit in-between the top and the base. I marked where the piece would sit and then flipped it upside down and fastened the LED light strip to the underside with zip ties and hot glue. From my experience it is foolhardy to wholly rely on hot glue on its own when fastening anything that could create heat on it own (ie, a light strip). I drilled a hole and ran the power wire for the lights to the underside of the bi-level box. I was going to run the lights from the same 12 as the stepper motors, but I was having issues where the lights were making the motors hum, so I gave the lights its own 12 power supply.

Step 13: Installing the Top

I do not have a lot of experience cutting miters, I am not a born carpenter. But after much trial and error I was able to fashion a good looking top. I used the kreg jig mentioned in the parts step to fasten the four sides of the top together and this worked remarkably well.

When you are measuring the pieces for the top, make sure you measure right. It is better to be too big and cut again or sand than to have it too small. After you cut the pieces for the top and make sure that they are going to fit together the way you want them too, router the individual pieces so that the glass will fit in there flush. Make sure of the depth of the router so that it matches your glass. In my case the the glass was 1/4in.

Once the Top was glued and screwed together I screwed it to the base using the kreg jig on the backs of the legs where it would not be noticeable.

I called a local car window repair shop and ordered 1/4in plate glass 1/16th in smaller than the opening. I also asked them to sand the edges so that It will not cut hands. I will not be using acrylic to fasten the glass down, simply because I would like to be able to remove the glass so that I can rearrange the rocks.

Step 14: Condition, Stain, Poly, Sand, and Poly Again

Because pine is such a porous wood I did not want it to look blotchy, so I used a wood pre-stain conditioner to even out the stain. Then I applied the Minnwax natural cherry polystain to it and let it dry. The next day I came back and lightly sanded the table with 320 grit sandpaper and then applied another coat of the polystain. If I had to do this again i would stain and poly it separate, it was a nightmare to get the stain and poly coating to not leave drip marks and such. Also if you want it darker you can not stain it again to get it darker. I ended up sanding it and re-coating it several times until I was happy with the results. I do not think I will be using the poly-stain again.

Step 15: Installing Electronics

I built the trap door in the bottom so that the entire gantry can be mounted to the trap door and can drop down to be worked on and maintained or upgraded. I mounted the gantry to the trap door using plastic conduit 2 hole straps. I installed the straps around the 2020 extrusion. This seems to work well.

I tried several different routes as far as where to mount the arduino and the breadboard. I ended up cutting a hole in the bottom of the trap door about the center, ran all of the cables through that and mounted the electronics under the table.

When I mounted the joystick, I pondered for a long time how I was going to mount it. Honestly I could not think of anything clever, so I just glued it under the lip of the table. I pushed the cable for the joystick as far into the corner as I could and hot glued that as well. It is not the most regal solution, but you cant really see it unless you are crawling next to it, so I am happy with it.

On the underside I Mounted the boards with small screws and tried to tidy everything up as well as possible. I also moved the power plugs to the back side of the rear leg and glued it into place.

Step 16: The Toolhead "magnethead?"

I was not sure how to attach the magnet to the bolt that I wanted to use. I thought the bolt would work good because I could easily adjust the "Z axis". What I ended up doing is cutting a small length (1 - 1 1/2in) of 3/4in dowel and drilling a hole that the bolt would fit into. Then I screwed the magnet into the top of it. now I can adjust it up and down by loosening the nut on the bottom.

Step 17: Making the Rock Garden

Once the electronics were installed I set about creating the rock garden. I was not sure how much sand it would take, so I bought a 25lb box of sand. In hindsight I think I could have gotten away with 5 to 10 pounds. Most of the sand is still in the box. After spreading the sand, I ran the ball around a little. I wanted to check to make sure you could not see the bottom of the box when the ball rolled around. I added sand and kept testing until I found the depth of sand that I was happy with.

Then I added the 2 bags of smooth river rocks around the edges. I tried to spread them evenly. I thought about maybe gluing the river rocks down, but I thought it would be better to be able to rearrange them in the future if I wanted to.

Step 18: Table in Action

Alas, the table, she moves. Once I got the table moving I just stood there and drove the ball around, for way too long, lol. There is something extremely gratifying about watching that metal ball push the sand around. It was a long journey to get to this point and it is so awesome to see this table moving the way I envisioned.

Step 19: All Done

This was a Long Hard Project. It was a lot of fun though. I would not have been able to finish it as fast or as well without the help of my good friends.

Thanks To:

Ernie Garner(Dad and Master Wizard of all Automation)

Layne Garner (My Inspiration, Motivation, Boss, and Wife)

David (Badge) Badgley (Friend and Master Carpenter)

Kristina Badgley (Master of Opinions)

Anthony Badgley (Giant Munchkin)

For all your Help

Wow, that turned out amazing! Thanks for sharing.
<p>This project has made me think of another idea. Could you make two tables connected over wifi so you could send messages and art to loved ones? Just like the prize Instructables is giving away for the valentines contest. Do you think that that would be possible? </p>
<p>yeah it could work, maybe use raspberry pi or particle photon, instead so that it would connect to each other. Make one a &quot;server&quot; and another a &quot;client&quot;. I like it. I might make something for the valentines day contest after all.</p>
Would it be possible to make them both server and clients? So they both can send and receive?
<p>Congratulations on the win in the Tables and Desks contest! This was my favorite entry in the contest; glad you won.</p>
<p>Thank you very much</p>
<p>Awesome work pal!! :) You just got my vote in all three contests ;)</p>
<p>Thank You Sir</p>
<p>love your table, would you sell the mechanism as we could make our own tables?</p><p>Kind Regards</p><p>shop@rarecreations.co.nz</p><p>Andreas</p>
<p>Very, very, very nice!</p><p>Is it also programmable, so you can make circulair patterns?</p>
<p>I love this table totally cool. This would really sell in furniture stores.</p>
<p>Very cool</p><p>good job</p>
Wonderful instructable and an amazing result. I have been looking for a project to kick-start my cnc experience and I think this one might be it. I was thinking of hollowing out an ikea lack table like so many of the infinity mirror table projects. Just a query as to the noise level, I have used steppers in the past and I know they are not overly loud but I have never had them in my living room... Also got my vote in all contests (even though I'm in the tables contest twice myself)
<p>could this be programmed to 'auto draw' designs? such as this table?</p><p>https://www.youtube.com/watch?v=z_EJuV-28G8</p>
<p>First time I've ever seen an end table used for something!</p>
<p>Awesome idea..!</p>
<p>very nice instructable!</p>
<p>Well done on a fine instructable for this most interesting project. I am currently building an autonomous round table version and got the inspiration when I saw the Sisyphus kickstarter project some months ago. Most of the rotating mechanism has been printed on my Kossel Delta printer and is now about a week away from firing up the steppers. I'm interested to know what sand you have used and the size of the ball? I was planning on using a 16mm ball. I'm thinking an even larger ball might roll better over the sand. This is however one detail I have not yet experimented with.</p>
<p>WOW, Beautiful &amp; Inspirational. I want one too, I already have the stepper motors and arduino</p>
<p>fantastic and beautiful.</p>
<p>This is just fantastic. I want one.</p>
<p>You have literally made a sandbox game! Awesome and inspiring instructable. I'm always fascinated by kinetic art pieces like this. I like how it doubles a piece of functional furniture. </p><p>I had a few fun thoughts, some of which have probably already been echoed elsewhere in the comments, but who knows. A joystick with a lazier response could make for a less jumpy control of the ball. Also, running an automated script to draw something has been mentioned already. In light of that, perhaps just an automated &quot;erasing&quot; program which simply &quot;spirals&quot; out or inwards neatly to start over clean would be a nice addition.</p><p>Magnetic filings, ferrofluid, using a magnet that can rotate due to its poles instead of a metal bearing, or a different type of magnetic follower could also be implemented somehow for something totally new. :)</p><p>I loved your instructable and want to begin sketching plans for something similar way down the road for myself someday. Thank you for sharing your hard work!<br></p>
<p>I'm making this!</p><p>May I suggest you look into your stepper code - the lines metal ball makes are jittery, which suggests you aren't driving your steppers right try looking at &quot;microstepping&quot; which makes it much smoother.</p>
<p>Fantastic concept and execution. I really want to make one, and doing so is completely within my capabilities (finding the time on the other hand...). I have only two suggested improvements:</p><p>1) Use a piece of tempered glass for the top. Really, it is a lot safer. Drop the wrong thing on that plate glass top and you have a dangerous mess. They can be ordered to dimension at any glass shop. Just get the measurement right, they can't be cut once tempered.</p><p>2) Add a wifi module and create a little joystick app for your tablet or smart phone, so you can draw from your chair. Or push programmed patterns wirelessly to the arduino from your computer. Or just screw with guests by surreptitiously writing their name in the sand from the other room (paranormal activity!). I've done several arduino wifi projects, and it isn't too difficult. You can get an arduino wifi shield, but I prefer using a $15 mini wifi router with USB and hanging the arduino off that. These days the easiest might be to replace arduino control with a Raspberry Pi (even a cheap model A+ would be fine) and a wifi dongle. Then you can code everything in Python and even pull up a headless GUI on your computer or android device to operate/modify. You'd never have to open the thing up to tweak the programming or add features.</p><p>I'm putting this near the top of my 2017 project list!</p>
<p>There was a Kickstarter recently that was very similar to this, but on a bit larger scale. https://www.kickstarter.com/projects/1199521315/sisyphus-the-kinetic-art-table</p>
<p>How long did this take you to build?</p>
It took like 3 weeks to build, I actually started a couple days after the tables and desks contest posted.
<p>Awesome! Love it. Wish I had one. I also know I could easily sell these at my small shop.</p>
<p>Beautiful and technical. I voted.</p>
<p>Wow! Very cool, like a GIANT Sand based Etch-a-Sketch. </p>
<p>gorgeous steps. Thanks</p>
<p>Wouldn't it be cool if this was also incorporated into a 3D printer that was actually printing something underneath the table?<br>It's Zen, but with a price at the end.</p>
<p>Have you been able to incorporate curved movement or angular movement?</p>
<p>Add a couple of joysticks and let children override the program and steer the ball about. Ecto-sketch table :)</p>
<p>Radd. Yup, with two D's.</p>
<p>Wow! Great job!</p>
Is there a video of this table in use?
I've seen many cool projects on Instructables... but this is the only one I've commented on. Great Job
<p>Verified. It's the first comment of mouellet :P</p>
awesome ideia and great instructable, btw love your intro! keep up!
<p>Are you able to reset the sand? Like turning an Etch a Sketch upside down and shaking it? I wonder if a motor with an off-center load could be attached somewhere to just vibrate it smooth?</p>
<p>I actually thought about that. Like maybe a cell phone vibrate motor in all 4 corners or something. I did not add that function to this one. My kids just draw lines up and down all the way across to &quot;erase&quot; it</p>
<p>Ok, I admit....NOOB here ;). I'm really missing it or just don't see it here, how is the ball driven, by magnet?</p>
<p>You are absolutely right, Thank you. I added another step, step 16. </p><p>Yes it is driven by magnets. really though thank you for the heads up</p>
<p>Thank you sir, without this step it looked like a magic trick ;) </p>
<p>This is a great instructable. very great idea. Is there an option of reprogram the arduino to do a automatic function so that you can push a button and it goes through a variety of codes so you don't need the joystick all the time?</p>
<p>The original idea was to make it so it would do designs, but I honestly did not want it running all of the time. I thought that being able to make a design and let it stay and be able to look at it would be better. I thought that just &quot;draw&quot; and let it sit still was better keeping with the &quot;zen&quot; theme that I was going for.</p>
this is amazing. super amazing. where do you suggest starting to learn from scratch-know nothing about learning how to program arduino or raspberry pi.

About This Instructable




Bio: I am 37, I have a job that allows me to build and make daily. I love my job. I have 6 children, my oldest ... More »
More by MakrToolbox:Zabuza Head Cleaver Sword From Naruto Catcher in the Rye Cardboard Barstool Custom Multicolor Hooded Sweatshirt 
Add instructable to: