Saturday, May 28, 2011

Active Noise Cancelling Technology and the Nokia BH-905i [Off-Topic]


It's been some time since I last updated the blog, since I rarely have time to. I wanted to write an article on active noise cancellation.

Last week Nokia sent me a BH-905i headset as a trial, thanks to WOMWorld and it got me thinking about Active Noice Cancellation (ANC from now on), so I thought I would share some insight on how ANC works and where you could find it more useful.

First of all which is the difference between active and passive noise cancellation?
Passive cancellation consists of isolating the ear or the sound source with any soundproofing material. You can find it in houses, cars, and even some computer cases. It works best with higher frequencies, i.e. higher pitch, is relatively cheap and consumes no energy.
However, passive cancellation doesn't work good with lower frequencies and often results in bulky devices, like isolating construction headsets.
Active cancellation was invented in 1934 and has been getting better ever since, but how does it work, and what is it good for?

ANC relies on the nature of sound. Sound is formed by waves, just like the ones in a water surface. If you have studied waves you probably have heard about destructive interference. Destructive interference is an effect which occurs when two opposite waves meet. Don't get me wrong, opposite doesn't mean that they are travelling in opposite directions, it means that one of them is on the crest and the other one on the trough, as shown in the picture by thescienclassroom


Both waves in the picture produce a sound by themselves, but add them in that exact point and they will cancel themselves out. This is basically what the BH-905i does.

Now, there are various ways to implement this and I don't know how it is done in this particular headset. You can take the simple analog approach, capture the sound, invert it and send it to a speaker, but it's not easy to generate the same wave (sound isn't going to be a pure sine wave like the picture above). Also you have the problem of doing it as fast as the sound propagation itself. Remember that the same wave, added in a different moment will not cancel the noise, but produce noise by itself. The microphones in a headset are like 1cm from the speaker which means you have to capture the sound, invert it and reproduce it in less than 30 microseconds, doable, but not easy.

Then there is the digital approach, which I think is the solution chosen for the BH-905i (I'm not an engineer at Nokia so I can't confirm this, I'd love to hear some insight from Nokia) this consists of digitally capturing the sound, decomposing it in different frequencies (through FFT) and then generating these same frequencies with opposite phase (which is the same as inverting the signal). Doing this allows the system to work with some delay and doesn't force the speakers to produce a very perfect sound. The result is that you get a really good attenuation for constant, low frequency noises. (Higher frequency noises mean shorter wavelengths, which means that crests and troughs are shorter and thus more difficult to put together) If you sit on an airplane for example, the engine is always generating the same soundwaves, since they're produced by components moving cyclically in the exact same way. This allows the digital system to capture the sound, analyze it and cancel it in a very efficient way.
The digital approach has a drawback, though. Processing the incoming noise takes time, so you can't cancel out random unpredictable noises like a conversation, steps or the wheels of a train against an uneven rail.
Summing up then, this headset, and others with similar working, is much more efficient at cancelling the noise of an annoying computer fan for example, than at cancelling conversations or similar noises.

I want to thank Nokia and WOMWorld for giving me the opportunity of trying this headset myself.