# How can I calibrate my sound card based oscilloscope?

I'm using Soundcard Oscilloscope software that presents as below

You'll notice that the display has a grid, and in the example is set for 100mV/div. Since it's using the sound card integral to my motherboard, there is no calibration of this display or the line in socket, so the divisions could actually be anything.

I have a digital multimeter as well that can measure AC style voltages in the 10 - 400 Hz range. How can I calibrate it, at least roughly? My only thought was to build a sine wave oscillator to produce 100 Hz @ 1 V RMS. That way I can confirm the amplitude with my multimeter, feed it though line in to the software and then adjust for the reading.

Is this likely to work, or is there some other way of calibrating PC based soft oscilloscopes?

EDIT:

Following some comments, I tested my multi meter against a range of sine wave frequencies. These were line outs generated via Audacity software, with the TONE command set to a volume of 0.8. The red dot is @ 50Hz, so this should be ideal for the meter and forms a baseline voltage reading. The response seems reasonable over 10Hz - 10KHz. Even better across 50Hz - 1KHz.

• That may be tricky without an actual oscilloscope for comparison. You'll probably see some rolloff at low frequency due to DC blocking capacitors, so try calibrating at a higher one, more 400 Hz than 100 Hz. It may make as much sense to do something like setup a CMOS oscillator that should drive pretty much rail to rail, and assume that rather than trying to measure it with your meter. Consider if calibration is really worhwhile - typically the most valuable lessons a scope offers are in timing, not absolute voltage. Mar 27 '16 at 1:04
• @ChrisStratton If you're suggesting that a scope is best for timing and not absolute voltage, how do I measure noise levels? I'm interested in measuring white noise levels which are tricky for RMS based multi meters. Aug 2 '16 at 11:03

The only way to truly calibrate an oscilloscope is with a calibrated function generator. A quick internet search will demonstrate that these things are usually not cheep, of course.

...but you don't need perfect, just "reasonable"...

The best way to do this, then, is to:

1. Build a variable frequency square-wave generator (CMOS 555 FTW)
2. Use your DMM to measure the output peak voltage with freq set to ~DC.
3. Bump the frequency to ~1k and adjust the scope.

Provided the square-wave gen's impedance is fairly consistent over all frequencies used, the peak voltage that appears on the scope should reflect the DC voltage fairly accurately. Knowing this we know that it's just a matter of getting the scope to agree with the DMM.

If you want more confidence, repeat the process with your gen powered from more voltages, then just compare the scope output to what you expected.

Lastly, I would not rely on the AC function of any DMM to be useful for something like this. Those things are usually specified for specifically 50 or 60Hz, and will read inaccurate for other frequencies. And, in case you're thinking you've got a workaround for that, you should know that your sound card will (read: should) take to 50-60Hz like an NSA vending machine to a crinkled Won.

• Really? Even though my DMM is a Maplin M-5010EC and the little manual says the AC input frequency range is 45 Hz - 500 Hz, I shouldn't rely on it? Mar 27 '16 at 17:28
• @Paul - I have a Fluke 16 (\$150+ DMM) with "True RMS" feature, and it has never measured correct for anything other than 60Hz. And even then, it's not especially accurate. So I could be biased. That being said, maybe a peak-to-peak type meter will work better at wider ranges AND be more accurate. Who's to say. Converting a known DC voltage to AC in a non disturbing way is still the better method IMHO. Mar 27 '16 at 21:25
• I did some testing with my meter - see edit... Aug 2 '16 at 11:03