Hifiberry DAC+ Pro - HW mods anybody?

Hi there.

Meanwhile - it took me while - I have the SW (Arch + squeezelite + modifications) for my PI2 and a Hifiberry DAC+ Pro under control.
I'm surprised how good the device sounds already at this point.

I'm wondering if anybody has applied HW modifications to the Hifiberry DAC+ Pro.

On the first glance it seems that adding a couple of Oscons or similar to the power rails might be the first step!?!?

Any hints are appreciated.

Thx
 
Last edited:
Hi folks.

Seems nobody is using this DAC. Hmmh. 🙄


I looked up the datasheet and analysed the board layout.

They feed all power inputs (AVDD and DVDD and chargepump) to the chip through a single regulator. There's not much buffering onboard.

Especially the AVDD input looks pretty bad. It's basically the last power input in the
chain seen from the regulator and close to none decoupling exists.

I don't see much separation (LC) of the digital part from the analog power part.

I guess I need to try some mods now....

Any further hints are welcome.
 
Last edited:
I got mine running last weekend, but haven't listened to it in a system. Running it in on my bench for awhile first.

I'm starting with a good stiff linear regulated supply to the on-board power input along with adding a cap where they left a couple of pads open, then next will run it with separate power (from another stiff linear regulated supply) for the Pi (along with a local filter cap at the power input).

Longer term I was thinking of additional separate power feeds for the clocks and AVDD.

I'll be comparing to an IQAudio DAC (here already) along with a MamboBerry DAC (inbound). I'm not sure how mod-friendly they will be, the IQAudio DAC doesn't look nearly as mod-accessible as the HiFiBerry.

I also have an I2S-out only Pi going to a Soekris DAM DAC.

Greg in Mississippi

P.S. I'm using the standard PiCorePlayer load at this point. Any suggestions on distro and tweaks would be appreciated. My LMS server has your recommended tweaks, and all of the server HW (Zotac PI320-W2, small Netgear AV switch, and a small D-Link router used as a remotely-located WiFi access point for control via an IPad Mini) each have separate high quality linear supplies.

I think this is a good start.
 
Hi Greg.

Good to see you over here.

I have mine hooked up to an iFi iPower supply.

People report that the iPower clearly betters this or that linear supply. I'll check that out later. I do have two different linear supplies around.

I hooked up a 49000uf Rifa cap that I had around right in front of the combo last weekend.
That did improve the situation.

I added today another 2kuF on the input in front of the reg and added piggyback style (C6,C10,C11) 330uf Oscons on all 3 power pins. I might manage to listen to it tonight.


If you take out the 0R (R14) in the power input area you can easily feed external 5V to the pads closeby (P3).

However. I'm wondering if a LiFePo4 wouldn't be the best choice. The only voltage needed for the board is 3.3V. You could simply pass the reg by.
Or, if you have a good linear 3.3V supply at hand, you can use that one. It wouldn't make sense to have two regs (5V and 3.3V) in the chain.


And then I'm wondering if that output filter (R3,R6,C7,C8) (150khz) is really needed. These filters can have certain impact to the sound. I might try to pass that one by.


I btw hardwired the amp to the DAC. These RCA jacks are obviously not the best on the market.


One SW hint. Checkout the filter setting in alsamixer. They do impact the sound. I'm running
the steepest (high attenuation) for the time being. But that one won't work with SRs > 48khz in my case.
 
Last edited:
Soundcheck,

Great info! Good to know about the 3.3v being the only voltage needed by the Pi, I didn't know that. I can just as easily feed 3.3v directly into the 3.3v pin when I power it separately.

Your power setup sounds good. I'm curious what you find comparing the iFi supply to good linears. I'm not an anti-SMPS bigot, I'm using amps with SMPSs, but most SMPSs haven't been engineered to sound good IMHO.

My current supply for the DAC/Pi combo has good diodes and a 15,000uf or so raw DC cap, 2 LT3083 regs (one set to 5v, one set to 3.3v) and about 5,000uf on the output of each. When I split the DAC and Pi, the Pi will get that supply and I'll use another with 30,000uf raw DC and a good low-noise ADM715x or TPS7A47xx reg on the output. I do plan to try it first with a 5v input, but also try later with a 3.3v input bypassing the on-board regulator.

And I just remembered that when I was poking around, I thought I saw that part of the DAC seems to be powered from the Pi 3.3v. I'll check again, but if I'm right, I'll cut that trace when I power the Pi separately and use a 3rd supply there.

I agree that LiPoFe4 might be ideal for this setup. See what people are doing over at Tir Na HiFi and also Barrows' posts about his battery-powered server on CA. Not sure whether just powering the Pi with battery by itself would be a significant step if you have good supplies for the rest or if you'd get the most from using 3 batteries, one for the Pi, one for the portion of the DAC currently powered from the Pi 3.3v, and one for the rest of the DAC.

Agree on the RCA jacks. I also had planned to replace the filter C's with PPS chip caps at some point, but in my experience, the power stuff will make a MUCH larger difference.

And of course, thanks for the alsamixer tip.

Later!

Greg in Mississippi

P.S. I'll post pix over the weekend. Also see the HiFi Berry forums, there's a post over there in a thread titled 'DAC Pro Analog Output FIlter Resistors' showing a guy powering his separately, but he hasn't said anything about that. Of course, if my poking around discovery that some of the DAC is powered by the Pi 3.3v, it may not make much of a difference until that is separated.
 
Last edited:
<SNIP>
And I just remembered that when I was poking around, I thought I saw that part of the DAC seems to be powered from the Pi 3.3v. I'll check again, but if I'm right, I'll cut that trace when I power the Pi separately and use a 3rd supply there.
<SNIP>

Just checked again, yup, the PCM5122 DVDD & the clocks are powered by the 3.3v from the Pi.

Prolly much better to at least feed a well-regulated 3.3v (or LiPoFe4) into the Pi 3.3v pin with local decoupling there and at the DVDD and clocks.

Or even better, cut that link, feed the Pi and the DAC with separate 3.3v feeds. See John Swenson's comments on CA on the power requirements of computers, I would likely follow that advice for the Pi side.

Greg in Mississippi
 
Ah. OK.

I didn't realize that DVDD and clocks are 3.3V PI powered. If so, that'll probably be all but
a reasonable solution. I'm wondering if that is worse than being powered from the single 5V->3.3V reg.
Thx for the hint. I need to look into it again.

There's also a 2nd reg onboard. I have to look into what's powering that one.
It might be not that easy to just feed 3.3V into the 5V pads and pass the 1st 3.3.V reg by.


Another SW hint related to alsamixer:

If you look into the alsamixer settings,

make sure that the "Digital" control, which is the DACs internal digital volume control, is set to "0db" !!
The DAC offers > 0db settings. But >0db leads to clipping/distortions.
There are patches/patched drivers/kernels out there which won't allow to go higher then 0db!!
Basically 0dB becomes 100% instead of 81% if the patch is applied.
I applied the patch to my own kernel. I don't know how others handle this. I think Volumio also has the patch in.

And then, both "Analog" controls should be maxed out.

Once finished with alsamixer run:

Code:
alsactl store
sync


I'll get a Mamboberry by the end of the week for testing. A friend of mine owns one. Looking forward to it.

However. The Hifiberry DAC+ Pro is the only PI DAC I'm aware of, which runs a dual clock as master and slaves the PI I2S!! That's pretty unique.
 
Last edited:
Oooh, kewl, more alsa tips. MANY THANKS FOR THAT, I have a lot to learn in this area (& on Linux-based systems in general).

Back to the DAC+ Pro... I too thought there was a 2nd LDO on the board, but after some poking around with a multi-meter, I wasn't so sure.

While the chip near the 5v input (U2?, I don't have it in front of me right now) is clearly an LDO, neither U3 or U4 appeared to be connected to the 5v. Both seemed to be powered from the Pi 3.3v.

I haven't had a chance to poke around this more, but my guesses were that U3 was a microprocessor possibly providing some programming to the PCM5122 & also communicating with the driver to tell it whether the DAC was a Pro or standard (determining whether to use the BCLK to clock the output I2S). Notice that it is directly connected to the switch labeled JP1, which I suspect is used when updating the firmware.

And U4 just looks like a flip-flop used to reclock or sync one of the I2S output lines to P4.

Take a closer look and see if you can get a better read on what these are.

That the DAC+ Pro did provide a clocking signal to the Pi was the main reason I was interested in it. I also don't know of any others doing that. I've seen other BCLK-based schemes done in HW (Not for the Pi, tho), but I hadn't before heard of the master-slave mode function of the PCM51xx chips that makes this work so easily on the DAC+ Pro.

I've heard that the ESS DACs (like the ES9023 in the MamboBerry) do sound better synchronously clocked. I've used an EUVL ES9022 card for many years in a Windows-based computer player setup, one thing I want to do with it is drop in an Ian FIFO Reclocker to both lower the jitter AND sync-clock it.

So many projects, so little time!

Greg in Mississippi

P.S. Given that it too uses the PCM5122, but does not do the DAC+ Pro reclocking, I am puzzled why a poster in one of the Pi-threads here where you mentioned the MamboBerry said his friend liked the IQAudio DAC better. At first (and second) glance, it doesn't do any reclocking of the jittery Pi I2S and doesn't appear to do any of the common power tricks (such as the separate feed of the DAC+ Pro or the on-board linear supply of the MamboBerry). It MIGHT have a bit more sophisticated power setup as regards capacitor tiering and close regulator positioning, I need to find time to poke around on it a bit too.
 
Last edited:
Since the DAC chip has CMOS opamps for output stages I'd suggest a high input impedance buffer (darlington transistors work fine) biassed into classA with CCS loads. You'll need a negative rail which could be a MAX660 running from the +5V to give -5V.
 
Since the DAC chip has CMOS opamps for output stages I'd suggest a high input impedance buffer (darlington transistors work fine) biassed into classA with CCS loads. You'll need a negative rail which could be a MAX660 running from the +5V to give -5V.

Good tip, Abraxalito. I'm running mine in a multi-rail test-bed setup, I have +-15v rails available & can easily try one of the monolithic buffer chips like the BUF03 or even a JG Buffer/Filter board.



I could not hear a difference between the pro and the normal hifiberry DAC+. The Duriosound (I have the double one which contains one pro and one basic board doubled up) is a big step up in sound but then again it is also more expensive.

Thanks for bringing the Duriosound up. I went and looked at it... they even have the schematics on the website! It uses the PCM5102 chip (more basic version of the PCM5122 as used in the HiFi Berry DACs). I suspect the power supply implementations will make a larger difference in SQ than about anything else in these setups (such as output filter components or even the HiFiBerry DAC+ Pro Pi-clocking setup), which is why I'm focusing on that first. Duriosound did apply significant effort and cost here. I may have to look at adding one of those to my menagerie of Pi-DACs.

What did you do to power the HiFiBerry and what do you use on the Duriosound?

Greg in Mississippi
 
What did you do to power the HiFiBerry and what do you use on the Duriosound?
HifiBerry I've only fed with standard phone charger. The Duriosound I have the option of feeding it through the microusb of of the pi. DC on the Durio. AC on the durio. I haven't compared them yet. I think I'll settle on feeding the Durio with AC. When one feeds the durio...it also feeds the clean dc to the pi.

My durio is also doubled up...so it has never been a fair comparison though.

So I've only compared the berry pro stock. But ofcourse one can now tweak it with a better psu
 
Last edited:
@Greg
The DAC driver uses the GPIO pins to switch the clocks. I'd guess that's what the flipflop is for.

@BAS

A standard phonecharger !?!?
I'd suggest to at least try a $25 Anker battery charger with a little buffer and HF filter.
Have you followed the Soekris DAC thread?? There's a common sense that
feeding that DAC with AC is worse then feeding it with quality DC. I'd guess that applies
to other DACs as well.

And make sure that the HifiBerry is properly implemented from the SW side.
First the alsamixer setup needs to be done properly. (see my earlier comments)
And 2nd you need to make sure that the onboard clocks are actually used!
If not - poor DAC/driver implementation - you run the same mode as the standard HifiBerry DAC+ !!!



The HifiBerry (in my setup) comes very close to my RME FF UCX. In some areas it's IMO even better then the UCX (in some it's worse - tends to boom slightly on complex pieces) .
I have to say so, that my UCX runs with a linear supply and all kind of USB filter gadgets.
The performance of the HifiBerry DAC must be considered great considering its 30 times less then my RME DAC (which of course delivers tons more channels and other features).

One more comment: The iFi iPower doesn't come with a 5,5mm DC to micro USB adapter "yet". Thorsten Loesch told me that they might add such an adapter to the box.
People with an iPower without it might be able to order just the adapter later on.
 
@Soundcheck,

U4, which I suspected was a flip-flop, looks like it is only connected to the Pi-supplied 3.3v power, ground, the clock outputs, and the MCLK output on the P4 I2S output... so probably not a flip-flop, but likely some sort of output buffer. There's a good picture of it on this article: https://support.hifiberry.com/hc/en-us/articles/205711451-DAC-Pro-connect-external-I2S-DACs

The clock enable pins (bottom right on each clock when the writing on the card is right-side up) seem to only be connected to the PCM5122, probably pins 15 or 16 and 19, which are GPIO for the DAC.

In the HiFiBerry info on the web for the DAC line, they say:

"Integrated EEPROM for automatic configuration"

This is what I believe U3 is... sorry, not a microprocessor as I said above. How I think this works is that the EEPROM is queried by the driver to determine if it is feeding a DAC+ standard or Pro, then it uses I2C (via GPIO2-3... see here: https://www.hifiberry.com/guides/gpio-usage-of-the-hifiberry-products/ ) to configure the PCM5122 for slave or master mode, which clock to enable via the GPIO pins, and other things, as appropriate.

Of course this 'how this works' is ALL A GUESS and I might be wildly wrong. Also, I don't have mine in front of me, so I'm using the last picture from this HiFiBerry Forum thread to trace the connections " https://support.hifiberry.com/hc/en...147719-Dac-Pro-analog-output-filter-resistors ". So I might be wrong on who connects where, but that jives with what I remember I saw when I was poking it.

Greg in Mississippi
 
I could not hear a difference between the pro and the normal hifiberry DAC+.

You are not alone, Bas. I organized a "blind" listening test, DAC+ vs DAC+ Pro......

Factoring "out" the one in two chance, 50/50, of guessing right, only one person from 6 consistently exceeded the statistical probability of identifying the Pro board correctly. (Which is even more astonishing when you actually look at ns level jitter when using the Pi onboard clocks, compared to ps jitter from Pro board clocks.)
 
I'm running mine in a multi-rail test-bed setup, I have +-15v rails available & can easily try one of the monolithic buffer chips like the BUF03 or even a JG Buffer/Filter board.

The JG buffer (from memory, mind) has a lowish input impedance, I seem to recall about 40kohm? But it must be possible to tweak it higher as its using a discrete JFET. I'd suggest 200kohm minimum. BUF03 natively has an extremely high Zin so should do a great job, albeit at a considerable price 🙂
 
You are not alone, Bas. I organized a "blind" listening test, DAC+ vs DAC+ Pro......

Factoring "out" the one in two chance, 50/50, of guessing right, only one person from 6 consistently exceeded the statistical probability of identifying the Pro board correctly. (Which is even more astonishing when you actually look at ns level jitter when using the Pi onboard clocks, compared to ps jitter from Pro board clocks.)

Have you seen any measurements confirming that difference?

Considering that they obviously power the clocks and DVDD with the rather poor Pi-3.3V, I'm wondering what's left of ps range jitter.
Perhaps that's what your blindtest result reflects.
Though I'm personally not trusting any blindtest that I havn't conducted myself. There are too many variables at play to get to a final and generic conclusion.
 
Last edited: