• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

On the Distortion of Cirrus Logic CS431xx-Based Devices: A Comparative Review

How would this review influence your purchase decision of a device employing Cirrus Logic CS431xx?

  • Going forward I will not buy a device if it adopts any Cirrus Logic DAC chip.

    Votes: 7 9.3%
  • I would not consider any device with CS431xx.

    Votes: 10 13.3%
  • I'd consider a device with CS431xx only if it's been tested free of the "Cirrus hump" distortion.

    Votes: 40 53.3%
  • I don't care about this distortion issue and would just consider the device's other features.

    Votes: 18 24.0%

  • Total voters
    75
In practical terms, would you say devices not affected by Cirrus hump in the first scenario, like Jcally JM20, are much better than the ones with Cirrus hump? what I mean by this is if it's better despite still having the issue in part II?
That is to say, in the case these issues could be audible in some real-world scenarios, is it likely that JM20 without the cirrus hump ends up with all or most of these scenarios not audible because you are less likely to be in the scenario of part II compared to the scenario in part I?
As I stated in the review this issue is difficult to resolve. It will take more listening experiments and recordings with additional, carefully chosen, various test signals. The only conjecture I can make based on the measurements for now is that the artifacts, if audible, would be significantly less audible for the devices tested not producing the Cirrus hump.
 
Last edited:
And the following did not produce distortion:
  • JCally JM20
  • JCally JM20 Max
  • JCally JM28
  • Shanling UA1 Plus
Thanks for the measurements. It would be nice also to write somewhere (to have it all in one place) what is the maximum line-level output for each of these dongles. For example, UA1 plus gives maximum 1.6V and JM20Max gives 2.55V (thanks to well implemented, distortion-free SGM OpAmp).

For comparison, iFi GoLink (1st one) gives 2.05V line-level output voltage maximum. I use it as a source for bigger AMP and I like it really much. Small, reliable, plug&play device.

Ricore RT OpAmps are mostly re-branded SGM ones. I would never consider buying something what is rebranded already relatively cheap OpAmp, and worse quality at the same time.
 
But I wonder why there are greater variations in THD performance (not including noise) of ES9219-based DACs whereas most CS431xx-based DACs perform very similarly. What would be the primary design factor in harmonic distortion performance of ES9219-based DACs?
Harmonic distortion, for example descending 2nd and 3rd harmonics, can be obtained and are very often intentionally exposed as a result of implementation and analog components - while it may not look „perfect” from measurement point of view, for many people it sounds better (better does not have to mean „cleaner”, „technically purer” or whatever you call it).
 
Thanks for the measurements. It would be nice also to write somewhere (to have it all in one place) what is the maximum line-level output for each of these dongles. For example, UA1 plus gives maximum 1.6V and JM20Max gives 2.55V (thanks to well implemented, distortion-free SGM OpAmp).

For comparison, iFi GoLink (1st one) gives 2.05V line-level output voltage maximum. I use it as a source for bigger AMP and I like it really much. Small, reliable, plug&play device.

Ricore RT OpAmps are mostly re-branded SGM ones. I would never consider buying something what is rebranded already relatively cheap OpAmp, and worse quality at the same time.
All 2V from what I've gathered, except JM20-Max as you mention is 2.5V. JCally JM28 is unclear because the spec sheet says 1V but CS43198 is capable of 2V. Also, exception if they have a 4.4mm output, then the voltage can be doubled.
 
Harmonic distortion, for example descending 2nd and 3rd harmonics, can be obtained and are very often intentionally exposed as a result of implementation and analog component
Many ESS chips, including the ES9219, have THD compensation registry. So, depending on the implementation as you said, and whether the OEM spend the time to refine these THD comp. settings or not, we may see quite a variability in the results.

To some degree, the THD comp. can be used to create a “tube-like” sound, adding 2nd harmonics instead of compensating them.
 
Last edited:
Many ESS chips, including the ES9219, have THD compensation registry. So, depending on the implementation as you said, and whether the OEM spend the time to refine these THD comp. settings or not, we may see quite a variability in the results.

To some degree, the THD comp. can be used to create a “tube-like” sound, adding 2nd harmonics instead of compensating them.

Could this THD compensation registry in any way similar to the CS431xx's DRE instruction set & parameters, or are they different functions (that ESS chips also have)?
 
Could this THD compensation registry in any way similar to the CS431xx's DRE instruction set & parameters, or are they different functions (that ESS chips also have)?
Screenshot_20250612-221621.png
They have both
 
I am sure the CS431xx also has multiple registry items for DRE operation. They just didn't publish them in their datasheets. Perhaps separate documents exist for DAC manufacturers.
They always have separate documents when they explain things a bit more in detail, but normally the number of registers is what it is and accessible. You might have registers marked as "reserved" but those are typically also indicated.
Remember there are a millard of combinations and variables, like what is written first etc etc...
Getting the evaluation board should give you access to everything there is there, it is an audio DAC, nothing else.
 
See these contents in the ESS ES9080 datasheet:

DRE_Config_Registers_DRE_Decay.png


DRE_Decay_Rate.png

1749764081972.png



This 'DRE_DECAY_RATE' parameter set to 'slowest decay' must dictate the behavior shown by the JCally JM20 or JM20-Max.

I suspect the CS431xx chips have similar registers.
 
Last edited:
I am sure the CS431xx also has multiple registry items for DRE operation. They just didn't publish them in their datasheets. Perhaps separate documents exist for DAC manufacturers.

This. I've been looking at both datasheets (CS43131 and CS43198) and couldn't find them. Is DRE something that could be implemented outside of the DAC chip, like on the USB bridge & audio processors?
 
Last edited:
This. I've been looking at both datasheets (CS43131 and CS43198) and couldn't find them. Is DRE something that could be implemented outside of the DAC chip, like on the USB bridge & audio processors?
I meant separate documents / instructions distributed to product developers.
 
So why do some devices not show the hump? What are they doing differently? Are the ones with the hump fixable with a firmware update?
 
So why do some devices not show the hump? What are they doing differently? Are the ones with the hump fixable with a firmware update?

The main difference is the usb bridge, especially seing how JM20 Pro has the hump and the main difference is the different usb bridge.
 
So why do some devices not show the hump? What are they doing differently? Are the ones with the hump fixable with a firmware update?
As described in the review, there's not much known so far. It is most likely caused by the DRE (dynamic range enhancement) function in the DAC chip which could be controlled in firmware. But how that can be done is unknown.

The main difference is the usb bridge, especially seing how JM20 Pro has the hump and the main difference is the different usb bridge.
Some of us made this conjecture earlier. But the sample size is way too small and there's no explaining how that association can affect the behavior.
 
Last edited:
As it happens, I bought a Shanling UA1 Plus a couple of months ago. It's not one of the affected devices luckily. I am very impressed with it, to my ears it's a clear upgrade over my other devices.

Having said that, and despite the fact that it does not produce the Cirrus hump distortion, I have a couple of questions regarding volume levels I would be grateful if anyone could help me out with:

1: Using the Shanling app, I can set the dongle to High Gain or Low Gain. Which should I use for best quality output? i.e. lowest noise and distortion. I get adequate volume with either option for my use, and I use the dongle with easy to drive 28 and 60 Ohm IEMs and headphones, and also Logitech Z623 powered speakers.

2: There are 2 separate volume settings - phone and dongle. For best quality output, should I leave the dongle at max and adjust the phone volume only, or vice versa? Or something in between? And when I use it with my powered speakers, I have an additional volume knob on the speaker. What then? Which levels should I max out, or not?

Sorry if any of these are basic questions, I freely admit a lot of the stuff on ASR goes over my head - I'm a newbie, still learning! :)
The main difference is the usb bridge, especially seing how JM20 Pro has the hump and the main difference is the different usb bridge.
Tanchjim Space and Moondrop Dawn Pro have the same dual CS 43131 and CT 7601 USB bridge as the Shanling UA1 Plus, but both have the hump and the Shanling doesn't. They do have balanced out though, while the Shanling is 3.5mm only.
 
1: Using the Shanling app, I can set the dongle to High Gain or Low Gain. Which should I use for best quality output? i.e. lowest noise and distortion. I get adequate volume with either option for my use, and I use the dongle with easy to drive 28 and 60 Ohm IEMs and headphones, and also Logitech Z623 powered speakers.

2: There are 2 separate volume settings - phone and dongle. For best quality output, should I leave the dongle at max and adjust the phone volume only, or vice versa? Or something in between? And when I use it with my powered speakers, I have an additional volume knob on the speaker. What then? Which levels should I max out, or not?
1. low gain
2. best > everything before endpoint close to max, endpoint volume control > or use as is comfortable, not a drastic difference if any
 
Back
Top Bottom