Dedicated LED Animation Framework For ESP32

[Eric Arcana] has been creating animated holiday decorations for several years, which involved a lot of custom code to make things light up the way he wanted, pulling the microcontroller to make changes. Using ESP32s with remote software updates is easier, but [Eric] also wanted to make the code simpler. To achieve this he created Fade, a custom programming language/framework for controlling LED animations from the ESP32.

Fade is written for addressable RGB LEDs like the Neopixel/WS2812. It keeps track of the current color of every LED in the system and allows the user to define what color it should be at a specified time in the future. Time is specified using 10 ms clock cycles. The LEDs will smoothly change from one color to the other in the specified number of clock cycles, without needing to specify what the intermediate colors should be.

Code is written in simple IDE, running on a web server on the ESP32 itself, or on a remote Windows PC. The language is very simple, but still powerful enough to create complex LED animations. A key part of it is the ability to specify multiple concurrent state changes in just a few lines of code. [Eric] also included optioning to take touch button inputs and use them to update the animations. Another nice feature is a simulation window on the desktop IDE. It allows you to create custom LED layouts on PC, and test your code without needing to send it to the ESP32.

Addressable LEDs have made creating large LED installations a lot simpler, like this 6 foot LED ball or a LED Video Wall.

Continue reading “Dedicated LED Animation Framework For ESP32”

Gorgeous Specimen Is The Final Word In Word Clocks

At this point, it’s safe to say that word clocks aren’t quite as exciting as they once were. We’ve seen versions that boil the concept down to what amounts to a parts bin build, which for better or for worse, takes a lot of the magic out of it. You just get an array of LEDs, put some letters in front of it, write some code, and you’re done.

But then [Mark Sidell] sent in his build, and we remembered why we collectively fell in love with these clocks in the first place. It wasn’t the end result that captivated us, although the final clock is indeed gorgeous, but the story of its painstaking design and construction. The documentation created for this project is unquestionably some of the best we’ve seen in a very long time, and whether or not you have any desire to build a word clock of your own, you won’t regret sitting down and reading through it.

If you can somehow come away from reading through that build log and not be impressed, surely the clock’s feature set will put you over the edge. The ability to show time in just five minute increments makes this one of the most practical word clocks we’ve seen, and the quality of life features such as automatic brightness control based on ambient light level, and a smartphone-controlled web interface for configuring the clock are just a few of its standout features.

Incidentally the glow behind the clock, provided by a dedicated array of WS2812 RGB LEDs, isn’t just for ambiance. It indicates the position of the sun in the sky as calculated by the Python astral package, as well as mimicking the colors of the sunrise and sunset. There’s even a compass onboard to make sure the LEDs are properly aligned with their astronautical counterpart.

[Mark] actually made several of these clocks, most of which were given away as gifts. Some of the lucky recipients lived far enough away that the clock had to be shipped, so he designed a custom shipping case to hold everything securely during the trip. It also meant he had to come up with a way of remotely maintaining the code on these clocks without user intervention, so he created a firmware update and telemetry gathering backend with Amazon Web Services that they check into periodically. Honestly, the attention to detail put into every element of this project is just staggering.

If you’re interested in seeing what all the fuss is about with these word clocks, but aren’t quite at [Mark]’s level, don’t worry. As we said earlier, you can build a small version with little more than an LED array and a microcontroller. Just don’t blame us if it ends up turning into an obsession.

Continue reading “Gorgeous Specimen Is The Final Word In Word Clocks”

Portable, Digital Scoreboard Goes Anywhere

It’s that time of year in both hemispheres — time to get outside and play before it gets unbearably hot (or cold). No matter what your game, don’t keep score in your head or with piles of rocks — make yourself a portable, fold-able scoreboard like [LordGuilly] did and be on the bleeding edge of display technology. It’s really more roll-able than fold-able, which is awesome because you get to unfurl it like a boss.

All you need is a place to hang it up and you’re good to go. This thing runs on a beefy 10,000 mAH USB power bank, and [LordGuilly] says that it’s easy to read even on really sunny days. As you may have guessed, those are WS2812 strips and they are set into rectangular PVC bars. The bars are set equidistant from each other in a frame made from modified version of cable tracks — plastic chain links for cable management.

Good looks aside, we especially like that there are two controller options here. If you want to assign a dedicated scorekeeper, there’s a handled version that uses an STM32 blue pill and is wired to the display. But if you’re short on people, use the ESP8266 version and update the score with the accompanying app. Check out the demo after the break so you can see it in action.

We’ve seen a few scoreboards over the years, including this beauty that’s meant for indoor games.

Continue reading “Portable, Digital Scoreboard Goes Anywhere”

Networked Nightlights Glow Together

Nightlights are a great way to calm children who may be afraid of the dark, as well as to avoid stubbing your toe on furniture in the hallway. However, in this day and age of connected everything, they can do so much more. [Andy] came up with a great way to do just that, creating an advanced networked solution to suit his needs.

[Andy’s] nightlight serves not just in the usual fashion, but also as an indicator for his children. Depending on the time of day, the colour changes, indicating whether it’s time for bed, or also, if it’s too early to get out of bed in the morning and start watching cartoons. Each nightlight around the house runs on an ESP8266, which lights up using a set of WS2812B LEDs. The ESP8266 decides on colour values based on commands from a basic webserver running on a Raspberry Pi, updated every minute. This gives [Andy] the flexibility to make changes in one place, that then automatically roll out across the Nightlight Network (TM).

It’s a fun way of teaching the kids not to ruin a good Saturday sleep in, as well as serving as a fun colourful nightlight, too. Of course, luxury smart nightlights are becoming a thing, as this teardown of a Bluetooth unit shows. If you’ve built your own, be sure to drop us a line!

Linear Pong Loses A Dimension But Remains Challenging

When Pong hit the scene in the early 70s, there was something about the simplicity of the 2D monochrome tennis game that made it engaging enough that enthusiastic proto-gamers shorted-out machines by stuffing their coin boxes to overflowing.  But even with the simplicity of Pong’s 2D gameplay, the question becomes: could it by made simpler and still be playable?

Surprisingly, if this one-dimensional Pong game is any indication, it actually seems like it can. Where the original Pong made you line up your paddle with the incoming ball, with the main variable being the angle of the carom from your opponent, [mircemk]’s version, limited to a linear game field, makes the ball’s speed the variable. Players take control of the game with a pair of buttons at the far ends of a 60-LED strip of WS2812s. The ball travels back and forth along the strip, bouncing off a player’s paddle only if they push their button at the exact moment the ball arrives. Each reflection back to the opponent occurs at a random speed, making it hard to get into a rhythm. To add some variety, each player has a “Boost” button to put a little spice on their shot, and score is kept by LEDs in the center of the play field. Video of the game play plus build info is below the break.

With just a Neopixel strip, an Arduino Nano, and a small handful of common parts, it should be easy enough to whip up your own copy of this surprisingly engaging game. But if the 2D-version is still more your speed, maybe you should check out the story of its inventor, [Ted Dabney]. Or, perhaps building a clock that plays Pong with itself to idle the days away is more your speed.

Continue reading “Linear Pong Loses A Dimension But Remains Challenging”

7-Segment Display Is No Small Feat

The 7-segment display certainly is a popular build, and surprisingly people still come up with new takes on this over a hundred-year-old way to represent numbers. This time [jegatheesan.soundarapandian] is making it big by building a giant 7 feet tall 7-segment display.

Apparently, the plan is to build a giant clock so he started off by making the first digit. To keep it cheap and simple the segments are made from corrugated cardboard which was carefully cut, folded, and then glued together. The light-diffusing lid is simply made from white paper. He used the ubiquitous WS2812B strips to light up the segments, but things turned out to be more complicated as he was not able to get enough strips to fill up all the segments. This forced him to cut up the strip into individual pieces and space them out by reconnecting the LEDs with wires. Cutting, stripping, and soldering 186 wires took him almost 10 hours. An Arduino Uno serves as the brains of the device and there is a nice Android app to control it via Bluetooth.

We are excited to see the complete clock once it is finished. In the meantime let us remember other epic displays like that made from 144 individual 7-segment displays or the giant LED video wall using 1200 ping pong balls.

Video after the break.

Continue reading “7-Segment Display Is No Small Feat”

LED Clock Strips Time Down To Pulses Of Light

Nietzsche said (essentially) that time is a flat circle — we are doomed to repeat history whether we remember it or not. This is a stark and sobering thought for sure, but it’s bound to dissipate the longer you look at [andrei.erdei]’s literal realization of time as a flat circle.

A clock that uses nothing but RGB LEDs to give the time sounds confusing and potentially cluttered, but the result here is quite pleasing and serene. We figure it must be the combination of brighter LEDs to represent 12, 3, 6, and 9, and dimmer LEDs for the rest of the numbers, plus the diffusion scheme. The front plate is smoky acrylic topped with two layers of frosted black window foil.

Inside the printed plastic ring are two adhesive RGB LED strips running on an ESP8266 that ultimately connects to an NTP time server. The strips are two halves of an adhesive 60 LED/meter run that have been stuck together back to back so that the lights are staggered for seamless coverage. This sets up the coolest thing about this clock — the second hand, which is represented by a single pink LED zig-zagging back and forth around the ring. Confused? Watch the short demo after the break and you’ll figure it out in no time.

Now that times are strange, you might be more interested in a straightforward approach to finding out what day it is. The wait is over.

Continue reading “LED Clock Strips Time Down To Pulses Of Light”