2254 noise floor and REW setup

GroupDIY Audio Forum

Help Support GroupDIY Audio Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

Spencerleehorton

Well-known member
Joined
May 12, 2012
Messages
4,033
Location
Felixstowe, Suffolk, UK
Hi ,

I've built a 2254 without the limit function and want to setup and test the noise floor.
I have a laptop and REW (linux)
Is there a specific setup to get good results to test noise floor so I can see if I'm in the ballpark please?
 
Spencerleehorton said:
Hi ,

I've built a 2254 without the limit function and want to setup and test the noise floor.
I have a laptop and REW (linux)
Is there a specific setup to get good results to test noise floor so I can see if I'm in the ballpark please?
I think REW is not adequate for noise measurement.
First you have to be aware that measured noise depends on the measurement bandwidth. Dedicated noise mesurements apply filters, usually at 22Hz and 22kHz; AFAIK, REW does not. A workaround is to do measurements at 44.1k Sampling Rate.
For some reason, the value that is displayed in the measurement window seems to correlate poorly measurements done with dedicated harware; it measures sinewaves correctly, though.
I use REW for frequency response measurements, mainly because its generator is practical, but never had confidence in noise measurements.
I would recommend you use RMAA, which has an option for measuring noise in the 20Hz-20kHz BW.
Very often, I see people posting noise spectra (an FFT of the noise), claiming they measure -120dBu noise floor. This is wrong! Here is not the place to explain why. It is a good investigation tool to pinpoint interference sources, such as transformer and PSU- induced, though.
Finally, before attempting any noise measurement, your system must be calibrated, by injecting a known signal (you can measure accurately enough a 0dBu 1kHz tone with a basic DMM).
 
It looks like John is in the process of preparing additional noise related tools, and given his speed at being able to continue enhancing the software's feature set, there may not be a long wait. 

Perhaps a post over on the REW forum asking about what he has in mind, and what would seem appropriate to include (perhaps in line with other software capabilities), could be a good thing for us all.

I certainly liked a recent enhancement wrt harmonic distortion and noise measurement (THD+N) where the measurement bandwidth could be modified - that was especially relevant to my soundcard where noisefloor level rises up with frequency to 96kHz, whereas I was interested in comparing just to circa 20kHz, and also when I wasn't interested in mains hum related noise levels encroaching on the low frequency end due to measurement setup.
 
trobbins said:
It looks like John is in the process of preparing additional noise related tools, and given his speed at being able to continue enhancing the software's feature set, there may not be a long wait. 
I must say I'm not fully up to date with REW, with a new version every week!
In the army, they say "don't execute an order before you recieve the counterorder".
With REW, it's "don't install the update before you receive the bug fix".
I'm not dissing; John M. does a fantastic job and passes it at no cost, but sometimes it's difficult to keep up.
 
Somebody noticed a new function tick box related to noise back in Feb on the REW forum, and John said it wasn't active yet - WIP it seems.

At least the REW updates come with an upfront change listing, so its pretty easy to glance through for anything of interest.  But heaps better than waiting for a year or two between version updates.

John was recently active in lowering the dB calculation/plot range to allow assessment of very low noise floor systems like from AP, and to assess particular noise and active distortion cancellation related topics, being progressed over on diyaudio in their software tools and equipment and tools sub-forums. 
 
The problem I will have with RMAA is that I only run ubuntu on my bench laptop.
I do have another machine with windows on it that I could use though.

Is it easy to use the inbuilt sound card with RMAA or do I need to get an external?

Is it difficult to setup?

Is there a better solution for measuring noise floor?
 
Spencerleehorton said:
The problem I will have with RMAA is that I only run ubuntu on my bench laptop.
I do have another machine with windows on it that I could use though.

Is it easy to use the inbuilt sound card with RMAA or do I need to get an external?

Is it difficult to setup?

Is there a better solution for measuring noise floor?
You just download RMAA and do the initial settings (declaring I/O's, Sample Rate, choosing driver...).
In Test options->General  you want to tick the "Analyse noise and distortion only in the 20Hz-20kHz range".
Then run "Adjust I/O levels" and you can start measurements.
IMO it's the easiest software in terms of setup and learning curve.
 
Just to throw out other options, another less traveled technique is to run Audacity and generate a track of 10s of a tone or white noise. Then hold the shift key down while clicking on the record button to play the track while simultaneously recording a new track. Meaning you pipe the output through the device and then record the output into a new track. Then export that as a 32bit wav file and analyze it using something like GNU Octave. If you adjust the output of your interface so that the tone stimulus is 0dBu, you can export that into the wav as the L track as a "reference tone" and recording as the R track and then use the L track to calibrate your plots to 0dBu (see script below that does this). Octave is ideal for computing proper noise and THD numbers but unfortunately I don't understand the math well enough to do that in Octave at this point. But looking at, and more important comparing, plots of frequency spectra is super useful by itself. Specifically, whenever I make a change to a device, I make said recording, view the spectra, make the change and then make a new recording and plot the before / after. The wav files are also an historical snapshot of the performance of the device at that time.

Here is the basic Octave "spectra.m" script:

Code:
pkg load signal

function [s, m] = spectra_fresponse(y)

    win_size = 2^16; 

    y = y(1:win_size) .* hanning(win_size);
    s = fft(y, win_size);
    s = abs(s(2:win_size/2));

    s = mag2db(s);
    m = max(s); 

endfunction

# x  - x axis data suitable for plot
# s1 - spectra of ref tone channel 
# s2 - spectra of DUT channel 
# m  - magnitude of ref tone
# y1 - ref tone sample data
# y2 - DUT sample data

function [x, s1, s2, m1, m2, y1, y2] = spectra_load(filename)

    start = 4;
    end0 = 6;

    # get sample rate
    [y, fs] = audioread(filename, [1, 2]);
fs

    # load samples start to end
    [y, fs] = audioread(filename, [fs * start, fs * end0]); 

    # split ref tone and DUT channels
    # ch1 ref tone
    # ch2 DUT 
    y1 = y(:, 1);
    y2 = y(:, 2);

    # compute magnitude of test tone in DUT channel 
    [s1, m1] = spectra_fresponse(y1);
    [s2, m2] = spectra_fresponse(y2);

    # generate suitable x scale for plotting
    n = length(s2);
    x = fs*(0:n-1)/n/2;

endfunction

This gets included into a .m file specific to plotting whatever .wav files with the usual plotting commands in Octave. But I also use sgolayfilt pretty aggressively first.

Here's an example of my ReVox B77 tape machine:

b77plots.png


Yeah, this doesn't answer your question about noise measurements and REW specifically but Octave could be used very effectively for producing really good noise and THD numbers. Maybe someone more fluent in Octave and with the necessary math could expand on this script. Octave is Free and free and runs on all of the usual platforms.
 
The important thing when using REW to measure noise is to calibrate it first. To do this you need to feed in a 1KHz tone at 0dBu into the interface connected to REW and look at it with the RTA. You can now use tis level to calibrate the RTA 0dB point to be 0dBu. After that, all the noise measurements made by REW whether unweighted, or A or C weighted will be relative to 0dBu which is generally what you want. Generally use a 44K1 sample rate for noise measurements because they a meaningless outside the audible range. However, I might want to look for spurious responses outside the audio band in which case I use a higher sample rate (assuming you sound card's bandwidth is up to the task).

The RTA is particularly good at finding low frequency spurii which often can skew a noise result. Mains hum and its components are an obvious example. When you are chasing the noise in a mic pre to reach the magical -130dBu or so it is surprising how much difference a 100Hz spike at -80dBu can make. Converselt the RTA is invaluable in seeing the effect of changes on hum problems.

Cheers

Ian
 
ruffrecords said:
Generally use a 44K1 sample rate for noise measurements because they a meaningless outside the audible range. However, I might want to look for spurious responses outside the audio band in which case I use a higher sample rate (assuming you sound card's bandwidth is up to the task).

Hello Ian

Just to add that with RTA you can hipass/lowpass the distortion and S/N computation, work at let say 96K to see outer band but THD S/N at 20-20k

Best
Zam
 
Well I have two laptops which have inbuilt sound cards, dont know whether this will be up to scratch?
I have a Mackie mixer which has a USB connection where I'm pretty sure I can use this as an interface?
For REW I can download and install on my ubuntu laptop, but for RMAA I have another laptop with windows 10 on it which I could use.
I'll have a play today and see how far I get!
 
Spencerleehorton said:
Well I have two laptops which have inbuilt sound cards, dont know whether this will be up to scratch?
Good question. I run REW on an old laptop but I use an external USB powered interface for better quality/noise.

You can run a loop back test to measure the overall response of your laptop's sound card and also look at its distortion and noise.

Cheers

Ian
 
Spencerleehorton said:
Well I have two laptops which have inbuilt sound cards, dont know whether this will be up to scratch?
All my desktop computers have appalling noise performance with the on-board cards.
My portables perform reasonably well, but the dreadful 3.5mm connectors made me reject this solution.
My go-to setup is an ACER 2-in-1 with a Native Komplete Audio USB interface. Not being connected to mains is a big plus.
 
You can use a builtin sound card but even a mediocre external USB audio interface will be much better. You can get a pretty good USB interface for less than $100 now. Anything 24 bit / 48 kHz + will have a noise floor well below just about any analog circuit you will be testing.
 
hi all,

I've now got REW installed on my ubuntu 18 laptop, which i use also for my Hantek digital scope software.
its an old HP G series.
I have a Mackie mixer which ive tested and calibrated the soundcard with by using two mini jack to 1/4" jack cables to go into the mixer and back into the laptop.
I've then done the calibration and the screenshot is below.

Is it now just a matter of putting whatever piece of gear within the chain from the output of the mixer into the 2254 then back into the computer, then I test again?

I'm asking as I havent seen any proper setup instructions yet, sorry.
 

Attachments

  • Screenshot from 2020-06-11 05-25-43.png
    Screenshot from 2020-06-11 05-25-43.png
    146.7 KB · Views: 17
There are two stages to calibration. The first is the frequency response  loop back test which allows you to create a cal file to compensate for the frequency response of the sound card which you have already done. The next step is to calibrate the input level so you can make meaningful level measurements. To do this feed a 0dBu 1KHz signal to the input of the  sound card. Select the RTA, set the displayed band with to 10Hz to 20KHz and the range to 0dBFS to -150dBFs. start the RTA and you should see a spike at 1KHz (and probably some harmonics). The 1KHz level will be some number of dBFS  (mine is typically in the -10dBFS region). You can now set this level to 0dBu in the RTA. Now turn off the 1KHz signal and you will be looking at the noise spectrum of whatever is driving your soundcard plus the noise of the soundcard itself. The RTA will also give you a figure in dBu for the total power in the selected bandwidth.

Cheers

Ian
 
Will defo start some testing tomorrow, thought I'd update the ubuntu to the latest and then had a nightmare re installing the openhantek software, but it's all good now.
Will hopefully report back with some sort of results!!
 
Back
Top