Noise measurement with soundcard and REW - Page 1
Forum section: electronics / general

author: noxet
author_rank: Newbie
timestamp: November 21, 2024, 12:28:31 am
content: I bought a couple of different op-amps, and I want to measure their noise, eNover the audio bandwidth. I realize that measuring THD and noise with an oscilloscope is pretty hard, but using a soundcard and REW might work, according to different posts I've read.I can not get the results I hoped and I wonder if I am doing something stupid here.My setup is as follows:I have an opamp (say TL072) on a small breadboard, inside a shielded box, running on batteries, +-9 V. I have grounded the non-inverting input, and the feedback is a 100k and a 112resistor, which gives me a gain of around 900.I have an SSL2+ USB soundcard connected to my laptop (unplugged), and I have calibrated it in REW (https://www.roomeqwizard.com/).When I run a measurement on a JRC4558 I get the following result, very similar to the result of a TL072I measure around 1.5uV/rtHz at 1 kHz, which is 1.67nV/rtHz pre-gain. This is far from the specification. For an LM358, I measured 4-5nV/rtHz.I have the input gain on my soundcard set to minimum. I have also tried both the line input (10k) , and the instrument input (1M), without any major difference.What am I missing here? I've seen other people post similar measurements where the results make sense, but I can not figure out why I get the numbers wrong.

author: trobbins
author_rank: Frequent Contributor
timestamp: November 21, 2024, 04:09:11 am
content: How did you 'calibrate' the reading, and how did you calculate 1.5uV/rtHz ?

author: iMo
author_rank: Super Contributor
timestamp: November 21, 2024, 08:48:00 am
content: I would use 10ohm and 10k with the opamp DUT (1000x, in the shielded box), following a (simple) bandpass filter from 10Hz to say 10kHz (as you need, limiting the BW is important), following an amplifier, say 100x (an opamp, or transistors, the noise here is not critical), following the soundcard.It could be the noise of your soundcard (and the PC environment) is high and the signals from the DUT are small comparable to the soundcard's noise, thus you mainly see the soundcard's noise.The output voltage of your current DUT will be (say a 5nV/rtHz opamp, 1kHz) around 135uVrms, that might be too small level for your soundcard. With the bandpassing and the additional 100x amplification you would get perhaps 12-13mVrms which may work much better with your soundcard.PS: also mind the Gain-BandWidth product of your DUTs with the 1000x gain..

author: EEEnthusiast
author_rank: Frequent Contributor
timestamp: November 21, 2024, 10:34:45 am
content: The problem is that he is measuring lower noise than expected. So the sound card is not the limiting factor here.

author: EEEnthusiast
author_rank: Frequent Contributor
timestamp: November 21, 2024, 10:35:54 am
content: Can you post the noise floor of your sound card here? May be with inputs floating as well as inputs shorted out using a very small cable?

author: EC8010
author_rank: Frequent Contributor
timestamp: November 21, 2024, 10:57:05 am
content: I expect the problem is measurement bandwidth. Your frequency bin width is dependent on record length and sample rate. For a soundcard, you probably have choices of 44.1kHz, 48kHz, and 96kHz, but who knows what your record length is? If you're taking the FFT data out to a spreadsheet, you can subtract one frequency from the next highest frequency to get bin width (it will be constant with frequency). It probably won't be 1Hz, and reduced bandwidth will see reduced noise. Take the square root of its reciprocal and multiply that by the amplitudes to get an amplitude corrected to root Hz.

author: Kleinstein
author_rank: Super Contributor
timestamp: November 21, 2024, 11:43:18 am
content: The calibration or gain must be somewhat off: 1.5 nV/sqrt(Hz) would be way to low for an TL072. Alone the 112 ohm resistor in the gain network would produce about that level of noise.As the TL072 has very low input current noise, one could get a reference noise from a resistror (e.g. 1 M) in series with the non inverting input.With a DC coupled gain the offset of the TL072 may already have quite some DC at the output that may saturate the input of the sound card. It may need extra AC coupling between the amplifier and sound card.p.s.: with the high gain, the GBW of the TL072 would reduce the gain already from some 4 kHz on.

author: David Hess
author_rank: Super Contributor
timestamp: November 21, 2024, 05:54:56 pm
content: Just 1.6 picofarads across the 100 kilohm resistor would limit bandwidth to 1 kHz. Could there be that much or more stray capacitance in your test setup? The noise curve seems to show that.So reduce the impedance of the operational amplifier's gain network to reduce the effects of stray capacitance.Noise measurement circuits usually run the DUT (device under test) at a lower gain and have a second gain stage to make up the difference which will preserve measurement bandwidth.

author: 2N3055
author_rank: Super Contributor
timestamp: November 21, 2024, 09:56:38 pm
content: Quote from: noxet on November 21, 2024, 12:28:31 amYour LM358 noise figures are 10x less than datasheet values for that type... it's ballpark would be cca. 40 nV/√/HzDefinitely something is wrong.https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1085430/opa657-measuring-opa657-voltage-noise

author: noxet
author_rank: Newbie
timestamp: November 21, 2024, 11:31:41 pm
content: Quote from: EEEnthusiast on November 21, 2024, 10:35:54 amI did a couple of measurements. First when I connected the soundcard to a breadboard via instrument cables that are a couple of meters long. Both grounded and floating input.I also tried with a really short cable, but result is roughly the same, ca 30nv/rtHz. Now I did use my PC for this measurement and the soundcard is connected via USB C, and not my laptop as I did yesterday.However, as you pointed out, the issue is that I am measuring a smaller noise than expected, which is quite unexpected ^^

author: noxet
author_rank: Newbie
timestamp: November 21, 2024, 11:36:12 pm
content: Quote from: Kleinstein on November 21, 2024, 11:43:18 amYeah the results doesn't make sense at all.You have a good point with the DC offset, since the input voltage offset is ofc a problem with this gain.I'll redo the measurement with DC removed

author: noxet
author_rank: Newbie
timestamp: November 21, 2024, 11:40:09 pm
content: Quote from: David Hess on November 21, 2024, 05:54:56 pmOh damn, I didn't event think about this. But that makes perfect sense..Well I guess breadboards are out of the question then.. I'll solder it on a perfboard and report back!

author: noxet
author_rank: Newbie
timestamp: November 22, 2024, 12:24:44 am
content: Quote from: noxet on November 21, 2024, 11:36:12 pmOk so I've tried the following (still on breadboard though):1. lowered the gain to 100x instead of 1000x2. added a 100uF cap in series with the 112R resistor to block DC gain (cutoff freq at 14Hz)The results are strange.In the first measurement, the noise curve looks much better, almost completely flat, but still the noise is at 140nv, which is ca 1.5nv/rtHz pre-gain... way offIn the second measurement, with the DC block, the noise is still at 140nv, so that did not seem to help much

author: noxet
author_rank: Newbie
timestamp: November 22, 2024, 12:32:28 am
content: Quote from: David Hess on November 21, 2024, 05:54:56 pmIf I use a lower gain for the DUT, the succeeding stage would need less gain to not add its own noise right? or you would need an opamp with much lower noise than the DUT itself I guess

author: noxet
author_rank: Newbie
timestamp: November 22, 2024, 12:35:29 am
content: Quote from: 2N3055 on November 21, 2024, 09:56:38 pmDefinitely something wrong..Thanks for the references, will read through them carefully

author: iMo
author_rank: Super Contributor
timestamp: November 22, 2024, 06:06:39 am
content: Quote from: iMo on November 21, 2024, 08:48:00 amTry with 10ohm and 10k, that lowers the intrinsic noise of the first resistor and it will increase your BW 10x in your current feedback capacitance configuration.The AC coupling between the stages is a must, of course (ie my suggestion to have a 10Hz highpass there, for example).Also, how did you calibrate your soundcard, btw?The GBW of the LM358 is 1.2MHz, with 1k amplification its cutoff will be 1.2kHz..

author: magic
author_rank: Super Contributor
timestamp: November 22, 2024, 06:20:48 am
content: Yes, with such high gain, BW will be pitiful. You could wire your DUT for only 1x or 10x gain and add some NE5534 at 10x or 100x if DUT gain isn't enough for your soundcard.Other than that, your cal is off by about 20dB for some reason.Quote from: trobbins on November 21, 2024, 04:09:11 amRepeating the question.Quote from: EC8010 on November 21, 2024, 10:57:05 amRepeating the likely cause of your problem.

author: magic
author_rank: Super Contributor
timestamp: November 22, 2024, 06:46:03 am
content: If changing closed loop gain and adding DC blocking makes no difference to the measurement then DC is not the problem.That being said, it can be a problem in general. One needs to ensure that the soundcard isn't overdriven with DC and that the DUT isn't saturated to its supply rail.

author: Kleinstein
author_rank: Super Contributor
timestamp: November 22, 2024, 08:43:45 am
content: With less gain for the DUT the noise noise of the 2nd stage gets a little more relevant. It is still not that critical with even just a gain of 10. One can correct instrument noise (like the soundcard itself) reasonable if it is not larger than the DUT noise. If less than 1/10 one may not even need the correction, as different noise sources add a squares - so an extra 1/10 the noise would inclease to combined noise by only 1%.The likely suitable choice would be a gain of some 10 to 100, to get enough bandwidth from the DUT to cover the audio range.The Feedback network should be relatively low resistance, like 10 ohm and 1 K to avoid noise from the resistor and BW limits from parasitic capacitance. Than the use of the breadboard can still be OK.With a gain of 100 or less the DUT should not have a DC problem. If required DC blocking would be after the DUT, where the impedance can be higher.With a sound card input noise of 30 nV/sqrt(Hz) one may not even need a 2nd external amplifier stage. This is however only of this would be real value and not with the same wrong calibration factor. So one may still need an extra external gain stage. The noise of the sound card can also depend on the gain setting.

author: David Hess
author_rank: Super Contributor
timestamp: November 22, 2024, 02:13:49 pm
content: Quote from: noxet on November 22, 2024, 12:32:28 amThe DUT is already amplifying its own noise, so the demands for low noise from the second operational amplifier are considerably reduced. Your DUT has a gain right now of almost 1000 when 100 would be more than enough. I might use a gain of 32 in both stages just to make things simple, producing a total gain of 1000, however this depends on the difference in gain-bandwidth product of the two operational amplifiers.Shown below is an example of a noise test circuit intended for measuring 0.1 to 10 Hz spot noise, however it gives an idea of what is required. In your case, all of the filtering would be removed and the feedback resistances must be lowered to keep parasitic capacitance from limiting bandwidth. The second operational amplifier could be the same, or more likely a higher performance bipolar part since low input bias current is not required.

author: 1audio
author_rank: Frequent Contributor
timestamp: November 22, 2024, 10:36:28 pm
content: WRT REW: I found this from the author: There is a V/sqrt(Hz) axis option on the Overlay graph. It is a slightly awkward axis choice to deal with as the displayed results are only valid for measurements captured from the RTA as they include the necessary information to convert to spectral density. Measurements which do not have that data (e.g. log sweep results) show volt figures, though they are still displayed with V/sqrt(Hz) units.Just to make sure you are collectiong the right data.

author: noxet
author_rank: Newbie
timestamp: November 23, 2024, 10:20:40 am
content: Quote from: magic on November 22, 2024, 06:20:48 amI lowered the gain to 100x so the bandwidth should be at least 20kHz.In REW, you can calibrate the card, by shorting the input/output, then it does a sweep and measures response, so that's what I did. Now, I don't know if that helps with the noise though..I did not calculate it, rather REW shows the noise at the bottom. I did highlight it in later images.I'll try exporting the data and check this. I naively assumed that REW shows me the correct value!

author: EC8010
author_rank: Frequent Contributor
timestamp: November 23, 2024, 10:48:31 am
content: Quote from: noxet on November 23, 2024, 10:20:40 amYou'd be amazed how many pieces of equipment get things wrong when using alternate units. My Tek oscilloscope can be told that it's measuring current rather than voltage and happily produce a (correct) scaling of 10fA/div. in the time domain. But if you then do an FFT it puts a "?" in place of A in the FFT. I have learned to take data as raw as possible and do the processing myself, checking in every way I can that I've got it right. Having done that, I have produced noise FFTs that agree closely with semiconductor manufacturer's data. Interestingly, I find that for a noise FFT, there's little point in going above 1kHz. You need to go low enough to characterise low frequency noise, but once it is measurably white, there's little need to go higher. Having said that, Siliconix reckoned that JFETs have an additional noise source above 20kHz due to capacitive coupling from the channel; so far, I've not needed to check/measure that. But, as other posters have said, you almost always need a low noise amplifier before your measurement system to ensure that you're genuinely measuring the noise of the DUT and not the measurement system.

author: magic
author_rank: Super Contributor
timestamp: November 23, 2024, 12:30:51 pm
content: Quote from: noxet on November 23, 2024, 10:20:40 amTwo problems:1. How is REW supposed to know full scale input or output amplitude of the soundcard, which it needs to convert ADC samples to absolute units like volts?2. Does the noise floor and/or REW noise calculations change when you change FFT size? They probably do, and that's because depending on how wide your FFT bins are (1Hz, 10Hz, 0.1Hz, 12.3Hz) they catch a different amount of noise and not all software bothers to convert from "noise per FFT bin" to some absolute unit like "noise in 1Hz of BW".

author: trobbins
author_rank: Frequent Contributor
timestamp: November 23, 2024, 01:11:13 pm
content: noxet, I could suggest you calibrate using a reasonable ac rms meter that Tee's into the loopback cable. You could for example use white noise from the REW generator, with an octave bandwidth at say 1kHz so as to suppress lo/hi frequency content that may be measured by the rms meter. You could calibrate at a high signal level and confirm how linear your meter is as you lower the generated signal level in say 10dB steps down to where the 1kHz bump recedes into the noise floor. The soundcard likely has a much lower noise floor than your meter can measure, so likely need to set FS level at a much higher level where your meter is linear. Your spectrum should indicate if you have any spurious signals away from say the 1kHz hump. Perhaps play around a bit with settings and input/output levels for just the loopback setup to get a better idea of what to expect - I typically use the headphone output on my EMU0404 with a max pot level, and set input pot level to min, to give known pot settings.

author: noxet
author_rank: Newbie
timestamp: November 23, 2024, 02:01:18 pm
content: Alright guys, I figured it out after all, I was of course the idiot here..I did calibrate using REW, which sweeps and measures the response. This calibration I saved as a calibration file and have used it on every measurement since.As magic pointed out, of course REW needs to know what ADC value corresponds with the actual voltage. I did this calibration too in the RTA tool. This, however, did not get saved in a file, but was just cached in the software itself, and for some reason, was not applied when I tried to measure the op amps.I finally re-calibrated it, feeding a known sine wave from my function generator, and entering the rms value in REW. Now everything looks good, and after redoing all the measurements with LM358, TL072, and an OP07, it all matches with the datasheets!I want to thank all of you for your input here. It has been really helpful and I have adjusted my setup accordingly with much lower gain, resistance values etc.