The Cobalt is the latest entry in the DragonFly DAC series from AudioQuest. Compared to its Black and Red predecessors, the main difference in the Cobalt is an upgrade to the ES9038Q2M DAC chip from ESS. The output driver is the same ESS SABRE9601K as found in the Red. The format support also remains unchanged with a maximum resolution of 24 bits at 96 kHz sample rate. We put this little DAC through its paces and also took a look inside.
We start off with the most basic of tests, a full-scale 1 kHz sine wave. With the volume control at maximum, the DragonFly Cobalt produces an output of 2.164 Vrms, a touch above the specified level. There is no visible channel imbalance or inter-channel time delay. A slight DC offset of -15 mV is harmless.
Since the DragonFly line is aimed at headphone use, we repeat the test, this time using a 50 Ω load. This proves to be more than the output driver can handle, and clipping ensues, more severely on the negative half of the sine wave. There is also a slight channel imbalance visible.
With the 50 Ω load, clipping is only avoided when the volume is decreased by 5 dB (or more), thereby reducing the voltage to 1.21 Vrms. This is the same level as the Black, which incidentally has no trouble driving this load at full volume.
The impulse response, the output resulting from a single non-zero input sample surrounded by zeros, reveals some fundamental characteristics about a DAC. In the case of the DragonFly Cobalt, we observe a typical minimum phase response of short duration, which translates into a slow roll-off.
The frequency response of a DAC can be measured by playing back white noise and recording the output at a higher sample rate. This shows the result of anti-imaging filter combined with any roll-off occurring elsewhere.
The shape of the anti-imaging filter is most important at low sample rates, so we look at the 44.1 kHz case first. A slight drop, about 0.1 dB, is apparent already at 10 kHz. The level reaches -1 dB at 17.4 kHz and -3 dB at 19 kHz. This is the slow roll-off we predicted from the short impulse response.
At the highest supported sample rate, 96 kHz, the response has a similar shape at a correspondingly higher frequency. Additionally, the extended passband reveals a gentle downward slope in what should ideally be a flat region, reaching a drop of 0.35 dB at 20 kHz.
When the input to a component is a single tone, a pure sine wave, the output should contain only that same single tone. Anything else is distortion. Harmonic distortion is frequency components in the output at multiples of the input frequency.
Although the maximum output level from the Cobalt would be far too loud with most headphones, AudioQuest suggest setting the volume to 100% when feeding a line-level component such as a preamp. It thus makes sense to measure the distortion level when playing a full-scale tone at maximum volume. What we see is not pretty. Every harmonic is present with a level around 68 dB below the fundamental. Normally we would expect the second or third harmonic to be the strongest with a level around -80 dB or less, the higher ones decreasing in strength with increasing frequency. Note that in the graph, the fundamental peak doesn’t reach the 0 dB level due to the finite resolution of the FFT. Since the harmonics are scaled by the same amount, their relative levels remain the same.
Distortion of this magnitude is usually indicative of clipping, and a look at the waveform confirms this. Note the flattening at the very bottom of the sine wave. Apparently the input impedance of the ADC is too low for the output driver to handle properly.
Lowering the signal level by 6 dB avoids clipping, allowing us to measure the actual level of harmonic distortion. Although an improvement, this amount of distortion is still similar to that of the much cheaper DragonFly Black at the same output level. The THD is -77.2 dB with the 2nd harmonic the strongest at -77.8 dB. The higher harmonics are all below -90 dB. These levels are nowhere near those advertised for the DAC and driver chips. AudioQuest themselves do not provide distortion figures for the finished product.
When two or more frequencies are present in the input signal, intermodulation distortion (IMD) can occur. This shows up in the output as tones at sums and differences of the input frequencies and their multiples. Unlike harmonic distortion of a pure tone, some IMD products are lower than any of the input frequencies. As a result, ultrasonic frequencies can cause distortion within the audible range.
A common method of measuring IMD is to use an input consisting of a pair of tones 1 kHz apart. Here we see the output of the Cobalt when playing such a pair of tones at 19 kHz and 20 kHz. The maximum signal level, when the peaks of the two sine waves coincide, is -6 dBFS. The difference tone at 1 kHz is clearly visible, its level 80 dB below that of the input pair. The sum at 39 kHz is slightly higher at -78 dB. Also marked are the 3rd order distortion products at 18 kHz (2 × 19 - 20) and 21 kHz (2 × 20 - 19). More complex combinations result in a smattering of low-level tones at multiples of 1 kHz.
A square wave at ¼ of the sample rate is somewhat special. Mathematically, a square wave consists of a sine wave at the same frequency plus infinitely many odd harmonics. At ¼ of the sample rate, even the 3rd harmonic falls above the Nyquist frequency, making such a square wave indistinguishable from a pure sine wave. Since the frequency divides exactly into the sample rate, the digital representation is perfect without any rounding errors. This makes a test signal based on this pattern suitable for testing the jitter performance of a DAC.
The J-test consists of a square wave as described above together with another low-frequency square wave in the least significant bit. Although originally designed to provoke jitter in S/PDIF interfaces, it has come to be a common measurement also for USB connected DACs.
At a sample rate of 48 kHz, the primary square wave ends up at 12 kHz with the secondary at 250 Hz. A narrow spectrum centred at 12 kHz would ideally show only a single spike. The reality is somewhat less than perfect. In addition to the main 12 kHz frequency, side spurs are visible at 250 Hz offset in both directions. There is also some skirting due to random jitter. All these anomalies are low in level and pose no problem.
Doubling the sample rate to 96 kHz, we get a similar situation around 24 kHz. The low-level square wave is also doubled in frequency to 500 Hz. The side tones, now at 500 Hz offset, are much stronger and are joined by additional tones at multiples of 500 Hz. An unrelated pair of tones at 86 Hz offset from the centre frequency have also shown up. The reason for this is unclear.
The Cobalt is said to “easily drive the widest range of headphones.” To test this claim, we measure the actual achievable output power with loads ranging from 10 Ω to 1000 Ω. As the output is direct-coupled, we can simply drive it to the maximum and see what happens.
With no load, the output can swing slightly more than 3 V in the positive and negative directions. However, when we connect a load, the maximum voltage is reduced as shown in the graph. The negative swing is the most restricted, as we saw from the asymmetric clipping earlier. What this means is that if a waveform peak would need to exceed these limits, it will be clipped.
Ohm’s law allows us to calculate the maximum output power for each load resistance. Using the negative limit, we obtain the following graph. The power reaches a peak of approximately 75 mW with a 30-40 Ω load. For higher and lower load resistances, the power drops off quickly. Note that this is DC power. With AC signals, such as music, the RMS power depends on the crest factor of the signal. For a sine wave, the power is half of that shown in the graph. Music typically has a much higher crest factor, so the achievable RMS power will be considerably lower.
Headphones vary widely in both impedance and efficiency. While the Cobalt can probably handle most of them acceptably at moderate volume levels, it will struggle to get loud with low-efficiency models.
The advertised output impedance is 0.65 Ω, and this is the one parameter where the measured value is actually better. An ideal voltage source would deliver the target voltage at its output regardless of the current demanded. In reality, internal resistance means the voltage drops somewhat as the current increases.
Once again taking advantage of the direct-coupled output, we set a target voltage and measure the actual voltage across a variable load. Plotting the voltage drop against the current yields a straight line, the slope of which provides the output impedance. At 1 V, the thus measured output impedance is 0.12 Ω, considerably lower than the specified value. When the voltage is raised to 2 V, the output impedance increases by 25% to 0.15 Ω. With negative voltage, the output impedance is somewhat higher, 0.14 Ω at -1 V and 0.21 at -2 V. These variations all contribute to the overall distortion figures of the device.
The observant reader may have noticed that the lines in the graph, if extrapolated, do not pass exactly through the origin. The reason for this is a constant offset somewhere in the measurement setup. This is not a problem since we are only interested in the slope of the lines. The straightness of the lines suggests that the measurement is valid for the intended purpose.
According to the AudioQuest website, the Cobalt “draws less current,” though they do not say compared to what. In the idle state, the measured current draw from the USB Vbus line is 63 mA. Playing a -6 dBFS sine wave at 48 kHz sample rate with no load attached, the current increases to 71 mA. Switching to 96 kHz sample rate further increases the current demand to 78 mA. When acting as an MQA renderer, still with no load, the current draw reaches 89 mA. Since these numbers are considerably higher than the same measurements for the DragonFly Black, the “less” comparison must be in reference to something else. The maximum current the Cobalt can possibly draw, a staggering 311 mA, occurs when playing a full-level DC voltage on both channels with the outputs shorted. Although this is clearly not a typical situation, a partially inserted headphone plug can short the outputs. In a more realistic scenario, playing a loud rock track at fairly high volume over a pair of Sennheiser HD 428 headphones, the average current is 100 mA with peaks of 110 mA.
When driving a load, such as headphones, the power consumption will naturally increase. The question is how much, or in other words, how efficient is the power delivery? To get an idea, we measure the input power (from the USB supply) at various levels of output power and plot the result. Above the baseline power consumption of about 350 mW, the extra input power required for each additional mW of output power depends on the output voltage. The efficiency (the proportion of input power delivered to the output) is 11% at 0.5 Vrms and 23% at 1 Vrms. Such a pattern is to be expected when using linear voltage regulators and amplifiers. This measurement mainly confirms that nothing funny is going on.
It is worth noting that the USB configuration descriptor of the DragonFly Cobalt specifies a maximum current draw of 70 mA, a considerable deviation from the measured values. Moreover, while the configuration descriptor correctly identifies the device as bus powered, in the USB device status report, it claims to be self-powered, an impossibility since it lacks a separate power input. Violating the USB specification in this way can cause problems in systems employing careful power management.
Unfortunately, the DragonFly Cobalt cannot be opened without destroying the metal case. Unfortunate for the DragonFly, that is. After some careful drilling, the end cap surrounding the headphone jack can be removed, allowing the single PCB to slide out.
On the top of the PCB, we find the PIC32 microcontroller, the USB and headphone connectors, the status LED, and various support components.
The bottom side features the DAC chip, the output driver, a crystal oscillator, and more support components.
As promised, we are looking at a Microchip PIC32MX274F256B microcontroller. True to the marketing claims, this device is faster than the one used in previous Dragonflies, though quite how they arrived at the 33% figure is unclear. The maximum clock rate of this chip is 44% higher than that of the earlier one, so perhaps it is set to run at a somewhat lower speed. Also unclear is why any of this matters. The Cobalt has no additional features over its predecessors, wherefore the added processing power is of no utility.
The microcontroller handles USB communication and manages the DAC chip using I2C while sending audio data over an I2S interface.
The centrepiece of the Cobalt is the ES9038Q2M DAC chip, the top 2-channel offering from ESS. It has all the usual ESS features, though most of them are left unutilised in this implementation.
By tapping into the I2C bus, we can determine exactly how the DAC is being configured. Most settings are left at their defaults. The most interesting setting is that of the 8x interpolation filter, which is changed from the default fast roll-off to a minimum phase slow roll-off variant. Less interesting yet of some relevance is the volume control “master trim” setting. This allows the 0 dB level of the per-channel volume controls to be reduced. Here it is programmed to 95% of the maximum value. This is likely done to reduce the risk of clipping in the output driver, though as we have seen this is not entirely successful.
The USB volume control – accessible through the OS mixer interface – directly sets the corresponding value in both channels of the built-in volume control of the ES9038. The 65 levels provide a 0 dB to -64 dB adjustment range in 1 dB steps. The promotional material boasts of a “64-bit bit-perfect” digital volume control. Should one wonder what this means, the answer is mostly nothing. 64-bit likely refers to the size of some intermediate value within the DAC chip (the datasheet does mention a 64-bit accumulator). This is, however, not a case where more is automatically better. The inevitable noise in the output means that not even 24 bits worth of precision is actually available, no matter how many bits are used for internal processing. As for bit-perfect, this is obviously nonsensical. A digital volume control must, by definition, alter the bits.
As with other DragonFly models, a single oscillator provides the clock for all functions. In the Cobalt, this is a 48 MHz crystal producing this spectrum. The side tones at 13 MHz offset are noteworthy and not what one would expect from an “ultra-low-jitter” clock. Moreover, we see that the measured frequency is off by 85 ppm. For comparison, a high accuracy S/PDIF source must be better than 50 ppm.
The oscillator output goes directly to the DAC chip which buffers the signal and passes it on to the microcontroller. The latter uses built-in PLLs to synthesise the audio LR and bit clock signals needed by the I2S interface. Although these synthesised clocks have fairly large amounts of jitter, it is cleaned up by the ASRC in the ES9038, and since they are derived from the master clock, this cleaning can be close to perfect. The main downside to this approach is that the PLL configuration does not support generating exactly 44.1 kHz from a 48 MHz input. Instead, the closest value obtainable by an integer division of the input is used, which comes out to approximately 44,118 Hz. This solution is what Gordon Rankin has given the monoClock® branding. A dual-clock design could have avoided these compromises at the cost of additional components, resulting in a higher retail price.
For the output driver, the Cobalt reuses the same ESS SABRE9601K chip previously found in the DragonFly Red. This is essentially a glorified op-amp with a built-in charge pump to supply the negative voltage rail. The implementation seen here is similar, though not identical, to the diagram shown in the product brief from ESS. The capacitor in the feedback path makes the circuit act as a weak lowpass filter.
A charge pump, in this application, uses a switched capacitor to flip the positive voltage supply into a negative mirror voltage. This creates some noise which we can see in DAC output when playing silence. The switching frequency here is 125 kHz, each toggle of the clock producing a noise spike.
The negative voltage produced by this method has some ripple which increases under load. Driving -1.5 V into a 30 Ω load gives a 30 mV peak-to-peak sawtooth waveform at the headphone output. Since the 125 kHz frequency is far above the audible range, this is unlikely to pose any real problem.
We observed earlier that the negative side is more prone to clipping. This is likely due, at least in part, to limitations in the charge pump supply.
One feature differentiating the DragonFly range from many other mini-DACs is their ability to function as so-called MQA renderers. If software, such as the Tidal player, has done the main decoding, a renderer can perform the final processing stage. This has been shown to be a trivial upsampling using custom filters specified by MQA. These filters are supposedly tuned to each DAC in order to achieve the best performance.
The microcontroller used here, even the faster version in the Cobalt, is far too constrained to carry out the aforementioned upsampling. Instead, the MQA coefficients are programmed into the DAC chip where they replace the built-in filters. Once again tapping the I2C bus, we are able to obtain the values. Comparing the filter coefficients to those used for MQA rendering on the DragonFly Black, we find that they are exactly the same. Apparently they are not so specific to each DAC, after all.
If MQA promoters are to be believed, the system is capable of improving “time domain” performance. However, examining (in the time domain) a 10 kHz sine wave “rendered” as MQA suggests otherwise. This is not what a sine wave looks like.
The signal used here was generated to mimic the output of an MQA “core” decoder. Official MQA test files are not available, but the intermediate format, used between decoder and renderer, has been determined through reverse engineering. Since the DragonFly is a renderer only, this is sufficient for testing its behaviour with MQA content.
The one thing, above all, we can learn from these tests is that the DAC chip itself provides little indication regarding the performance of a finished product. As the poor distortion figures of the Cobalt show, even a high-end chip can be compromised by the specifics of the implementation.
Is the Cobalt worth the additional $100 in retail price over the Red? Apart from a 5 mm reduction in length and a blue paint job, not much has changed. The features and drive capability remain exactly the same. Although the DAC chip has been upgraded to a much more expensive one ($25 vs $10 in sample quantities), there is little, if anything, to show for the effort in terms of measured performance.
ADC: Tascam UH-7000 (modified for external power supply)
Multimeter: Fluke 289
Oscilloscope: Tektronix MDO3054
Power supply: BK Precision 9129B
Signal cables: RG-58C/U, 0.5 m
Software: GNU Octave