Erich Styger's Moving Pixel LED Clock Pops Its LEDs Out to Really Make the Display Stand Out
This LED matrix is undeniably eye-catching, physically moving each LED as it lights up under microcontroller guidance.
Embedded engineer Erich Styger has teamed up with students to create a pixel clock with a difference: each pixel raises itself from the clock's surface to literally stand out as it displays the time.
"It took longer than expected (1.5 years), with huge help and contributions of three students working on that project: Leoni Etter, Jan Rohrer and Livio Stadelmann," Styger writes of the clock project. "It started with a crazy idea, exploration of different concepts, through solving multiple challenges up to a final working and moving pixel clock."
The idea is simple, though the execution proved less so: the clock takes the form of a matrix of chunky addressable RGB LEDs, which are lit to display the current time. The lit pixels, though, are physically raised above their unlit siblings — and as the display updates, the pixels physically shift to ensure that remains the case.
"The project idea started spotting some mini stepper motors available for sale on the internet," Styger explains. "No data sheet, no specs, except 'mini stepper motor @5V.' It seems that these motors are used for motorized cameras as in the Chinese Vivo V15 [smartphone]. The ones on the market are probably surplus motors not used in production."
These stepper motors, designed to allow the hidden front-facing camera in the Vivo V15 to raise up from and lower down into the body of the phone, were selected to drive what went under the working title "SmArtWall." An initial test build proved the concept, though the motor driver selected was unreliable and the linear modules challenging to stack into a full matrix.
Moving the the STMicroelectronics STSPIN220 stepper motor driver solved that problem, and a redesign meant the modules became stackable five layers high. A tinyK22 board, powered by an NXP K22FN512 microcontroller, drives each module, with sandblasted diffusers in front of each LED for a pleasing visual effect.
"The software runs on the Arm Cortex-M4F [core]," Styger explains, "is written with Eclipse as IDE [Integrated Development Environment] in C/C++ using FreeRTOS. It features an automatic and command line mode, with many ways to drive and change the matrix."
The full project write-up is available on Styger's website, with project source code and design files on GitHub under an unspecified license.
Main article image courtesy of Livio Stadelmann.