Topping D90SE HQP Settings?

Anyone here with this DAC that would like to share their HQP settings?

may be some indications below. Miska is the creator of HQPlayer:

@Miska quick question please: When sending 705.6kHz or 768kHz PCM in 32 bit to the Topping D90SE and its ES9038PRO, using poly-sinc-ext2 - is TPDF dither or LNS15 noise shaper recommended? Or a different dither or noise shaper? I understand that the noise shapers have an advantage when using <24 bit, but not sure what works best at 32 bit in terms of dynamic range and distortion?

TPDF dither is fine for 32-bit. But you can use noise-shaper too if you wish. It will extend digital dynamic range in audio band to cover over 32-bit worth. But since the effect is below -192 dBFS, one could argue it doesn’t have audible effect.

I have a Topping D90SE on the way, will report once it arrives…


getting first hand experience on a specific device from the HQ Player mastermind is pretty cool and highly appreciated!

To my current understanding DSD is not a strength of ESS dac chips and it seams also true for D90SE.

Some observations from measurements below:

  • For PCM: D90SE maintains noise level and DNR pretty well with increasing sample rate, only cross talk number “eroding” slightly
  • For DSD: D90SE noise level, DNR and cross talk are worse compared to PCM and increasing sample rate has higher negativ effect than for PCM
  • But not sure, if even the “worse” DSD values are in audible range anyway…



Currently I playing around with roon and HQP’s convolution (Headphone EQ) and upsampling functions.

I’m pretty happy with the results of HQP player so far. Here are my current settings (limited by NUC CPU power)

Independent from better measurements currently I like PCM more.

@jussi_laako: For limited processing power, is there a recommendation if its better to use “better” filters or higher sample rate?
Currently without dropout I have two options:
A) (screenshot above) => 192khz => Filter Nx: poly-sinc-ext3
B) => 768hz => Filter Nx: poly-sinc-ext2

@jussi_laako: One more question regarding licensing. As I still “playing around” with the HW setup, is there an option like for roon, to (de)activate the SW on different devices? If not, will the HW fingerprint for Desktop (Windows) and Embedded (e.g. USB boot) be the same on the same HW?


For those measurements, it’s measurement error problem due to the ADC used for the measurement.

Using ADC chip designed for recording music for measurement purposes is doomed to fail.

You’ll get pretty much best results running the chip at DSD512 from ASDM5ECv2 modulator.

Desktop and Embedded will require different license keys in any case. They are two separate products. You can use Desktop on Windows and Linux with the same license key though.

1 Like

I received my D90SE and measured it today too. But the results are pretty confusing. I’m pretty sure these effects are not, at least completely, due to the DAC chip used, but instead some problems in the implementation.

In any case, I get most consistent results when running the DAC in DSD256 mode using ASDM5ECv2 modulator.

At least some of the problems seem to be due to limited bandwidth of the active components in analog stages causing certain issues. For example the I/V converter must be very high speed amplifier, because otherwise it causes such issues.

First, the DAC seems to be having strange problems with 705.6/768k input rates. First, 1k input at 705.6k is fine:

But the IMD test signal at the same rate is triggering some noise floor modulation issues:

If we then drop output rate to 352.8k PCM, we get best results we can get with PCM inputs. Here’s 1k tone:

And here’s IMD test tone, although here too you can see noise floor jumping up compared to 1k test:

If we then drop 1k tone to -60 dB we see some strange stuff going on with the noise floor:

J-test result is very much fine though:

And for the record, TIM distortion test signal:

And multi-tone:

If we then go down to 44.1k PCM for 1 kHz test tone, result is pretty clean:

From 1k and IMD test tones we can also see the the digital filter has 120 dB attenuation (20-bit reconstruction accuracy). And hint about the analog stage high frequency performance problems, since IMD plot shows 2 kHz tone which is intermodulation of the left-over images:

When we drop level to -60 dB, things get weird again. But this time, the anomalies look like result of active ASRC:

And J-test is not quite as clean, some spikes near the main lobe:

If we then switch to DSD mode and look at 1k at DSD256 using ASDM7ECv2 modulator, we can see that noise floor comes up, but is very clean now and only two harmonics of THD:

Same, but with ASDM5ECv2 modulator, which has much more relaxed noise shaping profile, slightly lower noise floor with modulator noise beginning to appear from 80 kHz up:

Then IMD test with the same, ASDM7ECv2:

And with ASDM5ECv2:

Dropping level to -60 dB now doesn’t produce any suprises either:

And ASDM5ECv2:

Then looking at J-test figure we can see one unknown spurious tone, but otherwise very clean:

TIM test:

And clean multitone result:

I also did THD and IMD tests for DSD512, but again this DAC seems to have problems with higher rates. This is same rate on USB interface as 705.6k PCM, less weird results, but still has some issues:

So I have to say this is one very weird behaving DAC. One possible issue is if the ASRC is enabled, and another issue is if the ESS Distortion Compensation is disabled. For me, this DAC was wasted 900€, I would have expected better performance. It needs fixing on both digital and analog sides…


Thank you @jussi_laako for sharing the measurements!

How does the lower dsd rate (DSD64 or DSD128) perform compared to DSD256? I am curious because my laptop is only capable of up to DSD128/DSD5v2, or DSD64/ASDM5EC2 :frowning: If DSD256 still performs the best on D90Se, I may consider buying a more powerful PC (or sell my D90Se to get a Holo :thinking:

I didn’t try that, but generally those are not very good options with ESS chips.

Doing both would be best, but already getting a Holo would be pretty good option. Although it is somewhat more expensive than D90SE, but in my opinion worth it.

1 Like

Just to check, I didn’t believe things to be ES9038PRO fault. So I got another DAC with the same chip. And indeed it confirms that some of the funky results are not due to the DAC chip.

So I got S.M.S.L. M500 mk II (half cheaper) and here are for example multi-tone results for that one:


I’m not entirely clear on the graphs for the M500. They both look similar to my uneducated eye. PCM 352 or DSD 256 appear both pretty good? Which one would be the best?

Either one works fine. With DSD256 one should use ASDM5ECv2 modulator.

Note that although you get sound from SMSL DACs with 48k-base DSD, they behave incorrectly. So for DSD you must use only 44.1k family! Also with M500 mkII, 16x PCM rates misbehave.


Hi @jussi_laako , which noise shaper did you use when testing 352.8k PCM on the d90se ? I couldn’t decide yet between NS5/NS9/LNS15 :sweat_smile:

For measurements, I use TPDF dither unless I’m testing effect of noise-shaper.

For 352.8/384k rates NS9 or NS5 may be better choice, but LNS15 should also work, although designed for >= 705.6 rates.

1 Like