Defocusing LED Clock

[Dennis] has created a well-documented and very beautiful clock in his latest project. This clock stands out from the other clock projects we have covered with its unique display. The seven segment LED displays mounted on a sled that moves them back and forth behind an array of fiber optic lenses, effectively taking the display out of focus at certain points. Currently, a Dorkboard controls the sled, moving it at random intervals. The case is machined and polished aluminium, the top buttons are ball bearings.

25 thoughts on “Defocusing LED Clock

  1. Thanks kakamyok! If I recall correctly, I used an orbital sander starting at around 300 grit or so. Then I moved on to paper sheets up to 1500 grit. I wet-sanded around the 1200 to 1500 grit range. I finished with Mother’s Billet Metal polish – I didn’t take it too far, though as I didn’t want a mirror finish.

    I finished it off with a clear-coat. This was the most vexing stage. I really wanted to do a clear annodize but for assorted reasons I went with the clear-coat. It’s not flawless but it turned out pretty well.

  2. Quite impressive. A couple questions though. It looks like the components on the circuit board are placed on the wrong side, is there a reason for this? Also, is the defocussing motor really closed loop? I didn’t see any type of feedback. And on a personal note I think I would prefer to see the defocussing happen a bit slower. Overall a great build.

  3. Hi Pete,

    Uhhhh… yeah, components on the wrong side: this was my first proto board and I soon realized that. Made it work, though.

    Interesting comment on the speed – it’s the 2nd time I’ve heard that. I’m not sure I have sufficient drive ratio but I’ll give it a try.

  4. Beautiful work, imaginative design. I love the ball-bearing buttons.

    I’d like to see an out-of-focus transition as the time changes, similar to the way some nixie clocks implement PWM fading between numerals. Perhaps defocusing slightly per second, reminiscent of pulsing bloodflow.

  5. I like the case, it’s pretty fly. Not sure I would want to wake up, half baked and try to read the time off my defocusing clock, I’m blind enough but it’s a n33t project. Nice work.

  6. Very trippy!

    Why did you want interrupts on the pins for the buttons? You should be able to run the buttons directly to pins on the AVR, which you would poll in your main loop and jump to a fucntion if the value has changed. Use the AVR’s pull-up feature on these pins, and have the buttons short to ground when pressed. This would let you omit the discrete logic chips.

    Keep up the good work!

  7. Thanks for the comments everyone. And yeah, you could easily park a truck on it. It is very, very hefty.

    Also, thank you for the animation ideas. I may give those a try…

    Dan, on the button inputs: I was worried about missing the inputs while the code was off turning motors, etc. Thus the S-R latches. Maybe overkill – I dunno.

  8. One more comment on the buttons: I ‘m not sure I’m getting you Dan. The switches are momentary switches so I don’t think that wiring them directly to the AVR would necessarily ‘capture’ them. Basically, if they were pressed while the code wasn’t ‘looking’ I’d miss the input. Or am I missing something?

  9. Re the buttons. A button press takes several milliseconds unless you tap it super quick. A millisecond is half an eternity in MCU time. And if you happen to have so much going on that it might miss a quick click you could always make it so that you hold down the button, the MCU has enough time to notice and goes into a “I only care about settings right now”-mode.

    Oh yeah ditto on the comments about the case, lovely work. Makes me want to finish my CNC even more.

  10. Dennis, what sneakypoo says is right. the chip operates so fast, youve got plenty of time to read anything in meatspace. Try using an extra pin to flash an LED at the start of your loop() function. Measure the frequency of that LED and then you’ll know how short of a time period you would have to tap a button for the avr to miss it!

    Also I was suggesting using the built-in pull-up feature of avr’s I/O pins so that you can just connect the momentary button from the avr to ground. This internally sets a resistor to pull the pin “up” to a high state when the button is not being pressed. If you do it this way, a logical “0” will indicate “button is pressed” and a logical “1” will indicate “button is not pressed”. The benefit is that you only need a SPST momentary button, and no additional components.

    Hope that’s helpful. Your stuff looks great.

    …and ditto on inspiring me to finish up that CNC machine…

  11. Thanks Dan. I think you must be right and that is good-to-know info for any future projects. As it was, I got everything to work fine and gained some learning on the S-R latches, etc.

    Good luck w/ the CNC. I went the easy way and bought my CNC (the Taig is really a “mini” CNC – it’s very small). Even so, there was a tremendous amount of learning required, from machining processes to learning the CNC side of things (it was a rude awakening when I learned that the computer does very little in generating tool paths – you really need to feed it almost every last detail).

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.