Rub and Buzz

QA401 release version 1.81 (located HERE) adds speaker Rub and Buzz testing in the form of a plug-in. Rub and Buzz refers to a speaker test that can detect the presence of higher frequency harmonic products produced in response to a low-frequency stimulus. The test is effective at finding a range of speaker defects, including rubbing due to misalignment, loose particles, missing glue and torn or ripped cones and surrounds.

After a bit of user training, it's easy to hear what a rub and buzz defect sounds like. In a defective speaker a single tone applied to the speaker usually around 50 to 150 Hz will result in anything from a gentle to harsh buzzing due to a defect-induced resonance being excited by the low frequency. 

The challenge in finding this that it often takes a specific frequency to make it happen. For example, 100 Hz could be really buzzy, but 90, 50 and 150 Hz are not. To find these frequencies that cause the excitation, a quick sweep can be used to cover the range of frequencies from 20 Hz or so up to a few kHz.

Detection of Rub and Buzz is fairly straightforward. First, let's start with a setup as shown in the block diagram below. The QA401 output goes to a speaker driver (shown here as the QA460), which drives the speaker we're interested in testing. The speaker output is captured by a MEMS mic, amplified by the QA470 (which also provides phantom power), and amplified version goes back into the QA401 for analysis.

The algorithm itself is shown below. In the first block, you can see the captured sine-wave chirp. A frequency estimator computes the instantaneous frequency of the chirp. That estimate is multiplied by a user-selected value (generally 5 to 15), and that is then used to program the cutoff frequency of a 4th order IIR digital high-pass filter. The output of that filter is then squared, compared to a reference frequency, and using data from the frequency estimator, a graph of energy versus frequency can be built. 

In understanding the blocks above, let's first take a look at a output of a healthy speaker when stimulated with a 105 Hz tone (the 105 Hz tone was picked because we know it's a problem frequency on an unhealthy speaker):

In the plot above, there are 2H and 3H products present, but beyond that, there's not much. This plot is what is expected.

Next, let's look at the spectrum of a speaker at the same frequency that has a torn foam surround. A torn surround or a surround that is missing glue might be a common defect during manufacturing:

In the plot above, you can readily see a range of harmonics extending from 3H up to nearly 10 kHz (approaching the 100th harmonic). Now, all of these harmonics are small in amplitude. They are generally 30 to 40 dB below the 2H, which means they don't degrade the measured THD by much. However, because they are in the middle of the region where the ear is most sensitive (1-2 kHz) AND because the desired tone (100 Hz) is so far removed from that 1 kHz region (ie masking isn't happening), the unwanted tones are very easy to hear, and they sound like a buzz.

Summarizing, in the plot above, we have some readily audible tones but a THD measurement can't resolve the higher frequency tones because they are masked by the massive low-order harmonics. This is where the tracking filter comes into play. If we estimate the sweep is currently at 100 Hz, and if the frequency multiplier is 10, then the tracking filter will be told to filter out everything that is below 1 kHz. And when the tone increases to 110 Hz, the tracking filter will be told to filter out everything below 1100 Hz. During the sweep, the adjustments to the cutoff frequency are small and continuous. 

The run the Rub & Buzz plug-in, you click on the Test Plug-ins menu and select the SPKR RubAndBuzz option:

The dialog that pops up allows you to set some options:

The Output Level refers to the level coming out of the QA401. The QA460 has 20 dB of gain, so this means the -20 dBV signal chirp will hit the speaker at 0 dBV. You may need to adjust based on the size of the speaker and your desired test power. 0 dBVinto a 4 ohm speaker is about 250 mW.

The Normalization Frequency refers to the frequency at which the energy output will be normalized. You want to enter a figure where that represents the center of primary frequency band and also a frequency that isn't showing any wild peaks or valleys due to the measurement setup. A sub would have a much lower frequency that the 1 kHz shown. Since the speaker being testing is a full range speaker, 1 kHz makes sense.

The Tracking HPF Multiplier sets the corner frequency on the high pass filter as a multiple of the measured incoming frequency. Valid values here are between 5 and 15 (inclusive). As you set lower values, your measurement will become more sensitive to harmonic distortion and overdrive and could result in false positives. As you set higher values, you will miss energy that could be indicative of a flaw, resulting in false negatives.

The ability to Mute Left and Mute Right is important if you are measuring a finished stereo speaker with a single measurement mic. In that case, you'd want to run the sweep twice: Once with the right muted (so you could measure the left channel speaker) and again with the left muted (so you could measure the right channel speaker). If you are only measuring a single speaker, then you should probably treat the left channel is your measurement channel and mute the right channel for all of your measurements. 

The Series Name will appear on the graph.

The Plot Debug Info will allow you to see more details on the speaker and can help debug issues with settings. This graph will have a lot of info on it, and isn't really useful by itself but instead can be helpful if you need to debug a measurement.

Below is a sample plot with the Debug option enabled:

Above, we can see captured sweep in red, the estimated energy in blue and the estimated frequency in black. Remember, this is debug info and it's not really designed to be consumable--think of it instead as the raw inputs to the algorithm. But, if you are having trouble getting a measurement on a speaker, and if you share the debug plot back with us we can quickly determine where the algorithm is breaking down and and provide that guidance back to you.

You can zoom on the debug image and see what the residual measured energy shows up as when superimposed on the captured wave. In the plot below you can see the "squiggles" on the sine: These are higher order (>>10X) products that are untouched by the high pass filter. This is what the buzzing distortion appears as in the  time domain.

So, what does a good speaker look like and how sensitive is the algorithm?

In the plot below, we see a speaker that was placed into the test fixture 6 times and measured. The aim here is to determine how much variation we might expect due to the fixture. This plot shows some low-level energy appearing when the sweep hit around 1300 Hz. This means something was measured rattling around above 13000 Hz. Generally, at this high frequency this is far too low to worry about. But more importantly, what we're looking for is speakers that are different from a group of "golden" speakers that engineering has determined are correctly manufactured.

Next, we take the same speaker, leave it in the fixture in the same place and do 6 runs. This let's us see what measure to measure variations might look like while ignoring fixturing variations. And the repeatability is good:

Next, let's add a loose particle to the measurement. Loose particles can sometimes get introduced during manufacturing and they can seriously degrade the speaker's performance. For this test, a 0402 ceramic capacitor was used as the loose particle. These parts are about 1mm x 0.5 mm in size, and weigh 0.09 mg per part (11,000 parts per kg). The plot for 3 runs is shown below. Note the measured energy peaks around -60 dB, which is 80 to 90 dB above the nominal "good unit" measurement. In other words, a loose particle this size is easy to detect. Much smaller particles can also be detected.

Next, a 10 mm cut was made in the neoprene surround. This resulted in the following signature below. Note the rise in energy around 100 Hz increased by nearly 10 dB.

Finally, let's look at a plot of a speaker with a torn dust cap. Again, it's easy to see something isn't right with this particular speakers compared to the "good" speaker.

The plot above is interesting because the energy that was previously present around 1300 Hz is now gone, and has been replaced with some broad energy from 0 to 200 Hz.


The Rub and Buzz algorithm in release 1.80 that exhibits very good sensitivity to commonly encountered speaker manufacturing defects. If you are building raw speakers  (instead of finished speaker units), we'd love to work with you in refining the algorithm and moving it into the automated test flow. Just send a mail to the sales alias. 

If you liked the post you just read, please consider signing up for our mailing list at the bottom of the page.