My latest project - DAC + headphone amp

I fixed the last software bug on this today, so I'm officially calling this project "done". The goal was to create the highest quality, most transparent headphone amplifier possible with little comprimise.

- The signal path is TORX142L or AD8611 -> CS8416 -> AD1896 -> PCM1792 -> OPA4134 -> TPA6120A2.

- There's also an ATMega8L onboard which performs digital volume control - the volume knob feeds the Mega8's ADC a voltage, which digitizes/filters the sample and updates the digital attenuation register in the PCM1792. The Mega8 also handles automatic input selection, swapping back and forth between optical/coaxial inputs until the CS8416 locks.

- Power supplies (3.3V digital, 5V analog, +-12V analog) are regulated using LM1085 regulators. Rails and grounds have solid planes. Analog/digital grounds are connected using a 0-ohm resistor underneath the DAC.

- The oscillator is a cheap 5x7mm SMT XO from CTS. It measures better than any sort of XO/VCXO i've ever constructed.

- I'm using the AD8611 SPDIF circuit I made a thread about a while ago, which uses hysteresis (25mV) for stability whenever there's no input connected. Sorry Jocko :D

- Other parts... Case is a Hammond 1455L1601BK, front/rear panels are made by frontpanelexpress.com, headphone jack is a slimline Neutrik with gold contacts, and the spun aluminum knob is from Kilo.

How does it sound? Can't say anything bad about it. I love how I can have the volume cranked up all the way in a completely silent room, and I can't hear anything with no input playing. And with music playing, the sound is crystal clear... right now I'm listening to Mule Variations, and I don't know if it's placebo effect but I'm noticing all sorts of different instruments and background things that I never noticed before. Tom Waits makes a great sonic treasure hunt.

I'll test it on the Audio Precision at work sometime, which has better ears than I do.

On with the pictures:

front view:
[IMGDEAD]http://img155.echo.cx/img155/5456/hd117km.th.jpg[/IMGDEAD]

rear view:
[IMGDEAD]http://img155.echo.cx/img155/9333/hd127vi.th.jpg[/IMGDEAD]

4-layer, bare PCB:
[IMGDEAD]http://img155.echo.cx/img155/8062/hd13a3cj.th.jpg[/IMGDEAD]

The assembled PCB, during software hacking:
[IMGDEAD]http://img155.echo.cx/img155/617/headphoneamp8jt.th.jpg[/IMGDEAD]

And finally, here's the entire set of build files (gerbers, eagle files/libraries, etc) - feel free to tear them apart and critique me, or rip them off and build your own. Just don't make a million dollars off the design without buying me a beer. :D

http://rapidshare.de/files/2470563/HD1.zip.html
 
tobias_svensk said:
Is that spare board still at sale? :)

nobody's asked me for it yet... want it?


Robzy said:
Holly ****! Im mighty impressed! Just a couple of questions:

How hard was it to program the microchip?

and

Why do you need the resampler? Couldnt you just pass the output of the CS6416 onto the TI DAC?

Rob.

Programming wasn't hard. I soldered the unprogrammed Mega8L directly to the board and programmed it via a 6-pin header with an AVR ISP programmer... If you don't have an ISP, you can build a Ponyprog.

I'm using the AD1986 for jitter rejection - its sample rate tracking loop is far superior to the PLL loop characteristics of the CS8416.
 
Robzy said:

I was actually refering to the SRC4192, and i cant seem to find the AD1986 on your board anyway... :S.

Still, im flabbergasted at the design.

Rob.

I started out with the SRC4192, but it turns out the SRC4192's DLL loop has a corner frequency in the KHz range - the AD1986 in "lock" mode has a corner of a few Hz.

They're pin compatible, so I just soldered in the AD1986 instead and didn't bother recreating the part in Eagle.
 
Dac+Headphone amp

Hello qmarsh.

Completely and very very nice work you done there!

I am also interested in your construction files with schematic.

My email adress is [email protected]

Have you thought about a group buy for the pcb or how can I order one from you if so?

Just one questen: I have an cdplayer with digital output with ligthwire and a RCA plug output.
How can I connect one off the digital output to your DAC input?

Best regards

Kim
 
Re: Dac+Headphone amp

kimschips said:
Have you thought about a group buy for the pcb or how can I order one from you if so?

Just one questen: I have an cdplayer with digital output with ligthwire and a RCA plug output.
How can I connect one off the digital output to your DAC input?

Best regards

Kim

A toslink (optical) cable will plug directly into the back of the unit. To plug into an RCA output, I use a 75 ohm BNC video cable with a *gasp* RCA to BNC converter.

I haven't considered a group buy. I'm just throwing this project out there for people to hack and tweak. Audiophiles tend to be an opinionated and emotional bunch, and I'm sure I've offended a few folks by using plain bridge rectifiers, non-snubbed capacitance after the rectifiers, hysteresis on the coax SPDIF input, ceramic capacitors in the audio signal path, a cheap clock oscillator, blah blah blah...

Though I might make a new "fix what's wrong" version of the PCB. There's a couple of mechanical issues I'd like to address - you have to "shave" the transformers, nibble the corner off the LM1085-3.3 and dremel some clearance into the 1455L1601 case for everything to fit... you can avoid all of this by using a taller case. Also the -12V regulator runs a bit hotter than I'd like. Changes will involve going to a 1.6VA transformer for the 3.3V/5V power supply, and replacing the LM1085's with surface mount TO-252 packaged regulators that heatsink to the ground plane. I might also make the 0603 jumper underneath the DAC into a PCB trace.

Tobias, you mentioned buying the PCB first so it's yours. I'll e-mail you later today/tonight.
 
I am DYING to know how you did input selection! I am getting started in AVR programming myself and I am building a DAC w/ multiple inputs right now. As far as I can guess from your schematic, you had each input go in as a different format, and then changed formats until one locked, is that correct?

How fast was that thing switching? I would think you would end up losing a few samples in the process when you first start.
 
Porksoda said:
I am DYING to know how you did input selection! I am getting started in AVR programming myself and I am building a DAC w/ multiple inputs right now. As far as I can guess from your schematic, you had each input go in as a different format, and then changed formats until one locked, is that correct?

How fast was that thing switching? I would think you would end up losing a few samples in the process when you first start.

I switch back and forth every 250ms until the CS8416 locks to something.