Introduction
Presented here is a review of the JCally JM20 Max based on detailed measurements. This DAC/headphone dongle has some features that piqued my curiosity:
- It is a USB dongle that claims to provide relatively high unbalanced output power (195 mW @ 32 Ohm per channel), which is rare. Most dongles boasting high power measured at ASR, like the Fosi Audio DS1, DS2, and Tanchjim Luna, require balanced connection to headphones to access their maximum power.
- Unlike the aforementioned devices with balanced outputs, it has a small, Apple-dongle-type form factor.
- It is based on the Cirrus Logic CS43131---despite some undesirable behavior having been reported, it is a capable DAC chipset for this kind of application.
- It uses a new Chinese-brand op-amp, SGM8262, as its headphone amp stage whose performance is not much known---some recently released Fiio portable DACs adopted it.
- Relatively inexpensive (< $30).
Measurement Setup
- AD converter: E1DA Cosmos ADCiso Grade A in Mono Mode, and Cosmos Scaler as a buffer.
- Analog preamp: E1DA Cosmos APU for 1 kHz SINAD and low-level tests.
- Software: Room EQ Wizard (v5.4 beta) for most of the tests, and Paul Kane's Multitone Loopback Analyzer (v1.2.9).
- Some test results are compared to the performance of the E1DA 9039S as a benchmark whose results were obtained in exactly the same setup.
Results
First up is a 1 kHz sinusoid test under no load (10 kOhm):
This SINAD value essentially indicates that the additional headphone amp stage is very transparent, not adding much noise or distortion to the DAC chip's output. I also did the same test at its maximum volume:
Some incorrectly designed dongles clip with input of a 0 dbFS tone at the maximum volume, even if unloaded. That is not the case here. At its maximum output the SNR improves a little as expected, but harmonic products increase a little as well, resulting in 0.5 dB lower SINAD. But the distortion is still low, far below the audibility threshold.
Impressively, 32 Ohm loads do not lower the SINAD much:
Performance of low-level 50 mV output is very nice, too:
Its low-pass digital filter works great:
Looking at its frequency / phase response, it seems that the default filter is the minimum-phase type:
Response at 96kHz sampling frequency:
As expected the phase does not shift much in the audible band when the bandwidth is increased. If you're concerned about the phase shift, use a wide bandwidth setting.
Jitter suppression is great:
Linearity (measured using 300 Ohm load) is great except for a tiny, 0.1 dB deviation for levels below -30 dB, just the same behavior as shown by the standard JM20:
Multitone test:
SMPTE IMD vs. output voltage under 300 Ohm load:
Here we compare the JM20 Max to the E1DA 9039S---"the world's first dongle THD+N<-120db@12ohm." Indeed, the 9039S shows extremely low IMD levels especially at higher output voltages. But the results show that the JM20 Max's performance is no slouch.
How about IMD under 32 Ohm loads?
Again, IMD levels are overall very low even under 32 Ohm.
THD+N vs. frequency is excellent, too:
The above test was done using the 48 kHz bandwidth (i.e., 96 kHz sampling frequency) because any device based on CS43131 has somewhat elevated ultrasonic noise above 45 kHz due to noise shaping. See here:

The most important tests for this dongle should be THD+N vs. output power:
Note. (1) The E1DA 9039S was measured from its balanced output which is the only mode supported.
(2) All of the above THD+N vs. power tests were done with both channels driven.
(3) The bandwidth of 48 kHz was used.
This result easily makes it one of the top contenders in Amir's Portable DAC+Headphone Amp Power chart:
JM20 Max would be between Hidizs DH80s and Fosi Audio DS2, but it is the only device in the chart that can provide such high power from an unbalanced connection.
A chart of THD+N vs. output voltage (instead of power) is convenient for showing performance under various loads:
Its output impedance is close to zero at 0.57 to 0.58 ohm, measured using 100 Hz and 1 kHz sine tones for both channels. This is also indicated in the above chart showing the same noise levels under different impedance loads.
Lastly, some DACs based on CS43131 are known to exhibit abnormal 'clicking' behavior when the output level is in a certain range (see here for a detailed report). So, I performed a set of multitone tests by varying output levels:
Just clean responses. Also performed were 10-tone tests, as suggested by the article linked above, at even more output levels as well as under 32 Ohm load. Check these out:


No issue was found.
Listening Test and Conclusion
Listening to music and other contents with Hifiman HE400SE (25 Ohm impedance) connected to the JM20 Max was very satisfying. I experienced no problem with its volume level for most music and online contents. Some classical music recorded at very low volume (to secure dynamic range) demanded more power. Otherwise, the JM20 Max provided sufficient, clean power in most cases.
Some USB DACs enter a 'power saving mode' after some seconds of no input. This seems to cause some weird volume ramp-up or fade-in/out issues. With the JM20 Max, I experienced no such problem. It appears to never enter such a mode! Not sure if this is a good thing. Perhaps that is the reason why it does not exhibit "clicking" behavior known to occur in CS43131-based DACs when the output level is in a certain range. In that respect it may be a good thing, but not good for battery life when used with a phone?
In sum, the JCally JM20 Max is a small yet versatile headphone dongle. The manufacturer is spot-on with their claimed output power: 195 mW @ 32 Ohm is exactly what I measured. Not only powerful but also very clean. It would serve as a very capable DAC, too---I have no problem using it with an external headphone amp if I need more power. This is a value leader in its class. But will it continue to be obtainable at a low price amid this ongoing trade war? We'll see.
Last edited: