Robotic Sand Table

ESP32 kinetic sand nightstand

May 7, 2019 2 min read
Post Feature Image

I was inspired by the Sisyphus kinetic art table and I wanted to get one for my room, but the cost 🤯.

I spent about a week researching how the Sisyphus robotic arm system worked, and since I didn't have a laser cutter, I decided to model my own 2-DOF robotic arm in Inventor.

Each segment of the arm is individually controlled by a stepper motor, uses optical endstop switches for homing, and the end effector is a magnet that sits against an acrylic sheet under the table.

The testing and assembly of the robotic arm took over a month of tweaks and my biggest challenge was creating custom sizes of timing belts as they always wanted to snap. I ended up using a tiny amount of superglue and then sewing the ends together.

The stepper motors are driven by TMC2130 stepper drivers (not shown above) as one of the focal points of this design is it had to be as quiet as possible while running, and the TMC drivers have stealthChop mode.

The ESP32 runs custom firmware that uses pattern files off of an SPI-attached SD card and integrates with a custom iPhone app written in Vue.

GitHub - acvigue/sandspa: Vue 3 SPA for Sand TableVue 3 SPA for Sand Table. Contribute to acvigue/sandspa development by creating an account on GitHub.
bookmark icon
GitHub acvigue
bookmark image

I found a cheap wooden coffee table on Amazon that had a glass top & a shelf. I adjusted the height of the shelf until the end effector was directly under the glass top, and I hot glued a circular sheet of acrylic with black velvet on the top of it. This prevents the sand from crunching as the ball rolls along.

Once the table was assembled, I installed a strip of WS2812 lights under the perimeter of the glass to light up the sand patterns.

Don't miss out!Stay in the loop by signing up for my (infrequent) newsletter. No spam, unsubscribe anytime.