I have come to the realization that audio diy never ends. There is never the “final” project. There is always tweaking, a new mod,  new stuff. Thus I decided to use a cardboard box as an enclosure. Much easier to work with, simple tools would do.

Many would consider a proper enclosure a must for a diy project, but for me this is good enough. Here is a nice looking Lenovo tablet box.



Three separate transformers were used:

  • DAC supply transformer: salvaged from an VCR from the time that linear supplies were still being used. These transformers are very nice, having at least 2 hefty 9V secondaries.  The secondaries feed a TPA dual PS which is used as a pre-regulators for the DAC supplies.  The two capacitors hanging off the transformer provides DC to an LED (to indicate power 0n/off)
  • Analog supply transformer:  15×2 toroidal transformer. (Got it from Twisted Pear Audio)
  • Controller transformer: 6V DC salvaged from a wall-type supply, upgraded the smoothing capacitors



Water bottle caps are perfect for the feet.



Used a quad-supply board. This board is designed to provide 4 x 3.3V/5V regulated output. Two supplies receives pre-regulated DC, two supplies receive AC (thus the larger filter capacitors).


Two of the regulators were modified to provide 14.2 V (1.4V+6.4V+6.4V) for the opamp by shorting pins 4 and 5 to GND. They are also configured to provide +/- 14.2V by tying the +output of one of the regulators to GND (I followed what diyinhk did for their dual +/- supply [link])




Standard build. Only “upgrade” are the electrolytic capacitors. On the backside, the jumpers are to connect the I2C lines to the separate I2C header because I forgot to short the lines on the front side before I soldered the connector (which blocked the jumpers). Later I will upgrade the opamp.



There is a separate SPDIF input connection that feeds the GPIO2 pin in the DAC. Selecting this GPIO pin for SPDIF input has been enabled in the code.

GPIO1 is configured in the board to be in input selection pin for manual selection of I2S/SPDIF. My code does not enable this mode because the selection can be done directly through the user interface. This is here for manual selection with a switch and requires that the chip be programmed in such a way. I believe the diyinhk XMOS interface would program the chip to allow manual selection of SPDIF input.


The board comes with an NDK 80 MHz oscillator [link]. Other implementations may use a 100MHz clock. The software support both 80 MHz and 100 MHz clocks.

In addition, a separate supply can be used to power the clock by cutting the power trace and connecting the supply to the through-hole vias.



The external 5V powers a single regulator for the analog 3.3V AVCCR and AVCCL. . The second regulator provides 3.3V to in chip internal oscillator (I think in order to support an external quartz crystal instead of an oscillator). The regulators are marked “LLVB” and are TI LP5907 Ultra Low Noise regulators for analog applications [link]. They rank near the top among ultra low noise regulators [link].

The external 3.3V is used directly without further regulation to power the digital side of the chip and also the local oscillator.


Power to the oscillator is further filtered by a ferrite bead



Positive and negative supply voltage are taken directly to power the opmap.



The board has connection for the differential outputs straight out of the DAC chip and also single ended output through the opamp. I am using the single ended output wired to a mini-plug for connection to a headphone amplifier. The opamp provided is a NE5532 dual operational amplifier [link]




Nice, solid ground-plane







About these ads
  1. David Quayle
    2014/07/02 at 08:32

    Very creative I just hope you don’t have a fire :)

    • BlgGear
      2014/07/07 at 19:11

      You have a point there :-)

  2. 2014/07/03 at 11:12

    Hi, I’m interested to know how it compares to the orginal ES9018 (the buffalo or QuangHao’s), did you compare them soundwize? Have myself a (it seems not too bad) implementation of the ES9023 and am looking for something to challenge it with :-)

    • BlgGear
      2014/07/07 at 19:10

      I have not done a one-to-one comparison. The K2M is set up with headphones. The other DACs are in my main system Spec-wise, the new chip is a single DAC pair whereas the older ES9018 uses 8 DAC pairs and thus has better numbers. The new chip has better features such as a new filter, ability to receive 16-bit data (as in taking the data from a cd rom). The registers are better organized.
      I would guess the new chip is the follow-on revision to the ES9018 but aimed at the high volume market.

      • jack
        2014/07/21 at 20:06

        I would like to create a portable player for .wav/flac mp3. like http://head-direct.com/Products/?act=detail&id=158 ( well a lite version of course)
        In your project it is not said where comes the data from. does the arduino only provide volume/ lcd info ? do you need to connect the es9018 board to an USb board? (like this one : http://www.diyinhk.com/shop/audio-kits/63-isolated-xmos-dsd-dxd-384khz-high-quality-usb-to-i2sdsd-pcb-with-ultralow-noise-regulator.html )
        do you think its possible to read wav files fom sdcard via arduino and have it process with the es9018 , then use OPA627 ( they use 3 per channel on the Hifiman product) to headphone out?
        also dont you have a schematic of your device? It’s hard to figure out how the es9018 is connected to arduino etc only from pictures.
        thank you.

      • BlgGear
        2014/08/08 at 04:15

        Yes, the Arduino wit the supplied code only controls the features of the DAC chip. You need to connect a source to it through its I2S or spdif interface. There are Arduino solutions to play sound files stored in an SD card, but it is beyond the scope of this project.

  3. Derek
    2014/07/21 at 22:23

    Like the box concept -beats Perspex in terms of carving it up!

    I have one of these K2Ms from DIYINHK along with the ‘modified for bit-perfect volume control’ XMOS USB-i2S board. Works fine with both Voyage MPD on an Alix 2d2 and Volumio on a Raspi except that I cannot get the volume slider in mPod to control the volume. I have tried altering mpd.conf in various ways but the only way it works is if I enable ‘software’ mixing – which is not how it should work, I believe.

    What am I missing?

    PS I sent you a pm on diyaudio with more info.

  4. Valery
    2014/08/21 at 13:01

    Hello! I just buy DAC ES9018K2M from diyinhk and I want to connect bi to the Raspbarri Pi (with Volumio) trough I2S interface (only 3 wire + gnd, without Masterclock). How do you think, it will be work?

    Do I need to use in this case “ADDR” and “SDA, CSL, GND, 3,3 V” cintacts on the board?

    • BlgGear
      2014/09/05 at 23:00

      The pins you mentioned are for the I2C interface to control the DAC.

  5. jazzbear
    2014/10/10 at 16:56

    Hi GLT,
    A good project that is not expensive.
    I just have one question.
    Buono R3 has a variety of power system 3 volts or 5 volts.
    If it works in 3 volts then you do not need level converter?

    • BlgGear
      2014/10/10 at 19:43

      Yes, but unfortunately all low cost LCD displays are specified for 5V operation. It also “appears” that the DACs are 5V tolerant according to some reports, but the datasheet doesn’t explicitly says so, so better safe than sorry.

  6. Ryssen
    2014/10/12 at 16:55

    In the FAQ it says “The SPDIF input(labeled SPDIF IN) signal level requirement is 3.3V”
    is there a schema for such a device?

  7. Ryssen
    2014/10/12 at 17:26

    How much is the powerconsumtion on the digital and the analog side (3,3v)

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 208 other followers