I wanted to make an LED clock, but how to get the LEDs into a circle? A LED strip would bend into a circle but the light would be projected in the wrong direction. So we had the idea of using total internal reflection. I had bought some 5mm thick frost acrylic, which originally I imagined would go in front of the LEDs to diffuse the light. But it happened to make a really nice light pipe. The unexpected bonus was that the too-bright LED light was toned down into something that was easy to look at.

Fardin did all the drafting with AutoCAD, which is a good thing because I wouldn't know where to start to get the geometry right.  The circumference of the circle formed would have to be the length of a 12 LED strip, at 60 LEDs/meter that was 20 cm. The LEDs had about 2mm height above the 20 cm strip, so that changed the actual required circumference a little. The light pipes were designed to clip onto the LEDs, and the clip  was not at centre of the outside visible surface. That threw another variable into the calculation. In any case, using various construction lines in AutoCAD, Fardin was able to get it all to fit perfectly, with the holes in the panel in the right position, at the proper angles, and lenses that would work with the panel and 20 cm LED strip.

Another engineering problem with this design was how to make the lenses fit into the holes on the front panel. We went for a friction fit, and through much tweeking and variations to the shape (including curving the sides), got the lenses to friction fit well. Fardin's skill was key to success in this endeavour.

Later I learned that our laser cutter did not have the repeatability to cut the panel and lenses to fit every time. Also, kids often have trouble getting the lenses into the panel.  So I went looking for solutions.

One solution was to create a series of numbered test lenses, each of a slightly different size. We would cut the test lenses on the day of the workshop, decide which lens fit the best, then cut the rest of them to that size. We would also cut a smaller size, as some of the panel holes would still be too small. 

Another solution, when a lens is too tight, is to file the edges. I like this because its another tool for the kids to use, and that is a key point of the workshop ie tangible experience. 

One more solution for too-small lenses is super glue. I fall back on this one quite a lot these days. A small drop on the back of the panel is covered by the lens and not at all visible.   


The electronics design for the colock is trivial. I designed to be cheap and simple to assemble.  

For the buttons, I liked some that I found at an online retailer, but they were too expensive. I ended up using the web to find a factory that would manufacture the same part. The cost was a fraction, about 25 cents per button. Minimum order was 500, so I had to invest a few hundred bucks to get set up to deliver 500 workshops. It took about 6 weeks for my order to get to the top of their queue. I got a call from China, to ask what colour of green would I like? How about 6128? I asked them to make it like the green in the Italian flag. I decided on red, white, and green to acknowledge our friends in Italy who came up with the Arduino. I guess the sales person didn't know a lot about flags of the world, because the colour ended up being something more like frog green. It takes a little imagination to see the flag. Apologies!


There are a few aspects of the firmware that are worth noting.

Since there are 60 seconds and 60 minutes, but only 12 LEDs, usually these values are displayed by 2 LEDs. For instance:

0 LED1=100%,...

Read more »