The joys of overengineering a simple gift. [Joren] wanted to create a dress for his daughter’s fourth birthday that would react with lights in sequence for a song from Frozen. The dress and an LED strip, along with a digital microphone and a battery were easy to procure. But how to make it all work? An ESP32 did the trick.
While the project’s name–Olaf–sounds like it was from Frozen, according to the GitHub page it actually means Overly Lightweight Acoustic Fingerprinting. Right. However, as the name implies, it can learn to identify any sound you want.
One interesting twist. The code is in C, so running it through Emscripten allows the code to run in your browser and you can watch it work alongside a YouTube video of the movie. You can see in the image above that the fingerprint screen gets red dots until it matches the audio and then the dots turn green, indicating a match.
Even if you don’t want a magic Frozen dress, the code on GitHub could be a good starting point for developing audio-sensitive applications.
I’d use ESP8266 and cnlohr’s simple but brilliant colorchord, but still – impressive project!
Yeah, except colorchord won’t activate a lighting routine just when it hears a Frozen song, will it?
I would think that the last thing you’d want as a parent is to explicitly encourage your child to repeat a single song ad infinitum :)
Although, you could invert it and make it light up for anything other than the song you’re heartily sick of…
This definitely sounds and looks like magic to me. I’m speaking as a fan of frozen, ESP32, WASM. This project is the epitome of everything cool about life.
Long ago, my school science project was creating an Apple][e program that would recognize several songs and print which one.
I used the joystick port to sample an led which turned on when the 60Hz signal came from a forest Mims color organ type circuit.
It could recognize B52’s Roam, Michael Jackson’s Bad and a few others.
It measured the time between beats and stored them, then compared those numbers to pre sampled versions.
I had to adjust the volume carefully.
To wooo the judges I had the color organ connected to a pair of Porsche taillights I got from a garage sale.
I wonder if this could be trained to recognise tv ads and adjust volume.