USB Headphone AMP DAC upgrade

Hello,

I built an USB-C Headphone Amp which works quite nicely (based on this tutorial: Phil's Lab #101). The IC (I used TI PCM2902 insted of PCM2900 in the video for SPDIF in/out) is not the newest model and the integrated DAC maybe not the best, so I wanted to do an upgrade here.
I could use the PCM2902 as a bridge USB-->SPDIF and I also want to connect a streamer with SPDIF (optical) out (probably Wiim mini to use with Tidal connect).
So I am looking for an IC with either direct SPDIF input or I need to do conversion to I2S in between. Are there any recommendations for ICs which are available at the common distributors (Mouser, Digikey) and best case there were already used in some projects where I could build upon? 🙂 Because of course I know the integration is at least as important as a nice measuring chip, so for me it would be great if there is more to find than only the datasheet.

For the input I have seen these ICs/devices multiplet times here at the forum:
S/PDIF to I2S:

-DIR9001
-CS8416

USB to I2S:
-"i2soverusb" board
-"amanero" board
(both quite expensive but would allow highres. Or would it also be possible to use the Atmel Controller on my PCB and flash it with some available firmware?)

also there is an amanero (clone?) with integrated S/PDIF)

I would do the layout with KiCAD and and order already soldered boards, so SMD is not a problem.
Do you have any recommendation in which direction to go?
Thank you very much in advance!

Best regards
Florian
 
Hi Florian,

Its not quite clear to me what you want to do. You have some kind of HPA with a built in dac? If so, what do you mean by upgrade it? Replace the whole thing with a new design, upgrade the existing board with a new dac chip, or what? Do you have a schematic of what you have so far?

How good do you want whatever it is to be, and do you have budget in mind?

Also, the reasons for using I2SoverUSB aren't just for high res. It provides galvanic isolation from the USB bus, it has pretty good clocking, it can output SPDIF and or I2S, it can handle DSD, and it can be driven from an external master clock if desired.

Mark
 
Hi Mark,

yes, I have a custom PCB with the PCM2902 as a DAC (USB --> analog), it can also be used as USB --> SPDIF converter. After the DAC I have the amplification stage on the PCB which is fine so far/I don't want to touch at the moment.
The 2902 was chosen because of its simple integration, no programming is needed (and if I could avoid this as much as possible it would be great).

But the IC is quite old, so the specs are not the best and since a lot of tracks are available in highres on Tidal now I would like to do an upgrade here to support at least 24bit/192kHz and improve the specs regarding THD+N and dynamic range.

Since my streamer can output only SPDIF I would need a DAC chip which can handle this or SPDIF to I2S conversion. For the USB part I also found this which I could maybe integrate: OpenUAC2

Regarding "how good"/price: The most rational thing to do would maybe to simply buy something like the Fiio K11 which is around 140$. But of course this is no fun and I would have at least two boxes (streamer + DAC incl. Amp) and not one nice enclosure with everything in it - also no diy :-/. But I would set this as a target regarding audio quality.
I have seen there is a thread with over 400 pages for the ES9038Q2M (havent read them all so far but working on it 🙂 ) which seems like a nice DAC from the datasheet, also the ESS ICs seem to be very popular these days. The ES9038Q2M is available at Mouser and with ~15$ the price is ok for me, over 80$ for the ES9038PRO seems a bit too high for a hobby project in my opinion. So something in the lower two-digit range for the DAC IC would be ok. The rest of the components shouldnt be to expensive, I would not look for PCB assembly cost/case atm.

DSD/external master clock is not planned so far.
 
If you need S/PDIF to work up to 192kHz, DIR9001 is not an option. It works only up to 96kHz.
Basically, you need a USB->I2S interface, a S/PDIF receiver IC and a mux to switch dac between these two sources.

However, if you are goint to use ES9038Q2M you do not need S/PDIF receiver since it has such receiver built in.
 
ES9039Q2M is only $17 at Mouser. Might sound a little better than the older ES9038Q2M version. Just follow the data sheet.

Or if you don't know how to design a dac board, we can probably dig up the ESS Evaluation Board design files for ES90398Q2M. You need at least a 4-layer board for any of these modern dac chips.
 
Looks like it fit your needs best: good DAC + S/PDIF receiver in one chip. You'll also be able toswich it to I2S bus from USB-to-I2S converter.

A bit of promotion of my project 🙂
If you'd need to have some control from PC for your DAC, please have a look:
https://www.diyaudio.com/community/...tichannel-input-output-interface-york.413504/

It would allow to steam audio + create an app to control your device (switch from usb to i2s, manage digital filter settings in the dac etc.)
 
thanks for the hint, if possible I want to avoid software/programming as much as possible - how far can I get there with the ESS DACs? I would than have to decide if I want to use SPDIF or I2S for the DAC and adapt my sources before it, right?

Or if you don't know how to design a dac board, we can probably dig up the ESS Evaluation Board design files for ES90398Q2M

I would probably get it to work somehow, but the goal is good performance not just "working" 🙂. So any help is appreciated.
 
thanks for the hint, if possible I want to avoid software/programming as much as possible - how far can I get there with the ESS DACs? I would than have to decide if I want to use SPDIF or I2S for the DAC and adapt my sources before it, right?
ES90398Q2M has to be configured by writing registers thru i2c interface, it is something that needs to be done after power up.
Then input (I2S/SPDIF) can be selected by GPIO.