Wooden Bits

Laser Cut Binary Clock with Remote Control

Similar projects worth following
I wanted a binary clock for the geek in myself but didn't want it too look geeky! Something I could mount on the wall and provoke question, rather than distaste.

'Wooden Bits' is what I created. It's a 4x4 matrix created from laser-cut plywood sections. To add interest to the shape and prevent it from being a boring square, I used 'kerf bending' (close slots created from the natural bur of the laser) to form organic curves; the LEDs snake through internals, following the plywood form.

Inside is an Arduino with a real-time clock (RTC) to keep time. The clock has a coin cell so it won't lose this time reference without power. The display requires a 5V 1.5A supply to function however - included. In order to set the time, one presses a small button near the power jack. The grid changes red to show setting mode; pressing the button increments the minutes.

I've since added web control via an ESP8266, to set the time, alarm, read the temperature or display anything on the matrix!

I've been meaning to make a binary wall clock for a while and to also try out kerf bending with the laser cutter. What put me off creating kerf bends before I found OpenSCAD, was the manual creation of all the lines in the right places. It's the kind of repetitive, uniform task computers were made to do.

Above was what I wanted to create; a square matrix formed from one length of plywood, with the curves creating some organic interest to an otherwise boring shape. I opened Vim and started away in lines of OpenSCAD.

I ended up creating script that could create a one-piece design but would also split the length into divisions. I did this because the length was too big for the cutter bed. For the initial build, each (of four rows) row is separate and then they are all glued together. If I make another I'll add a dovetail so that each section can be joined, it's more complicated because you have to alternate the teeth/dents on the middle male components.

There was some tweaking involved of the kerf spacing to get it strong yet bendable but overall it was a reltively pain-free construction.

The controller is an Arduino Micro with a DS1307 RTC and the W2812B LED chain connected to pin 6.

After I'd completed it I felt like porting it to the Raspberry Pi and Pimoroni's Unicorn Hat. I was already using the Arduino Makefile so had a header with declarations unlike most Arduino projects. The main changes were the GPIO functions to actually set the matrix. Thankfully a WS2812 Driver exists with the same functions as the NeoPixel library, so the task wasn't all the difficult. Rather than referencing the pixels object, the functions are directly called since it's straight C.

Because the <em>Unicorn Hat</em> is an 8x8 (twice the size of mine), it allowed me to ensure the code scaled to any size matrix and the process created improvements that I carried back to the Arduino code.

I'm pleased with the result. The clock is stable and has so far been running for days without issue. It's a Christmas present for the lab but my parents want one too so I'll make another. The next one will be one piece with <em>dovetail</em> joints between sections amongst other points I'd like to improve on:

* Clock set routine invoked from tactile switch or even better a hand wave across one of the cells (the one with the controller in).

* Alarm routine that can be remotely set via phone app - I'd use a bluetooth module for this.

UPDATE: I've added both!

View project log

Enjoy this project?



ben.phenoptix wrote 08/12/2015 at 21:47 point

Beautiful project John, thanks for sharing! Well deserving of a skull

  Are you sure? yes | no

John Whittington wrote 08/14/2015 at 08:25 point

Thanks for the kind comment Ben!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates