USB noise measurements
The Raspberry Pi was the quietest when running on mains power, but even quieter when powered from a linear PSU and quieter still on battery.
It should be noted that the noisiest scenario was from a mains powered PC into another PC (via the sound card) which is to be expected as a ground loop is formed (the Pi has no ground reference).
Given that most HiFi equipment is isolated from ground, this is unlikely to be an issue - however I plan to measure using the DAC from PC USB into a (grounded) HiFi preamp to see if the problem still exists.
11/02/21 Update: I attached the D10 to a PC and connected it to my HiFi system (the preamp has a ground connection). There was a slight increase in noise. I then connected the PC to my home build DAC (PCM1794 with Amanero USB->i2s interface) and the noise was reduced a lot, but still not as quiet as going directly from the DAC. So as expected, ground loops do raise the noise floor.
I also tried an older Intel NUC (Celeron CPU) and that too was noisier than the Pi.
UPDATE I tested the NUC using a linear bench PSU and it was as quiet as the Pi.
The best scenario would be to use a Raspberry Pi or NUC with a linear PSU. A laptop running on battery would also be a good option but not very practical. When using a Pi - *beware of ground noise* when using the official (or any mains -> USB type) PSU, as clearly some noise was injected, but this will vary according to your individual ground arrangements in your HiFi.
The other alternative would be to use a USB isolator, however if your DAC requires USB3 an isolator won't be cheap.
Unless your music player uses a lot of CPU, the Pi (or the NUC on a linear PSU) is the ultimate player here.
Hardware used for tests:
Raspberry Pi4 Model B 2gb RAM / Intel NUC Celeron CPU (DN2820FYK) / PC: Amd FX6100 / 16GB / Nvidia GFX / Asus Xonar Essence STX sound card / Altor Audio Olivine 2 isolated USB ADC
The linear PSU used to power the Pi is custom built using a toroidal transformer and LM350 3A regulator.
WaveSpectra, Sox (for generating tones on Linux), Virtins Multi Instrument (SNR/SINAD measurements)
Conclusion: The USB bus (and its power supply) is not typically noisy - any noise is created by earth / ground loops between the connected equipment and the DAC caused by unequal ground potentials. In some cases it also appears that the ground of a sound card in a typical PC is at a slightly different potential to the USB ground, which then results in PSU / motherboard noise being injected into the resulting analogue signal - this caused a great deal of noise in the loopback test as shown in the images below. However this is probably a rare scenario in a typical computer playback / streamer setup.
|Raspberry Pi 4B||Official PSU||-102.75dB||102.75dB||103.86dB||-106.85dBFS|
|Raspberry Pi 4B||Linear PSU||-104.23dB||104.23dB||105.71dB||-108.69dBFS|
|Raspberry Pi 4B||Battery||-104.52dB||104.52dB||106.19dB||-109.17dBFS|
|PC (isolated ADC*)||Mains||-98.49dB||98.49dB||98.97dB||-101.97dBFS|
|PC (ground loop)||Mains||-70.32dB||70.32dB||70.41dB||-73.39dBFS|
*NOTE the isolated USB ADC I'm using has slightly inferior noise figures to my internal sound card - hence the disparity in noise measurements.
Each of the graphs below is annotated with the specific scenario.