FFT On The Raspi’s GPU

fft

The Raspberry Pi has been around for two years now, and still there’s little the hardware hacker can actually do with the integrated GPU. That just changed, as the Raspberry Pi foundation just announced a library for Fourier transforms using the GPU.

For those of you who haven’t yet taken your DSP course, fourier transforms take a function (or audio signal, radio signal, or what have you) and output the fundamental frequency. It’s damn useful for everything from software defined radios to guitar pedals, and the new GPU_FFT library is about ten times faster at this task than the Raspi’s CPU.

You can get a copy of  the GPU_FFT library by running rpi-update on your pi. If you happen to build anything interesting – something with a software defined radio or even a guitar pedal – you’re more than welcome to send it in to the Hackaday tips line. We’d love to see what you’re up to.

Retrotechtacular: The Fourier Series

retrotechtacular-fourier-series

Here’s a really quick video which takes a different approach to understanding the Fourier Series than we’re used to. If you’re a regular reader we’re sure you’ve heard of the Fourier Series (often discussed as FFT or Fast Fourier Transform), but there’s a good chance you know little about it. The series allows you to break down complex signals (think audio waves) into combinations of simple sine or cosine equations which can be handled by a microcontroller.

We’ve had that base level of understanding for a long time. But when you start to dig deeper we find that it becomes a math exercise that isn’t all that intuitive. The video clip embedded after the break changes that. It starts off by showing a rotating vector. Mapping the tip of that vector horizontally will draw the waveform. The Fourier Series is then leveraged, adding spinning vectors for the harmonics to the tip of the last vector. The result of summing these harmonics produces the sine-based square wave approximation seen above.

That’s a mouthful, and we’re sure you’ll agree that the video demo is much easier to understand. But the three minute clip just scratches the surface. If you’re determined to master the Fourier Series give this mammoth Stanford lecture series on the topic a try.

[Read more...]

Color LED matrix VU meter shows how to use FFT with Arduino

If you’ve ever wanted to make your own VU meter but were scared off by the signal process you need to study this tutorial.

Hackaday Alum [Phil Burgess] developed the device using an RGB LED matrix, microphone, and an Arduino. You’ll notice that is doesn’t include an MSGEQ7 chip which we see in most of these types of projects. We have seen a few that use the Fast Fourier Transform to map the audio signal on the display as this one does. But [Phil's] choice of an assembly language Library for ATmega chips makes this really simple to roll into your own projects.

The one drawback to the hardware choices made here is that there are only eight bits of vertical resolution. It takes a little creative interpretation to make this look good, but the use of color mixing really makes a difference. See for yourself in the demo after the break.

[Read more...]

Making an audio spectrum analyzer with a microcontroller

While [Vinod] says he’s not an expert in this sort of thing, we really like his audio spectrum analyzer build from a simple microcontroller and LCD display.

It is a well-studied fact that every audio waveform – a recording of your voice, for instance – is just the sum of many, many sine waves. These sine waves can be plucked out using Fourier analysis, using a Discrete Fourier transform. This is the principle that spectrum analyzers operate under; [Vinod] wrote a bit of code using DFT to take apart audio captured from a microphone and output their frequency on an LCD display.

To output the spectrum on his LCD, [Vinod] stacked horizontal bars up into 8 custom characters in his display. Like [Vinod]‘s previous audio on an ATMega32 experiment, an LM324 amplifier is connected to the ATMega through an analog pin. [Vinod] has a very clever build on his hands with his spectrum analyzer, and a great answer to the perennial ‘how do I build a guitar tuner’ questions we’re constantly asked.

After the break, you can see [Vinod]‘s spectrum analyzer in action. Be forewarned; you may want to turn down the volume.

[Read more...]