Build A DSLR Photo Booth The Easy Way

It’s a well-known fact in capitalist societies that any product or service, if being used in a wedding, instantly triples in cost. Wanting to avoid shelling out big money for a simple photo booth for a friend’s big day, [Lewis] decided to build his own.

Wanting a quality photo output, a Canon DSLR was selected to perform photographic duties. An Arduino Nano is then pressed into service to run the show. It’s hooked up to a MAX7219 LED matrix which feeds instructions to the willing participants, who activate the system with a giant glowing arcade button. When pressed, the Nano waits ten seconds and triggers the camera shutter, doing so three times. Images are displayed on a screen hooked up to the camera’s USB HDMI port.

It’s a build that keeps things simple. No single-board PCs needed, just a camera, an Arduino, and a monitor for the display. We’re sure the wedding-goers had a great time, and we look forward to seeing what [Lewis] comes up with next. We’ve seen a few of his hacks around here before, too.

Continue reading “Build A DSLR Photo Booth The Easy Way”

Rise And Shine With This Japanese-Inspired Clock

On the Hackaday.io page for his gorgeous “Sunrise Alarm Clock”, [The Big One] is quick to point out that his design is only inspired by Japanese lanterns, and does not use authentic materials or traditional woodworking techniques. Perhaps that’s an important fact to some, but we’ll just say that the materials used seem far less important when the end result looks this good.

Unfortunately [The Big One] hasn’t provided any interior shots of his clock, as it sounds like the aesthetics of the internal wiring isn’t quite up to the standard set by the outside of it. But he has provided a concise parts list, a wiring diagram, and source code, so we’ve got a pretty good idea of what’s under the hood.

The clock is powered by the uBBB 32u4, an ATMega32u4 development board that [The Big One] developed in conjunction with [Warren Janssens]. It uses the popular MAX7219 LED matrix for the display, and a DS3231 RTC module to help keep the time. There’s also a DFPlayer Mini module onboard that allows him to play whatever sound effects or music he wants when the alarm goes off.

Of course the star of the show is the LED strips which illuminate the shōji-style column. These have apparently been wrapped around a coffee can of all things, which not only serves as a convenient way of holding the strips, but [The Big One] says actually makes the speaker sound a bit better. Hey, whatever works.

This isn’t the first “lantern” clock to grace these pages, but compared to the high-tech presentation of previous projects, we can’t help but be impressed by the grace and elegance of this wooden masterpiece.

An ESP32 Clock With A Transforming LED Matrix

Over the years we’ve seen countless ways of displaying the current time, and judging by how many new clock projects that hit the tip line, it seems as though there’s no end in sight. Not that we’re complaining, of course. The latest entry into the pantheon of unusual timepieces is this ESP32-powered desk clock from [Alejandro Wurts] that features a folding LED matrix display.

The clock uses eight individual 8 x 8 LED arrays contained in a 3D printed enclosure that hinges in the middle. When opened up the clock has a usable resolution of 8 x 64, and when its folded onto itself the resolution becomes 16 x 32.

This variable physical resolution allows for alternate display modes. When the hardware detects that its been folded into the double-height arrangement, it goes into a so-called “Big Clock” mode that makes it easier to see the time from a distance. But while in single-height mode, there’s more horizontal real estate for adding the current temperature or other custom data. Eventually [Alejandro] wants to use MQTT to push messages to the display, but for now it just shows his name as a placeholder.

The key to the whole project is the hinged enclosure and the reed switch used to detect what position it’s currently in. Beyond that, there’s just an ESP32 an some clever code developed with the help of the MD_Parola library written for MAX7219 and MAX7221 LED matrix controllers. [Alejandro] has published the code for his clock, which should be helpful for anyone who’s suddenly decided that they also need a folding LED matrix in their life.

Now if the ESP32 LED matrix project you have in mind requires full color and high refresh rates, don’t worry, we’ve got a solution for that.
Continue reading “An ESP32 Clock With A Transforming LED Matrix”

A Hard Rocking Arduino Visualization Shield

Over the summer [ElectroSmash] put the finishing touches on the Arduino Audio Meter, a shield for the Arduino Uno that visualizes various aspects of an incoming audio signal on a set of four 8×8 LED dot matrices. Obsentisibly it’s for use on a guitar pedalboard, but thanks to the incredible documentation and collection of example code provided by the team, the project promises to be an excellent platform for all sorts of audio experimentation.

Incoming audio is amplified with an MCP6002 and fed into the Uno’s Analog to Digital Converter, where it’s processed via whatever Sketch the user has uploaded. User input is provided by a digital encoder with push-button. A set of four MAX7219 chips control the entire 256-pixel matrix with just three pins on the Arduino. The resolution of the display allows the Arduino Audio Meter to show more than just a simple VU meter, it can even do text and basic graphics.

[ElectroSmash] provides various Sketches for use with the Arduino Audio Meter that provide the expected repertoire of audio visualizations, but they also provide a number of interesting Sketches to expand the capabilities of the device in unexpected ways. Some of them could be useful for a stage musician, such a tool to tune your guitar, whereas others are fun uses of the hardware such as a game of “Snake”.

With the entire project released as open source, users are free to run wild with the Arduino Audio Meter. Writing your own custom software is an obvious first step to making the project your own, but adding additional hardware features and functions certainly aren’t out of the question either.

Our very own [Lewin Day] once walked us through the effort involved in building boutique guitar pedals, and while the Audio Audio Meter’s capabilities are somewhat limited as it doesn’t have the ability to change the audio going through it, we’re still interested in seeing what the community will come up with once they have an easy way to bring their ideas to life.

Continue reading “A Hard Rocking Arduino Visualization Shield”

An ESP8266 Clock With Built-In Notifications

When we recently discussed the skills that we might wish to impart upon a youngster, one of those discussed was the ability to speak more than one language. If any demonstration were required as to why that might be the case, it comes today in [Byfeel]’s Notif’Heure, an ESP8266-powered clock and display (French-language, Google Translate link). If we only watch for English-language projects, we miss much of the picture.

The project began life in April 2018 (Google Translate link) and has since speedily progressed through many software versions to the current v3.2. In hardware terms it’s pretty simple: an ESP8266 development board drives a set of LED matrix displays. In the software though it has the primary function of an NTP-synchronised clock, there is also support for notification display and integration with the Jeedom home automation package.

We’ve featured innumerable ESP8266 clocks over the years, but surprisingly this is the first one with Jeedom integration. With so many to choose from it’s difficult to pick examples to show you, so perhaps it’s time to go to the truly ridiculous with this twelve-ESP monster.

Merci beaucoup au [Erwin] pour le tip!

Visualizing LEDs For More Efficient Pin Packing

The archetypal “blink an LED” is a great starter project on any platform, but once the bug takes hold that quickly turns into an exploration of exactly how many LEDs a given microcontroller can drive. And that often leads to Charlieplexing. A quick search yields many copies of The Table describing how many LEDs can be driven by a given number of pins but that’s just the most rudimentary way to describe it. Way back in 2013 [M Rule] developed a clever trick to describe the number of LED matrices which can be driven by a Charlieplexed array of a given size that makes this process much more intuitive. The post may be old, but we promise the method is still fresh.

[M Rule] was specifically looking to drive those big, cheap single color LED matrices which are often used to make scrolling signs and the like. These parts are typically a matrix of LEDs with a row of common cathodes and one of common anodes. Internally they are completely dumb and can be driven by row/column scanning, or any other way a typical matrix can be controlled. The question is, given known matrix sizes, how many can be driven with a a number of Charlieplexed LED drive pins?

The first step is to visualize the 1D array of available pins as a 2D matrix, as seen to the right. Note each numbered pin is the same on the X and Y, thus the black exclusion zone of illegal drive pin combinations slicing across the graph (you can’t drive an LED connected to one pin twice). The trick, if one were to say it resides in a single place, would be titling the axis anode and cathode, representing two “orientations” the drive pins can be put in. With this diagram [M Rule] observed you can simply drop a matrix into the array. If it fits outside the exclusion zone, it can be driven by those pins!

To the left is what this looks like with two 8×8 matrices, one connected between pins 1-8 and 9-16, the other connected between 9-16 and 1-8. This isn’t terribly interesting, but the technique works just as well with single LEDs and any size matrix, including 7-segment displays. Plus as long as an element doesn’t overlap itself it can wrap around the edges leading to some wild visuals, like 14 RGB LEDs on seven pins to the right.

The most extreme examples are pretty exotic. Check out [M Rule]’s post for the crown jewel; 18 pins to drive six 5×7 modules, six 7-segment displays, 12 single LEDs, and 18 buttons!

If this color coded diagram seems familiar, you may be remembering [openmusiclabs]’ excellent diagram describing ways to scan many of buttons. Or our coverage of another trick of matrix topology by [M Rule] from a few weeks ago.

Lateral Thinking For An Easier Charlieplex

In the practical world we live in, PCBs are often rectangles (or rectangles with rectangles, it’s just rectangles all the way down). When a designer goes to schematic capture things are put down on nice neat grid intersections; and if there isn’t a particular demand during layout the components probably go on a grid too. Routing even the nastiest fractal web of traces is mostly a matter of layers and patience. But if the layout isn’t being done in a CAD tool and needs to be hand assembled free-form this isn’t always as simple. [M Rule] had this very problem and discovered a clever solution, turning things diagonal.

They changed the fitness criteria to the optimization problem that is controlling a lot of LEDs. Instead of minimum pins to drive the goal became “easiest assembly”, which meant avoiding wires snaking back and forth across the layout, a big source of frustration in a big Charlieplexed design. The observation was that if they turned the a rectilinear LED matrix by 45° and wrapped each connection around at the edges it formed what was essentially a large multiplexed matrix. The topology is pretty mind bending, so take a minute to study the illustration and build your mental model.

It looks a little strange, but this display works the same way a normal multiplexed display does but with the added benefit that each trace flows from one side to the other without turning back on itself at any point. To light any LED set the right row/column pair as source/sink and it turns on!

What if you actually need a rectangular display? Well that’s no problem, the matrix can be bent and smooshed as desired to change its shape. At the most extreme the possible display topologies get pretty wild! We’re sure to try thinking laterally next time we need to design an unusual display, maybe there is a more efficient matrix to be found.