Sunday, May 13, 2018

Measuring Behringer UCA202

I decided to exercise my measurement rig by measuring Behringer UCA202 music interface and comparing the results with the ones NwAvGuy published long time ago. He was using Prism dScope, and it was interesting to me how close could I get to repeating his results on my equipment.

What Is UCA202

UCA202 is quite an old and basic music interface, it's digital section is built using BurrBrown/TI PCM2902 chip which is only capable of 16-bit 48 kHz resolution. The good thing about UCA202 is that it costs less than $30, and is USB Audio Class 1.1 compatible, so it works with any modern operating system without drivers.

Behringer produces these interfaces in large batches, so I was assuming they have a good level of quality control and thus little variance between the characteristics of each device. Which again is a good thing when you are trying to compare your measurements with results from 2012.

But before diving into UCA202 measurements let's digress for one technical observation.

MOTU Microbook IIc Microphone Input

From my previous examinations of Microbook, we have seen that it has a quite uneven noise floor on its line input:

I decided to try other inputs: the microphone input and the instrument input. Their main difference from the line input is that they have higher sensitivity and are equipped with an amplifier. The instrument input was no better than the line input, but the microphone input has turned out to have lower noise floor:

As we can be see the microphone input (cyan plot) has less noise at low frequencies and does not exhibit the peak between 2 and 3 kHz. Its noise level is below -102 dBFS, and reaches -103 dBFS when "pad" (input signal attenuation by 20 dB) is activated.

Then I tried connecting Millet Soundcard Interface (SCI) to the microphone input instead of the line input. Here I found that without padding, SCI's output signal level is too high for the microphone input, but with padding activated it becomes a bit low, so I turned up input amplification in CueMix FX (MOTU's control panel). One advantage of this approach is that I could make a 0 dBFS test signal to reach almost 0 dBFS on the input after passing through SCI. And this did improve measured THD+N and IMD levels, despite the fact that due to amplification the overall noise level has also raised up.

For illustration, here is 0 dBFS 1 kHz signal played from MOTU's line output via SCI back to MOTU's microphone input, padded and attenuated:

The cyan plot is microphone input's noise floor that we have seen before.

This is how distortion figures compare with my previous measurements connecting SCI to MOTU's line input:

                                     Line      Mic
                        THD  1 kHz: 0.00067% 0.00064%
          THD+N (20Hz-48kHz) 1 kHz: 0.0087%  0.0075%
                         THD 20 Hz: 0.0048%  0.0041%
          THD+N (20Hz-48kHz) 20 Hz: 0.010%   0.0090%
                        THD 20 kHz: 0.025%   0.0027%
         THD+N (20Hz-48kHz) 20 kHz: 0.026%   0.0067%
                  IMD CCIF -3 dBFS: 0.016%   0.0034%
                 IMD SMTPE -3 dBFS: 0.0036%  0.0038%

So the microphone input provides the best characteristics you can possibly get from the Microbook / SCI pair. Also it is better isolated from the line output. I have noticed that high frequency tones played over line output can interfere with line input (one possible explanation why there were some issues with measuring IMD CCIF via line input.)

UCA202 Line Out


Now back to UCA202. Here is how my test setup looked like:

Everything was running on battery power, and there were no loops besides the audio signal loop. Note that UCA202 was running at 44.1 kHz sampling rate to match NwAvGuy's measurements.

One good point of using SCI even for line level measurements is that it has the input impedance of 100 kOhm, the same as of dScope. As we can see from the photo on the NwAvGuy's post, the line outs of UCA202 were connected directly into dScope's inputs, so it was acting as a load by itself.

One thing I have noticed from NwAvGuy's measurements is that dScope allows specifying both lower and upper range for THD+N measurements, so on his picture we can see that the FFT was showing frequencies up to 96 kHz, but from the text we see that "The distortion measurements include all frequencies up to 22 Khz."

My attempt to repeat the measurement in the same way has revealed a shortcoming of ARTA—it only allows to specify the lower bound for THD+N measurements, while the upper bound is always half of the sampling rate. So, in order to check the ultrasonic noise bump from noise shaping I had to run the measurement at 96 kHz sampling rate, but for the THD+N measurement I had to switch to 48 kHz sampling rate. So here is the measurement showing the noise shaping bump:

Please, don't compare the THD(+N) figures here with the result from NwAvGuy. Here is the measurement at 48 kHz sampling rate:

Now we can compare the figures:

                               dScope           MOTU/SCI
                    THD 1 kHz: 0.0079%            0.01%
     THD+N (20Hz-22kHz) 1 kHz: 0.0089% (+0.001%)  0.012% (+0.002%)

So the measurements are in the same ball park, but the figures obtained with dScope are lower by 0.002–0.003% (that's 2–2.6 dB difference.)


NwAvGuy reports "excellent IMD result, run at –2 dBFS ... IMD of 0.0009%." From the graph screenshot, he was using two tones: 60 Hz and 7 kHz with amplitude ratio 4:1 (SMPTE standard).
First I have tried this test with MOTU loopback through SCI:

Even here IMD is 0.0033% which is ~3.5 times higher than he measured with UCA202. So I wasn't expecting any good result when measuring myself. Indeed, the number is quite bad:

It's 0.019% (21 times bigger). However, the patterns of 60 Hz products and 7 kHz sidebands look similar to NwAvGuy's picture.

The inconsistency with NwAvGuy's figures may be due to the fact that ARTA uses DIN standard for IMD calculation. Although the manual says that "This intermodulation factor is very close to the value of intermodulation distortion that can be measured by SMPTE analog instrumentation." but I'm not sure what their definition of "very close" is.

UCA202 Headphone Out

I used 330 Ohm resistive load for UCA202's headphone output (NwAvGuy was using 150 Ohm), which in theory should result in even less distortions.

Note that there are two ways to exercise the headphone output on UCA202: the first is to emit stimulus signal via its USB DAC, and the second is to turn on "Monitor" switch on UCA202 and connect an external generator to its line inputs. I don't know for sure if the signal passes through the digital section in this case, or the line input connects to the headphone output in the analog domain only (from my measurements, I suppose it's the latter.)

In fact, NwAvGuy hadn't specify which way was he using for measuring the headphone output. I was providing stimuli via the USB DAC most of the time, and only used the "Monitor" option when obtaining the frequency response, as in this case I could "subtract" the transfer functions of MOTU/SCI from the measurements.


I have set the headphone volume level on UCA202 to output 400 mV (same as NwAvGuy), and measured THD using 48 kHz sampling rate on MOTU:

So we have 0.0074% THD compared to 0.0070% measured by NwAvGuy. That's very close!

Maximum Output

Here my experience was a bit different. NwAvGuy tells that at the maximum volume his UCA202 was producing 660 mV into a 150 Ohm load, and had 0.97% THD. Again, this is when playing a 0 dBFS 1 kHz sine wave. Whereas my UCA202 at the maximum volume was producing about 1 V RMS into 330 Ohm load, albeit with enormous distortion. And 1% THD distortion level was achieved at 782 mV into 330 Ohm load.

So maybe Behringer have beefed up the headphone output on later revisions of UCA202? Looks so. I couldn't resist opening up the unit, and found that instead of 4558 opamp that was used in NwAvGuy's unit, my unit uses 4556A. So it's definitely possible that the opamp gain was also tweaked to accommodate high impedance headphones better.

Channel Separation

Here ARTA isn't very helpful—it doesn't provide a dedicated measurement mode. But I could use frequency response (FR) measurement mode, play the test signal into one channel and capture another channel to see how much of the test signal did leak in—this is exactly what the channel separation test is about, right? I attempted to do this and found that ARTA always uses both channels for output, so this approach didn't work out.

As a workaround, I have saved the test signal (periodic pink noise) into a file, one channel only. Then I started playing this file via UCA202, and analyzing the input in ARTA. This is somewhat worked but the FR at high frequencies was looking very noisy.

So, I installed good old Room Eq Wizard (REW) and measured the FR using it. I had to connect both UCA202 and Microbook to the same laptop, so I plugged UCA202 through an USB galvanic isolator.

Doing this measurement with REW was much easier as it allows specifying which channels to use for playback and capture. The resulting graph was also noisy at high frequencies, but REW is good at smoothing. And after "calibrating" the graphs—offsetting them so the direct channel FR goes at 0 dBFS, I've got a graph which looks very much like NwAvGuy's:

My output was into a 330 Ohm load, but it didn't affect the results too much. Also note that on my graph the separation at high frequencies is closer to -60 dBFS than on NwAvGuy's. But I still consider the results to be pretty close to expected.


This measurement wasn't very conclusive. First I've measured jitter using ARTA on MOTU loopback to establish a baseline (SCI being a fully analog device shouldn't affect jitter at all.) The picture was looking very clean—I guess, all MOTU's jitter got lost in the noise level. Even with averaging I couldn't see any sidebands emerging.

Then I switched to UCA202. Note that I was still hosting it on the same measurement laptop (through USB isolator), so I had to run it at the same sampling rate as MOTU—48 kHz. This is yet another limitation of ARTA—it can't use different sampling rates for input and output devices. As NwAvGuy, I was using the headphone output on UCA202 with RMS level of 400 mV. Here I could see some jitter:

So there are sidebands of about 300 Hz. The absolute levels don't match what NwAvGuy's graph shows, but on the other hand, there is less low frequency "spread."

And note yet another limitation of ARTA—there is only one marker available, so I had to add the labels for sidebars in a graphics editor.

Output Impedance

Measuring output impedance was easy—I didn't even need ARTA for that. I simply used my Agilent DMM to capture open circuit voltage when outputting 1 kHz tone at the same volume level as needed to achieve 400 mV into 330 Ohm. Then I used this value with this online calculator in order to get the result:

And the result—48 Ohm agrees both with NwAvGuy's measurement and Behringer specs.

Frequency Response

Here is a problem: neither MOTU nor SCI do not provide a perfectly flat frequency response by themselves. When measuring line level equipment which can be connected to MOTU's line input directly it's not a problem—the dual channel FR measurement mode in ARTA and STEPS can take care of removing MOTU's transfer function from the measurement.

But I had to test the headphone amplifier of UCA202 which needs to be connected via SCI. For that, I have fired up REW once again. First I have measured the frequency response of MOTU/SCI loopback. Then I connected MOTU's line out to UCA202 line in and enabled "Monitor" mode to send the signal directly to the headphone out of UCA202. After measuring both left and right channels, I used "Trace Arithmetic" in REW in order to remove MOTU/SCI loopback response from the measurement to leave only UCA202's own response. This is what I've got:

It doesn't look like NwAvGuy's graph at all. Here I have realized that NwAvGuy must have been sending the stimulus signal via UCA202's USB DAC, rather than using "Monitor" mode. I did this, and got something looking more similar:

A couple of caveats here:

  • I had to use 48 kHz sampling rate because MOTU doesn't support 44.1 kHz which UCA202 was using in NwAvGuy's test, and REW needs both input and output devices to use the same sampling rate.
  • Apparently, graphs are over-compensated at low frequencies because now the signal only goes through the input path of MOTU but the loopback measurements includes both input and output paths.
I have channel level difference at 20 kHz of 0.28 dB in "Monitor" mode, and 0.55 dB from UCA202 USB. NwAvGuy's result was "0.25 dB." I'm not so surprised with a different result here because as we have found out, the headphone section on my unit uses a bit different hardware compared to what he had.

So for FR, it's easy to obtain good measurements for analog power or line level equipment, but not so for digital sources.


What measurements done using MOTU/SCI rig I can trust:
  • Frequency response for analog power and line level equipment.
  • THD and THD+N, if taken at a proper sampling rate for limiting the upper range. Although, they will likely be slightly higher than actual.
  • Channel separation.
  • Output impedance.
What measurements I can not trust:
  • Frequency response for digital equipment.
  • IMD—will likely be much higher than actual.
  • Jitter—the absolute values can't be trusted but still can be used for comparisons or detecting gross issues.
Shortcomings of ARTA:
  • Unable to specify the upper range for THD(+N) measurements.
  • No channel separation measurement mode.
  • Always emits the stimulus signal into both channels of the output device.
  • Both input and output device have to run at the same sample rate.
  • Single marker in FFT windows.
Shortcomings of Microbook/SCI rig:
  • No support for 44.1 kHz sampling rate.
  • High noise floor.
  • Not perfectly flat own FR, need to compensate for that.
  • Only one channel on SCI so it's impossible to use dual channel FR measurement.
So the capabilities of my rig are good enough for exploratory testing and comparisons, but not so good for doing "absolute" measurements. However, for its price that's a good enough result.

Friday, May 4, 2018

More Measurements of MOTU Microbook and Millet's Soundcard Interface

I've got some progress playing with ARTA and harnessing Windows:
  1. Figured out how to operate the Microbook on Windows at 96 kHz sampling rate—just use ASIO drivers instead of WDM. I guess, that's actually MOTU's fault—their WDM driver only allows selecting 96 kHz mode for playback, but not for recording.
  2. Learned about averaging option in ARTA when doing spectrum analysis measurements—it helps to "thin out" plotting of the noise level. On the graphs from the previous post the noise level was depicted rather thick making it harder to get the figure in dB.
  3. Learned about "two channel mode" for frequency response measurements. In this mode one channel is used as a "reference", and this allows "subtracting" the transfer function of the sound card while measuring the frequency response of the device under test through the second channel of the card.
  4. And the frequency response can be measured even better with STEPS—another program from the ARTA package that uses modulated sine signals instead of periodic noise (although, this measurement takes substantially more time.)
I tried following the measurement procedures of NwAvGuy in his posts about audio interfaces and headphone amplifiers. He used Prism dScope, and it's interesting to compare its capabilities with the ones of my hobbyist tools.

MOTU Microbook IIc Loopback

Once again, I retested the loopback between Microbook's unbalanced line output and balanced line in. I used this combination because the devices that I plan to test have unbalanced (RCA) inputs, hence unbalanced line out needs to be used. While Millet's Soundcard Interface has balanced connections to the sound card. So the output needs to be unbalanced, and the input balanced.

Another reason is that the balanced line input has more headroom, and it's impossible to overload it while driving from the unbalanced out.


I started with THD. It can be measured with ARTA and STEPS. With ARTA, it's only possible to test one frequency at a time. Here are measurements at 0 dBFS for 20 Hz, 1 kHz, and 20 kHz. All the measurements were done with 96 kHz sampling rate:

As I mentioned above, I started using averaging as it thins down the noise plot, so we can see the noise floor more clearly.

The balanced input has 10 dB of headroom, so any distortion products that we see are likely caused by the line output. It's also interesting that all graphs show a small noise bump between 2 and 3 kHz.

This is full noise profile obtained with STEPS. There I had to limit the test signal to -3 dBFS because otherwise it was overloading the output:

This agrees with the results from ARTA—the level of distortions is lowest at the midrange, slightly higher at bass frequencies, and raises steadily at high frequencies.


For measuring noise I used NwAvGuys technique of playing a very low level test signal—1 kHz at -115 dBFS:

Starting from 400 Hz the level of noise is mostly below -140 dBFS. The strange peak between 2 and 3 kHz can be seen again.


I used both CCIF and SMTPE methods, as ARTA provides both. CCIF at 0 dBFS was giving a lot of distortions which were gone at -1 dBFS, but I decided to stay at -3 dBFS for consistency with other measurements:

SMTPE IMD at 0 dBFS (not shown) is also a bit worse than at -3 dBFS but not so radically as with CCIF test signal.

Frequency Response

ARTA and STEPS show a bit different curves:

As we can see, STEPS curve has less steeper rolloff at high frequencies. The STEPS manual says that FR measurements done with its method are more precise than the measurements using periodic noise. If we zoom in the STEPS curve we can see a small bump of the antialiasing filter, but it's smaller than at 48 kHz sampling rate—it wasn't even visible on the previous graph:

To me, the FR measured by STEPS is more realistic. It also looks similar to what John Reekie published in HiFiZine.

What I Did Not Measure

NwAvGuy also provided measurments for inter-channel crosstalk and DAC jitter. ARTA doesn't provide a measurement mode for the former, so I've attempted to measure crosstalk by cris-crossing the output lines. This way any inter-channel leaking of the test signal would show up on the measured channel. But the results are very different between ARTA and STEPS so I decided to study more about how to perform it correctly.

As for jitter, ARTA does measure it, but I'm not sure how to measure jitter for 96 kHz sampling rate. Usually jitter is measured with a sine signal of 1/4th of the sampling rate. But for 96 kHz this would be 24 kHz, and as as we have seen from THD measurements Microbook has somewhat high distortion at high frequencies. So I will also read more about how to perform this measurement correctly.

I also did not attempt doing time domain measurements, e.g. the square wave test. Will try next time.

P. Millet's Soundcard Interface

And now some re-measurements of my Soundcard Interface (SCI), this time made at 96 kHz sampling rate and with both ARTA and STEPS, so they are directly comparable to the MOTU loopback measurements.

For the measurements, the left channel of MOTU's unbalanced line output was connected to the SCI's BNC input, grounded. The SCI input sensitivity was set to 2V setting. SCI was powered from an USB power bank to avoid creating a ground loop.


Same method as was used for MOTU loopback:

As we can see from the RMS figures, SCI attenuates the signal by almost 6 dB. It could be the reason why the bump between 2 and 3 kHz originally seen on MOTU loopback measurements is almost gone. If so, then it must be an artifact of MOTU's line in.

Here is a full THD profile obtained with STEPS:

The differences THD between MOTU loopback and SCI are quite small (which is good!), see the summary table at the end of the post.


I also measured noise by sending 1 kHz test signal at -115 dBFS:

Although, I forgot to zoom the graph in before taking the hard copy. But even at this scale, it can be seen that comparing to MOTU loopback, it is higher by about 5 dB starting from 200 Hz. Overall, the profile is quite even, and there are no problems at 60 Hz.


The signal level was at -3 dBFS to avoid any distortions from the MOTU's out:

Frequency Response

I used both ARTA and STEPS in two channel mode. The reference channel was a direct loopback from MOTU's line out to in, thus the obtained frequency response is not affected by MOTU's not so ideal characteristics. ARTA and STEPS have produced quite similar curve for SCI's FR, so here is the one from STEPS as it is less fuzzy:

Measurements Summary

So let's compare the numbers from MOTU loopback and SCI measurements:

Frequency Response 20 Hz to 20 kHz: +/- 0.98 dB   +/- 0.06 dB
                         THD 1 kHz:     0.00058%      0.00067%
                         THD 20 Hz:     0.0015%       0.0048%
                        THD 20 kHz:     0.035%        0.025%
                  IMD CCIF -3 dBFS:     0.022%        0.016%
                 IMD SMTPE -3 dBFS:     0.0048%       0.0036%
   Noise (unweighted) at 96 kHz SR:  -101.3 dBFS    -96.5 dBFS

As we can see, the main drawback of SCI is the increase of the noise floor by about 5 dB. Note that the high noise figures are mostly due to the low frequency range. Above 200 Hz both MOTU and SCI are quite good. Although, specialized measurement frontends like affordable Quant Asylum QA401 have much more even noise floor across the entire measurement range.

Monday, April 23, 2018

Making friends with Windows and ARTA

New Laptop

The Macbook Air I was previously using for my personal projects is now retired. I have brought it to the office for playing music from local files and streaming services through equalization and crossfeed plugins. That's an interesting topic on its own, and I will do a post about it some time later.

I decided that my new laptop needs to run Windows, because it seems to be the operating system of choice for audio engineers. Indeed, on Mac I had to use FuzzMeasure and REW which are designed primarily for acoustical measurements. Whereas for PCs there are plenty of software packages for electrical audio measurements that work with regular sound cards. Potentially, one can run them on Mac via emulation, but my attempts of trying that usually resulted in crashes and hangs.

While looking for Windows laptop I faced the harsh truth—Macbooks are such a good laptops that finding a matching Windows machine is a challenge. The usual weak point is quality of screens and touchpads. After considering several cheaper laptop models I decided to bite the bullet and buy Lenovo X1 Carbon, 5th generation. I have a 4th generation Carbon as company-provided Linux laptop, and I almost enjoy it for its small weight and durability. "Almost" due to the touchpad—it's not very good. In fact, I prefer to use the "red dot" joystick controller instead.

In comparison with the 4th generation, its successor adds a high resolution screen, USB-C ports, and newer Intel chipsets. The touchpad is also a bit better. And the laptops are now available in silver body color in addition to the classic black.

Here it is. It is even lighter than Macbook Air, and the screen is better—the bezels are very thin, and the resolution is impressive 2550 x 1440 on a 14" diagonal (the 27" monitors I have at my office use the same resolution). The IPS matrix provides very wide viewing angles. 5th gen Carbon even beats Apple laptops in connectivity as it has both USB-A and USB-C type ports, and HDMI.

From the hardware design point of view the only annoying thing is the absence of a notch on the lower part of the body, which makes it hard to open the laptop's lid using one hand only—the habit I earned over the years of using MB Air. In fact, opening the lid even using two hands is not that comfortable because the the material that the body is made of is a bit slippery.

But the most annoying feature in the new laptop is the operating system. Carbon comes with Windows 7 Pro preinstalled and I decided not to upgrade it to Windows 10 yet because I was hoping that I could use my old E-MU cards: Tracker Pre and 0404 (they are not fully USB Audio compatible, and Creative Labs eventually has stopped releasing new drivers for them.) Windows 7 feels complicated and cumbersome even compared to modern Linux graphical desktops, let alone Macs.

Speaking of E-MU drivers, Creative Labs has abandoned them in beta status for Windows 7 64-bit, and it really shows itself. I can configure the cards, but when trying to use audio analyzer apps the system hangs.

Windows Audio Analyzers

I tried ARTA, AudioTester, and the package from Virtins. AudioTester looks a bit outdated, and it wasn't stable enough. The MultiInstrument package from Virtins seems to be designed more like an oscilloscope replacement. ARTA appeared as the best choice—it was easy enough to figure out how to make the measurements I needed even without the manual, and when I looked into the manual I was pleasantly astonished that descriptions of all measurements are accompanied with the underlying DSP theory.

The only thing I haven't yet figured out completely (and it seems more like a problem with Windows 7 rather than with ARTA) is how to use my MOTU Microbook IIc with 96 kHz sampling rate. So by far, I was making all my measurements in 48 kHz mode.

Some Measurements

MOTU Line Out to Line In Loopback

I started with a simple loopback from MOTU's unbalanced Line Out to its balanced Line In. I used unbalanced out because this is the out I can use throughout the entire experiment (not all amplifiers have a balanced line in.) I shorted the balanced cold input (ring on TRS) to the ground—this was resulting in less noise than leaving it floating. The laptop was running on battery. This is how THD, IMD, and Frequency response (FR) graphs of the loopback connection look like:

This is what I was expecting. The FR has slight bass rolloff and a small bump from the antialiasing filter—the same thing I observed on Mac with FuzzMeasure. The levels of noise and distortions are very low which confirms that this MOTU card is a good choice for hobbyist measurements. The 2nd and 3rd harmonics can be seen on the THD graph, but their level is very low.

Soundcard Interface Loopback

Now these are measurements of a loopback through P. Millet's Soundcard Interface (SCI). I have connected MOTU's unbalanced line out to SCI's input, ground referenced. SCI's input range was set to 2V. I powered SCI from the second USB-A port of my laptop. Potentially, this could introduce a ground loop noise, but it didn't—the ground loop noise usually looks like a spike at 60 Hz as we will see later.

Here the overall noise floor has raised by about 10 dB, but it's interesting that the 2nd and 3rd harmonics have disappeared. Since the input level is the same, perhaps they were resulting from a slight overloading of MOTU's Line Out. The frequency response didn't change compared to MOTU loopback.

From these measurements I can conclude that Mr. Millet has created a highly transparent device. Hopefully, my extensive efforts on making a properly shielded and grounded case have also helped.

The next thing I have tried was using different power sources for the SCI: a USB power bank, the USB-C ports of laptop, and a multi-voltage switching power supply. The power bank is as clean as USB-A, and for the last two sources the results are below:

As we can see, the USB-C port indeed creates a ground loop (note the spike at 60 Hz and its harmonics), and the wall power supply is the worst.

SPL Phonitor Mini

Next step—try SPL Phonitor Mini. I have connected MOTU's unbalanced Line Out to Phonitor's unbalanced inputs, then connected the dummy headphone load I've made a long time ago to Phonitor's output via my T-Cable. Then using a BNC to banana males I have connected needle multimeter probes to the T-Cable's outlet. This way I have created a parallel connection for the Soundcard Interface to the dummy load.

I have set the dummy load to 33 Ohms, and turned up Phonitor's volume until the reading on the SCI was showing 1 V. The signal level in ARTA for the 1 kHz sine was showing the same RMS value as in my previous experiment. So now we can directly compare to SCI's loopback.

The level of noise remains the same—I think, Phonitor's noise level is lower than SCI's. There are more harmonics seen, this is expected for a power amplifier, so the overall THD numbers have raised. The frequency response didn't change compared to original MOTU Loopback measurement which means Phonitor has a flat response.

MOTU's Headphone Output

Now if we want to distinguish between a good and a bad headphone amplifier, let's measure the headphone output on the MOTU Microbook. Here we see much more distortions. Also, even on the maximum volume, MOTU's headphone output could only deliver 0.65 V into the same 33 Ohms load, whereas Phonitor while delivering 1 V wasn't even at the middle of its volume knob range.

So here we can see a rolloff of high frequencies and more distortions. Also, for some reason there is some noise at 60 Hz, with harmonics, although SCI was powered from a power bank, so there was no loop connection through laptop's USB ports, and the laptop was on battery power.


I don't regret I've switched to a Windows laptop from a Macbook because indeed there are far more audio engineering applications. I have only done very simple tests so far, and I'm excited about the possibilities this setup had opened.

Monday, April 9, 2018

Peter Millet's Soundcard Interface, Part 2

Lots of things happened while assembling my Millet's Soundcard Interface. First, I discovered that the voltage mode switch can be restricted to the required 4 positions by inserting small metal bits that came with it into the holes around the shaft. This is where they need to go:

If you misplace the bit, use a magnet to pull it out. After inserting the bits, cover the front side of the switch with the metallic sticker that came with it.

While finding the right places for the bits I was turning the unit on and off frequently and managed to break the power switch. I had to solder the switch out—tough task, as it has 8 pins in total, and then solder back a replacement. Fortunately, the board continued to work as before.

By this time, Mumetal sheets have arrived and I started covering the inside of the box with them. As a reminder, Mumetal is an alloy that offers shielding from magnetic fields. There was one problem—there are round mounting studs on the inside of the box so I had to make holes in Mumetal. Doing that with a drill has turned out to be impossible—the metal is very thin, and the drill was just tearing it.

I've found that the diameter of the mounting studs is the same as in a standard paper puncher. However, the holes had to be done very far from the edges. So I had to cut the Mumetal sheet into smaller pieces:

This, of course had made the coverage to be non-continuous. In order to restore it, I glued strips of Mumetal over the stitches, and then made solder connections between the strips and the sheets under them (I used an old style lead solder for that.)

This way, I've got a solid shield with close to zero resistance which made an excellent chassis ground. One thing that was left to do is to connect the board's signal ground to it. As a connection point, I've chosen one of the outbound ground legs of the Murata DC/DC converter—so the connection is as close to the power input as possible. It is also convenient that the converter is on the edge of the board, so I could use a very short wire between the it and the side wall of the box:

I've checked that there is indeed a low resistance path between the balanced input ground pins and the Mumetal walls. Note that all this shielding didn't help to bring down the "zero level" of the device as I was hoping.

Sunday, March 25, 2018

Peter Millet's Soundcard Interface

From excellent series of articles by Stuart Yaniger "Practical Test & Measurement" I've learned about Peter Millet's Soundcard Interface device. In short, this is an analog adapter for transforming voltages in the range from 20 millivolts to 200 volts into the range accepted by soundcard's line input—about 1 volt. The device also offers protection for the soundcard inputs from accidental high voltages.

The application of this device is for testing audio amplifiers. Below is a general connection scheme:

The amplifier under test is connected to a load. The load can be either real speaker or a dummy load—a resistor, for example. The soundcard interface is connected in parallel to the load. Since the interface's input impedance is about 100 kOhms, it draws only little current by itself (for a comparison, typical oscilloscope input has 1 MOhm impedance.) The output from the soundcard interface goes into a soundcard, which is connected to a PC (or Mac) running measurement software.

The input to the amplifier is provided directly from the soundcard's line output. Though if it's a mobile phone with an analog output or a portable audio player, the test signal can be played from the device itself.

The Good

What is so good about the Mr. Millet's device? First, you must build it yourself, which is fun. Second, it's cheap compared to "pro" measurement frontends. Let's see:
I've spent $265 (shipping excluded) on the parts for the Soundcard Interface. If you are in electronics DIY hobby seriously, you may have some parts already or buy them in larger quantities, which will take the price even lower. Sure, the Millet's device plus a soundcard may not deliver the same precision of measurements as those frontends, but for home projects it's enough.

The third good thing about this interface is that it doesn't require any specialized software. All the "pro" interfaces mentioned above come with dedicated software which you may or may not find easy to use. But for soundcard measurements, there are lots of audio analyzer software tools, some of them are even available for free. So it's possible to compare and choose what better suits your needs.

Speaking about alternatives, I must also mention recently emerged Jan Didden's L|A Autoranger which from its description seems to be similar to the Millet's interface, and has a comparable price. One great thing about the autoranger is that it automatically adjusts itself to the input signal level, like "pro" measurement interfaces do. Sounds interesting, I will perhaps try it some time later.

The Bad

So far, I have only soldered up the device and calibrated its zero and full scale levels.

One really important issue that must be addressed is the level of noise produced by the device itself. While having the PCB lying open on my table, I couldn't get the "zero" level lower than 0.9 mV (P. Millet is saying that "zero" on his unit is 0.3 mV.)

Folks from the diyAudio forum report that putting the board into a shielded enclosure helps to reduce the noise. Since the enclosure suggested by Mr. Millet is made of plastic, I've ordered a couple of MuMetal Ultraperm Permalloy sheets to cover the box from inside. In fact, this is the same approach that E-MU was using for their line of audio interfaces, e.g. 0202 and 0404. Their bodies are made of plastic, but on the inside of the boxes there is isolating coating. Hopefully, this will help.

What's Next

After I finish with shielding the enclosure and assembling the device I will start measuring the parameters of the device itself, and will try it on some headphone amplifiers.

Tuesday, February 27, 2018

JDS Labs Subjective3, Part 2

As I was unhappy with the imprecision of "Mid" tone control on Subjective3, I decided to get rid of it—I don't see a point in having it anyway. So I opened my unit, and desoldered VR2 pot away. After that I've re-measured the frequency response and channel balance, and it got more even:

The inter-channel difference is ~0.3 dB, which isn't superb, and I'm thinking how could this be fixed.

I've also measured the pot I desoldered, and indeed it's not very well balanced. At the middle (notched) position it shows:

  • for the left channel: 23.5 kOhm one side, 24.8 kOhm the other side;
  • for the right channel: 24.98 kOhm one side, 23.94 kOhm the other side.
So if you are soldering Subjective3 yourself, think twice if it's really needed to put the "Mid" tone control in. At least, measure it first to check how well its channels are balanced.

Another thing that was puzzling me since I saw the partial schematics of Subjective3 here is whether it preserves absolute phase. Clearly, the schematics shows that the filter network is attached to the inverting input of the opamp. And I've actually checked whether the polarity is preserved by listening to in-phase stereo pink noise, where left channel was going through Subjective3, and right channel was connected directly, and there is no inversion.

Then I've found an explanation of this fact by examining the board and finding another stereo opamp there, near the output connectors. So apparently, it is used to restore the polarity.

And yet another thing I've figured out by disassembling my unit is that ready-made units soldered by JDS Labs employ DC source coupling. As it can be seen, C2_L and C2_R capacitors are left out, and their mounting holes are short-circuited. This may be a bit risky if the signal source is not of a good quality.