Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testing noise levels #131

Open
wtnh opened this issue Aug 3, 2020 · 44 comments
Open

Testing noise levels #131

wtnh opened this issue Aug 3, 2020 · 44 comments

Comments

@wtnh
Copy link

wtnh commented Aug 3, 2020

Hi - I was excited to see this driver, so I dusted off my old 0404 and tried the install on Catalina on a Macbook Pro "late 2013".

Followed directions, except I could not see how to do the step which says "give full access to the driver installer". (I did give full disk access to terminal). This could be my issue, but not sure how to do that because the driver installer does not show up.

The 0404 shows up in USB devices but the driver is listed as the original EMU driver, which does not seem right.
`E-MU 0404 | USB:

Product ID: 0x3f04
Vendor ID: 0x041e (Creative Labs)
Version: 1.00
Serial Number: E-MU-0A-3F04-07D7081D-08926-STATION01
Speed: Up to 480 Mb/s
Manufacturer: E-MU Systems, Inc.
Location ID: 0x14100000 / 10
Current Available (mA): 500
Current Required (mA): 2
Extra Operating Current (mA): 0`

I re-ran the installer and had to answer "y" to a bunch of access questions this time (see attached script output).

EMU driver install log.txt

Also the control panel is blank as mentioned in some other issues.
[EDIT] I was able to open the control panel via terminal and it looks normal - maybe it is working after all - I'll test it.[/EDIT]

Any hints appreciated! Thanks!

@Wouter1
Copy link
Owner

Wouter1 commented Aug 3, 2020

@wtnh if the control panel shows the EMU info like sample speed etc, it's properly installed.

The log file you attached shows that the EMU does not install because /System/Library/Extensions is read-only.

This might be because you either did not do the csrutil or did not give full disk access to the terminal and driver installer.

I think you can drag the installer program into the browser window after you click on the "+"

@wtnh
Copy link
Author

wtnh commented Aug 3, 2020

OK - I think it is working. I just did a listening test and the EMU functions fine for sound output. I am now testing the input using REW, an audio analysis program that I want to use for audio amp testing.

When I re-ran the installer, I answered "y" to each of the access override permissions.

What confused me is that in your instructions, it says to give disk access to the installer, but I had not downloaded it yet (that comes later in the instructions), so it was not visible in the list of apps to which I could give access.

So is it OK that in the list of USB devices that it shows up as the original EMU V1 driver, even though your driver is active?

Wouter1 added a commit that referenced this issue Aug 4, 2020
#131 allowing full disk access before download was confusing
@Wouter1
Copy link
Owner

Wouter1 commented Aug 4, 2020

@wtnh ok I fixed the install instructions to first download and unzip to fix that confusion.
Good to hear it works now!

So is it OK that in the list of USB devices that it shows up as the original EMU V1 driver, even though your driver is active?

I can't change the USB Devices info, it's hardware

What matters is the EMUUSBAudio info in the About This Mac/System Report/Extensions. It should show the latest version (4.1.0 at this time)

@wtnh
Copy link
Author

wtnh commented Aug 4, 2020

Thanks for that - it does indeed show correctly in the Extensions report as 4.1.0. So everything is working despite my roundabout installation process (with the exception of the control panel needing to be started from terminal).

As an aside, I am experimenting with the REW application, with the goal of using the EMU as a distortion measuring tool. Attached is a screenshot showing the FFT performance of the EMU looped back on itself. Not too shabby for a 13-year-old interface I paid $150 for back then. So glad I was able to dust it off thanks to your great driver!

emu2

@Wouter1
Copy link
Owner

Wouter1 commented Aug 4, 2020

@wtnh Yes it's a known workaround for the control panel. I don't know any other way to fix it

Almost 120dB -15dB = 105dB range, yes looks good.

Very little at 50/60Hz, are you using something to suppress net hum etc?

@wtnh
Copy link
Author

wtnh commented Aug 4, 2020

Nothing special to suppress hum. I did try it with the Macbook on battery power only but saw no difference. I am on 60Hz power. The hump around 100Hz is interesting - that could actually be 120Hz (2x line frequency) - I am wondering if the EMU wall wart is contributing some of that. It would be interesting to run the EMU on battery power to see if noise decreases further. Right now I am seeing THD of 0.00016% and noise of 0.0019%, so noise is dominant.

Attached is a better screenshot showing the FFT particulars.

emu3

@wtnh wtnh closed this as completed Aug 4, 2020
@wtnh
Copy link
Author

wtnh commented Aug 4, 2020

Closing this issue - thanks for the help!

@Wouter1
Copy link
Owner

Wouter1 commented Aug 5, 2020

@wtnh thanks for the clarification. Yes I was thinking that you might be running the EMU on battery since I see no 50/60Hz residue. Are you using the original power adapter? Let me know if you find any improvement with running on battery power!

@wtnh
Copy link
Author

wtnh commented Aug 5, 2020 via email

@Wouter1
Copy link
Owner

Wouter1 commented Aug 6, 2020

Yes, a plain battery should be used, no switching PSU as then you get other types of noise.

Nice project. Good luck with that!

@wtnh
Copy link
Author

wtnh commented Sep 14, 2020

Just to follow up on this - I did try a battery pack which eliminated the weird 120 Hz noise caused by the EMU wall wart:
https://www.amazon.com/gp/product/B082NKPPF3/ref=ppx_yo_dt_b_asin_title_o06_s00?ie=UTF8&psc=1
It will run the EMU all day and does not seem to exhibit a lot of switching noise, at least in the audible band.

This is a nice little battery and it has a display showing state of charge.

6185hh9n4lL

@Wouter1
Copy link
Owner

Wouter1 commented Sep 14, 2020

@wtnh thanks for the update!
Can you post the noise spectrum with battery instead of PSU?

BTW I found that it even works on just 4 AA batteries. That may be even better as that will not contain any switching software (which that powerbank probably has)

@wtnh
Copy link
Author

wtnh commented Sep 22, 2020

Sorry for the slow response - here is an FFT spectrum with the EMU running on the above-mentioned battery pack instead of it's wall-wart. Note that the 120 Hz noise (and its harmonics) is gone. Also note that this shows the fundamental at -20db, so it is not exactly the same measurement setup. I have a common mode USB power filter with a choke and some caps, but have not had a chance to try that yet. Presumably, it would lower the noise floor a bit more.

EMU on battery

@Wouter1
Copy link
Owner

Wouter1 commented Sep 22, 2020

@wtnh thanks!
That looks dramatically better than the adapter!

That's also what I hear when using the power adapter versus batteries :-)

Looking forward to your test with your other measurements.

Can you also measure when running straight on batteries (eg 4 AA cells), so that no switching supporession is needed ?

@wtnh
Copy link
Author

wtnh commented Sep 22, 2020

Before I do anymore testing, I want to stop using the phone plug inputs and start using the XLR inputs. The reason is that the phone inputs go through a pair of 5532 non-inverting buffers, while the XLR inputs bypass these completely. Therefore, the XLR inputs should exhibit lower noise and distortion (perhaps not a lot). I do not have any extra XLRs handy so I am ordering some.

Here is a schematic reverse-engineered by a modder a while ago showing the input arrangement. When a phone plug is inserted into the Neutrik jack, a relay switches the buffers into the input circuitry. With no phone plug inserted, the XLRs are connected.

sdiy-left_input (1)

@Wouter1
Copy link
Owner

Wouter1 commented Sep 23, 2020

@wtnh

Nice! So we then can compare and recommend users about XLR versus phone plug , and have detailed schematics too

Do you have a more detailed version of the schematic (the resolution is just too low to read the text)? Is this a SPICE model?

@wtnh
Copy link
Author

wtnh commented Sep 23, 2020 via email

@wtnh
Copy link
Author

wtnh commented Sep 23, 2020 via email

@Wouter1
Copy link
Owner

Wouter1 commented Sep 24, 2020

@wtnh thanks for the additional checking.
Yes you can guess most values. But I wasn't sure about the opamp types

I can't see the pics on that forum, apparently you need an account for that.
Was there any higher resolution version there?

@wtnh
Copy link
Author

wtnh commented Sep 24, 2020 via email

@wtnh
Copy link
Author

wtnh commented Sep 24, 2020

Oops - email did not push the image to Github. Here is the best image I can get from the forum.

sdiy-left_input (2)

@wtnh
Copy link
Author

wtnh commented Sep 24, 2020

BTW - if you are interested in the topology of the opamp stages, you can read more about it in Bill Whitlock's paper. He invented the differential amplifier bootstrapping technique designed into the EMU. It is patented, so I am guessing Creative had to pay something to use the circuit. But it is very clever and greatly increases CMRR and input impedance.
http://www.jhbrandt.net/wp-content/uploads/2014/11/Design_of_High-Performance_Balanced_Audio_Interfaces.pdf

@Wouter1
Copy link
Owner

Wouter1 commented Sep 24, 2020

@wtnh yes that looks interesting, they are putting an offset which is the average of the L&R signals into both opamps' feedback. Strange, thanks for figuring that out and finding that paper! I'll check it out

@wtnh
Copy link
Author

wtnh commented Sep 24, 2020 via email

@Wouter1
Copy link
Owner

Wouter1 commented Sep 24, 2020

@wtnh Ah yes of course, thanks for pointing out. I was mistakenly interpreting the L and R of XLR as being L and R channel. THe name XLR seems just wrong now :-)
I read some of that paper. If I get it right the best way is to have very high input impedance. What I don't understand yet is why they then not just connect it straight to an opamp input and get rid of all resistors they have.

Regarding modding this, might be useful but I have the impression the noise I hear is mainly from the mics, not from the amps. But I could be wrong there

Why don't you use your EMU for listening? Is the DA part not so good? The EMU has its internal clock anyway, it does not 'reconstruct' from the USB stream.

@wtnh
Copy link
Author

wtnh commented Sep 24, 2020 via email

@wtnh
Copy link
Author

wtnh commented Sep 25, 2020

Here are two loopback test runs comparing single-ended (output and input) to differential (balanced output with XLR input) setups. Since balanced outputs are 2x the voltage of single-ended, I adjusted the single-ended run to match the level with the differential test. There is not a huge difference, but the differential setup exhibits lower THD. There is hardly any difference in noise so most of that must come after the 5532 buffers. In fact, noise dominates the measurements, and to get rid of it would require some mods to the EMU. I am also now using a small USB power filter between the battery supply and the EMU power input, just to make sure not much hash is getting into the EMU.

SINGLE ENDED:
EMU Single Ended

DIFFERENTIAL:
EMU with Power FIlter

@Wouter1
Copy link
Owner

Wouter1 commented Sep 28, 2020

@wtnh Surprisingly, the one on the battery pack and line input seems a tiny bit cleaner even?
It goes down to below -140 while these ones go to -130 so overall 10dB less noise with the line inputs?

@wtnh
Copy link
Author

wtnh commented Sep 28, 2020 via email

@Wouter1
Copy link
Owner

Wouter1 commented Sep 28, 2020

@wtnh Ah what I also missed is that you changed the scale. In the earlier pic we have only 50-100Hz at the far left, while in the new pics you allocate more space for the 20-100Hz

It might make sense to plot only the range from -80..-160dB as that is the range of interest. I suppose the single peak is normalized at 0dB anyway, no need to show that.

The hash filter is confusing. Is this a filter for the power supply? Or for the USB cable? I assume for the PS but why would you add USB connectors to that

The higher harmonics, I suppose they come from the AD and DA converters?

FAIK, with 24 bit converters the noise in a perfect converter is around 2^-23 = 10^-7 which is equivalent to 140dB (assuming your max signal is at 0dB). So these plots may be already pretty close to the limit.
Did you have the signal at 0dB ?

Also, if the signal at 0dB would be 1V, then the noise in that case would be at 0.1uV. FAIK 0.1uV is pretty tough to handle.

@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh I found that batteries also are a noise source. So although better than a switching power supply, they are not perfect.

It Might be an idea to try a low noise power supply to see if noise drops down even further

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020 via email

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020

Here is the power setup, along with the USB power filter:
IMG_0951
IMG_0952
I got the filter on eBay a couple of years ago, originally to put between a wall wart and a Pi Zero music streamer. As I mentioned it is simply a choke with two electrolytic capacitors.

@Wouter1 Wouter1 changed the title Catalina install problem 0404 USB Testing noise levels Oct 6, 2020
@Wouter1 Wouter1 reopened this Oct 6, 2020
@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh I copied your diagram of the input amps to the docs directory as it seems important documentation to me.

@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh

Also, note that the fundamental is -14.85 down (from zero). I did this because it results in the lowest distortion - if I boost it up toward zero, distortion increases, and I am not sure what part of the EMU is causing this (could be the D to A, the output drivers, etc. So, to get a true indication of the harmonic levels, you would need to add 14.85 db to the levels in the charts in order to normalize.

Ah another important point for realizing the best possible noise performance.
I noticed that at some point roughly at 70% of full setting the input level seem suddenly to get more sensitive.
Could this be related to this?
Could there be some second amplifier kicking in at that point?

Is the choke having a significant effect?

I am thinking of making a single plot overlaying all these results so that the differences are clear in one look.

Would it be possible to post the raw data so that I can throw all plot points through Mathematica for such a plot?

Also do you have plots when the EMU is running on plain batteries? The non-switching type I mean. In the past I used a 4-pack NiCd cells and they were great, NiCd has lowest noise, but unfortunately you can't get them anymore... The NiMH have more noise.

I do have similar measurements myself as well, I just dug them up from my archives (2015). These plots are based on an tables like this

Frequency (Hz)	Level (dB)
2.691650	-92.529640
5.383301	-123.497314
8.074951	-124.782196
10.766602	-125.456329
13.458252	-125.506355
16.149902	-126.773232
18.841553	-128.253525
21.533203	-128.495392
24.224854	-128.741226
26.916504	-128.646927
29.608154	-129.220505
32.299805	-129.836273
34.991455	-130.184021

I think these are exported from Audacity.

But if you could provide anything similar I can make some nice plots.

I'd have to think about the normalization, I suppose all values should be relative to 0dB?

@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh I did a lot of measurements back then. I checked the effect of

  • batteries, empty versus full, and power adapter
  • with or without mics, with XLR plug but no mics attached to the plug,
  • headphone attached or not
  • different gain settings
  • sample rate
  • Computer attached to mains vs on battery
  • shielding the whole setup in metal or not
  • inside vs outside

I think I should make a wiki page on how to get the lowest noise

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020

The input level pot is actually a gain control, not an attenuator. I was able to get the best results by keeping the control at the lowest level - I am guessing that results in unity gain in the input amplifier. The inputs on the EMU are VERY sensitive. I'll have to experiment with REW to see how to export data - I think it has that capability, but I have not used it.

Here is a diagram I posted in the DIY Audio REW forum showing the testing setup I have used for testing with the EMU:

EMU Balanced Input and Outputs

@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh For the tests here we are basically testing the EMU itself.

So I suppose this picture is not what you use then?

The tests that I did were either using mics straight connected to the XLRs
or line out loopback directly into line in jack plugs

The main problem then is that I'm measuring the output and input performance of the EMU together (assuming the wire and connectors do not add to the distortion).

I would need a separate, better device to test them independently

Also the voltmeter might also inject some noise, because it has switching devices that might reflect back on their probe lines. Even just the extra wires could cause extra noise.

@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh

I am guessing that results in unity gain in the input amplifier.

I would not assume that. I see all kind of weird ratios in your schematic. For instance in the first XLR stage I see 3K versus 20K (max setting of logarithmic) +1.8 ohm. So my first impression this would be a 1.15 ... 1666x amplifier

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020 via email

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020 via email

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020 via email

@Wouter1
Copy link
Owner

Wouter1 commented Oct 6, 2020

@wtnh

But if you are measuring in the -140dB range, then this would be 1uV against 1V. Or 8ohm versus 8Meg which might be comparable to your meter. Also I'm not sure if this would meter resistance would be relevant if the wires themselves to the meter are acting as pickup antennas for RF noise. If that RF noise would cause a few uA of current noise it would be enough to raise your noise floor. But I'm not an electric engineer, I might misunderstand something

But if you remove it after initial adjustment anyway it's not an issue.

Why lift the parts, are the values not just stamped on the parts?

@wtnh
Copy link
Author

wtnh commented Oct 6, 2020 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants