These days, streaming services are a great way to listen to music or podcasts on your computer or on the go. However, they lack one feature of the MP3 players and streamers of old: visualizations! [mircemk] is a fan of those, and has built a hardware spectrum analyzer that pumps with the music.
The build relies on a 20×2 character VFD display that looks great, with high brightness and excellent contrast. It can be easily driven from a microcontroller, as it has a controller on board compatible with the typical HD44780 command set. On Arduino platforms, this means the display can easily be driven with the popular LiquidCrystal library.
The Arduino Nano inside takes in the audio signal via its analog inputs. It then processes the audio with the fix_fft library, which runs a Fast Fourier Transform in order to figure out the energy level of each frequency bin in the audio spectrum for both the left and right channels. This data is then sent to the screen for display. It’s impressively fast and smooth, with the display dancing along with the beat nicely as [mircemk] tests it out with some tunes.
If it looks familiar, it’s because it’s an updated version of a prior project from [mircemk]. We saw it previously as a VU meter that pulsed with the beat, an altogether simpler visualization but still a cool one. Video after the break.
7 thoughts on “Character VFD Becomes Spectrum Analyzer”
Very good idea to use text-only display for non-text-only purposes. Adding another item into my to-do list.
The VFDs are such great displays.
I’ve still got one repurposed from an old check-out machine from 20 something years ago. Back then, we did the same idea with the analyser – but it needed a dedicated computer running Winamp (and associated plugin) – plugged into a serial port.
Many online streams and many player phone apps unfortunately have a bunch of bouncy lines going on only they are just random repeating nonsense. VLC has a real one but it’s frequency base is linear not octave. In the middle is 10kHZ and all the bass and mids are scrunched into the left side. Fine if you want to see just the treble but not appealing to see the music on.
Good use of the VFD. The demo fails to show what segments refer to what frequencies though. At least play a segment of bass only then mid range notes etc. or a frequency sweep. Otherwise I only see a bunch of bouncy bars which could be fake. Analyzer means you can actually do what it says. The amplitude should be exponential rather than linear as well.
Nice! I would have made the “L” and “R” labels periodically invert, to prevent them burning in. Nevertheless, this is a very well done project.
The most interesting part about these kinds of projects is always the enclosure, at least for me. Electronics I can do, pretty enclosures… I’m still learning.
I have taken to just buying those nice pre painted Hammond boxes now that I’m sick of the bare PCB look. I’m hopelessly bad at making my own enclosures.
Those Hammond enclosures work nicely with end panels made from custom PCBs. Much easier than trying to cut neat rectangular holes by hand, and very cheap from your favourite far Eastern fab house.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)