No idea what this reactiveness means.
The headphones look inductive, that's what he means I think. You could try putting a smallish cap across the HPs, say 2n2, that might also get rid of those annoying 'spikes'.
The decoupling is related to the power supply pins of the DAC, not pin7.
Thank you Richard, as usual. A small cap in parallel to the headphones definitely eliminates the spikes. Higher values around 47n seem to remove them more effectively without compromising much high frequencies in my case, but I still see a bit of the sampling ladder and the sound doesn't convince me yet. High frequencies are far from sine and synths tend to sound harsh. I guess this mode needs much more time and research.
Decoupling the supply is not making much of a difference to me.
Decoupling the supply is not making much of a difference to me.
The harshness might be down to putting DC through the HPs. I'd not give up until you've made the current through the HPs bipolar with an additional CCS.
That's encouraging. I tried to ground lift using PNPs, using what I had at hand and avoid using an opamp which was noisy on a previous trial. Connected the negative of the headphones to the ground lift (BD139's emitter), which effectively measured 1.6V from GND. The positive of the HPs to a CCS sinking roughly half current (11mA). I probably did something wrong, the scope shows now only half wave.
One problem with your 'ground lift' circuit is it can't source any current, it can only sink it. Therefore positive half cycles are fine, but on the negative half cycles there's nothing to support the 1.6V reference and it'll collapse. Perhaps this explains the truncation of those negative half cycles in the scope pic. You could fix the BD139's inability to source current with (yet another) current source from VCC to its emitter.
Do you mean something like this? If this goes in the right direction, I don't know if the CCS biasing resistor R4 should be grounded to BD139's emitter, or to GND as drawn in the diagram.
I'll be happy to listen and measure this I-out DC free, hoping to get a working circuit. 🙂 But I suspect now that the aggressiveness I hear might come from digital signal integrity. It is quite noticeable as artifacts when digital volume is low, even with an I/V resistor and passive RLC filter... Might be the lack of an USB isolator or buffered I2S streams... trying to find it out.
I'll be happy to listen and measure this I-out DC free, hoping to get a working circuit. 🙂 But I suspect now that the aggressiveness I hear might come from digital signal integrity. It is quite noticeable as artifacts when digital volume is low, even with an I/V resistor and passive RLC filter... Might be the lack of an USB isolator or buffered I2S streams... trying to find it out.
Yes, that's what I had in mind for the CCS.
If you're getting artifacts noticeable at low volume, you might have a damaged TDA1387 in your stack. The way to check is turn the digital volume all the way down to zero, if you still get a nasty hissy sound then that signals a dead DAC chip.
If you're getting artifacts noticeable at low volume, you might have a damaged TDA1387 in your stack. The way to check is turn the digital volume all the way down to zero, if you still get a nasty hissy sound then that signals a dead DAC chip.
When I lower the digital volume I get indeed a nasty sound. It remains to volume changes like a dim replica of the track, distorted like in overdrive. This is very noticeable with 4x oversampling.
The strange thing is I tried with other stacks and I perceive the same thing just dimmer, but anyways I measured the voltage at vref of each chip in the 24x stack. They all show around 0.83V, only one is lower at 0.816V. I grounded each vref pin with a 50ohm resistor, which seemed to deactivate them one by one, but the nastiness did not disappear.
A good thing along the way is that I found out that a 2200uF at power supply brings a lot of life, so I left it installed. A small 1uF in parallel to it helps also a bit with the referred noise.
The strange thing is I tried with other stacks and I perceive the same thing just dimmer, but anyways I measured the voltage at vref of each chip in the 24x stack. They all show around 0.83V, only one is lower at 0.816V. I grounded each vref pin with a 50ohm resistor, which seemed to deactivate them one by one, but the nastiness did not disappear.
A good thing along the way is that I found out that a 2200uF at power supply brings a lot of life, so I left it installed. A small 1uF in parallel to it helps also a bit with the referred noise.
Good news here!
The 'DC sink' circuit works fine on breadboard. With the values on the previous diagram DC went down to 200mV. Lowering CCS resistors to 47ohm it went down to 27mV, which seemed to be optimal because further down it would start increasing again. Also shrinking the CCS saturation helps: increasing the 'CCS bias resistor' from 6.8k to 13k brought finally DC down to -3mV, even though sometimes it comes back to 30mV or so.
The case is there is almost no more constant high DC 🙂 I suppose this will increase dynamics on the HP membranes and time will show me the actual benefits of it.
I also got quite rid of the annoying noise. Yes... it was 'ringing'. A 100n at supply helped. Then had to solder another 4 along the tower, a 5th didn't make any audible difference for me. I know this makes in total 500n, probably I should get some smaller 10n ceramics and solder 10x along, as @Zoran suggested. Thanks for that advice!
How (un)linear should this expected to be? Does the droop grow when so many chips are stacked? At 0dBFS I'm getting around -6dB@40Hz, while only -14dB@15kHz. That's much more than the normal -3dB@20kHz droop. My scope is quite basic and I'm getting familiar to it, but those are currently my measurements.
Any suggestions to my primitive 'ground lift' @abraxalito ? I'm not sure if I should use diodes instead at the BD136's base.
Have a nice weekend you all.
The 'DC sink' circuit works fine on breadboard. With the values on the previous diagram DC went down to 200mV. Lowering CCS resistors to 47ohm it went down to 27mV, which seemed to be optimal because further down it would start increasing again. Also shrinking the CCS saturation helps: increasing the 'CCS bias resistor' from 6.8k to 13k brought finally DC down to -3mV, even though sometimes it comes back to 30mV or so.
The case is there is almost no more constant high DC 🙂 I suppose this will increase dynamics on the HP membranes and time will show me the actual benefits of it.
I also got quite rid of the annoying noise. Yes... it was 'ringing'. A 100n at supply helped. Then had to solder another 4 along the tower, a 5th didn't make any audible difference for me. I know this makes in total 500n, probably I should get some smaller 10n ceramics and solder 10x along, as @Zoran suggested. Thanks for that advice!
How (un)linear should this expected to be? Does the droop grow when so many chips are stacked? At 0dBFS I'm getting around -6dB@40Hz, while only -14dB@15kHz. That's much more than the normal -3dB@20kHz droop. My scope is quite basic and I'm getting familiar to it, but those are currently my measurements.
Any suggestions to my primitive 'ground lift' @abraxalito ? I'm not sure if I should use diodes instead at the BD136's base.
Have a nice weekend you all.
Attachments
As regards your ground lifting circuit I can only suggest maybe use an IR LED as a voltage reference (fed from a resistor or CCS with ~5mA) and delete the two BC559s. The anode terminal of the IR LED goes to BD139's base and its cathode goes to GND. The IR LEDs I use are very low noise and have a forward voltage ~1.2V. I think they're 940nm.
Your droop numbers are very suspect, -14dB@15k isn't droop, its a canyon!
Your droop numbers are very suspect, -14dB@15k isn't droop, its a canyon!
Thanks for the suggestion, I'll dig into the IR LED alternative. I suppose that the amount of current injected into the BD136's emitter, aka. ground lift, should be doubled when having the two channels of the HP mounted on it? Also, R3 should be somewhere around 30-22ohm?
I really need to do those frequency response measurements again. It is very strange.
I really need to do those frequency response measurements again. It is very strange.
The saga continues...
The canyon I was having (-11dB @ 15kHz) was mostly due to the CIC digital filter I was using. Unfortunately I don't have proper knowledge to modify it and, without any filters, the 24x I-out design appears very flat to me but a bit of an harmonics festival within the audible range.
White noise on unfiltered NOS 24x (10dB/div)
20kHz on unfiltered NOS 24x / with 80% attenuation (20dB/div)
The way things are, one can clearly hear a 20kHz sine wave–which is probably impossible for me. On the scope it can be seen that loud harmonics (-20dB quieter the 20kHz signal) form at 18kHz and 14kHz. Also, a -40dB peak is visible at 8.2kHz and milder ones down to 4kHz and 2kHz. Probably it's those peaks, rather than the effect of ultrasonic images, what I'm listening to. Or maybe both, as one might be the cause of the other. I also don't know if this is technically called THD or IMD.
When listening to music instead of a sine-wave this effect seems to render into an immersive experience, or a sense of space–maybe similar to a reverb? I'd dare now to say. Infinite harmonics interact with each other, I assume, quite the way our perception works in real life. The drawback however being the loss of sharpness or punch quite needed sometimes, particularly to feel the contour of synthesis or filters. It was maybe my misconception so far that an I-out design would be more transparent in this sense. Unless I'm doing something wrong, I'm left to the idea at the moment that a filter is quite inescapable to mild down 'images' at least a little bit.
The canyon I was having (-11dB @ 15kHz) was mostly due to the CIC digital filter I was using. Unfortunately I don't have proper knowledge to modify it and, without any filters, the 24x I-out design appears very flat to me but a bit of an harmonics festival within the audible range.
White noise on unfiltered NOS 24x (10dB/div)
20kHz on unfiltered NOS 24x / with 80% attenuation (20dB/div)
The way things are, one can clearly hear a 20kHz sine wave–which is probably impossible for me. On the scope it can be seen that loud harmonics (-20dB quieter the 20kHz signal) form at 18kHz and 14kHz. Also, a -40dB peak is visible at 8.2kHz and milder ones down to 4kHz and 2kHz. Probably it's those peaks, rather than the effect of ultrasonic images, what I'm listening to. Or maybe both, as one might be the cause of the other. I also don't know if this is technically called THD or IMD.
When listening to music instead of a sine-wave this effect seems to render into an immersive experience, or a sense of space–maybe similar to a reverb? I'd dare now to say. Infinite harmonics interact with each other, I assume, quite the way our perception works in real life. The drawback however being the loss of sharpness or punch quite needed sometimes, particularly to feel the contour of synthesis or filters. It was maybe my misconception so far that an I-out design would be more transparent in this sense. Unless I'm doing something wrong, I'm left to the idea at the moment that a filter is quite inescapable to mild down 'images' at least a little bit.
Attachments
A year and a half later, this thread was my best induction into audio electronics–by a remarkable teacher. Sticking to the original need, a monitoring output stage for a DIY portable field recorder I've been working on, I'm currently prototyping the following circuit.
I'm not fully sure, but I think this should work nicely. The source is 4x TDA1387. Two OPA1622 as HP drivers and stiff VGND, so the output is capacitor-less. The combination of LC filter and sallen-key should form a 3rd order filter. I intend to oversample the DAC by 4x, so the first image should appear at 96kHz (-50dB according to the simulation).
A few things I don't fully understand:
1. The coupling capacitor after the inductor (1uF) together with the IV resistor (750) should form an RC filter with fc 212Hz. Obviously I don't want such HPF, I kept that capacitor's value low to use a film cap, but I'm puzzled on why the simulation doesn't show the expected HPF. Is it because there is not yet any voltage?
2. I added 100R in series to the OPA's feedback loop, to avoid interference (cellphones) coming in through the headphones. I followed this thread on that. Is this allright?
The IV filter has a peak of +3.5dB at 23kHz, to compensate NOS droop.
A 1000uF capacitor at the power supply decouples the whole circuit. Ripple is of great concern to me, particularly to avoid the circuit affecting neighboring preamps. I've noticed in prototypes that when headphones are loud, neighboring preamps feedback internally. Having the headphones grounded on an OPA VGND seems to help minimizing ripple, since the phase of its current draw is opposite to the OPA drivers'.
Overall, just welcoming any comments or observations regarding the design, before it goes to print.
–Domingo
PD: @abraxalito , I still couldn't find the right moment to assemble the Dorati Kit you sent me last year 😳. I realized that the output current wouldn't be enough for low sensitivity 32ohm headphones or IEMs, or that the output voltage would be too high to drive directly my loudspeakers amplifier. But it really awaits like a treasure, it must sound heavenly with high impedance HPs.
I'm not fully sure, but I think this should work nicely. The source is 4x TDA1387. Two OPA1622 as HP drivers and stiff VGND, so the output is capacitor-less. The combination of LC filter and sallen-key should form a 3rd order filter. I intend to oversample the DAC by 4x, so the first image should appear at 96kHz (-50dB according to the simulation).
A few things I don't fully understand:
1. The coupling capacitor after the inductor (1uF) together with the IV resistor (750) should form an RC filter with fc 212Hz. Obviously I don't want such HPF, I kept that capacitor's value low to use a film cap, but I'm puzzled on why the simulation doesn't show the expected HPF. Is it because there is not yet any voltage?
2. I added 100R in series to the OPA's feedback loop, to avoid interference (cellphones) coming in through the headphones. I followed this thread on that. Is this allright?
The IV filter has a peak of +3.5dB at 23kHz, to compensate NOS droop.
A 1000uF capacitor at the power supply decouples the whole circuit. Ripple is of great concern to me, particularly to avoid the circuit affecting neighboring preamps. I've noticed in prototypes that when headphones are loud, neighboring preamps feedback internally. Having the headphones grounded on an OPA VGND seems to help minimizing ripple, since the phase of its current draw is opposite to the OPA drivers'.
Overall, just welcoming any comments or observations regarding the design, before it goes to print.
–Domingo
PD: @abraxalito , I still couldn't find the right moment to assemble the Dorati Kit you sent me last year 😳. I realized that the output current wouldn't be enough for low sensitivity 32ohm headphones or IEMs, or that the output voltage would be too high to drive directly my loudspeakers amplifier. But it really awaits like a treasure, it must sound heavenly with high impedance HPs.
Attachments
Welcome back!
On question 1) its because the DAC is current output. The input voltage (to the HP filter) therefore rises in perfect compensation for the LF roll-off so you get a flat result in sim at the output. But in the real-world it won't work as the DAC needs its output voltage defined by the external circuit - without that its output saturates at one end or the other of its compliance range.
The opamps are supposed to be Sallen-Key LPFs? If so the cap values don't look right and the 100R resistors in series I'm not sure of their function. I haven't checked out your link yet though.
About the Dorati - how insensitive are the IEMs? Dorati's current output can be tweaked upwards a little bit so might be workable. The output voltage from Dorati can be reduced if you have digital volume control available.
Incidentally I've very recently returned to designing with TDA1387 after a bit of a break from it, check this out - https://www.diyaudio.com/community/...l-multibit-dac-adventures.343834/post-7794390
On question 1) its because the DAC is current output. The input voltage (to the HP filter) therefore rises in perfect compensation for the LF roll-off so you get a flat result in sim at the output. But in the real-world it won't work as the DAC needs its output voltage defined by the external circuit - without that its output saturates at one end or the other of its compliance range.
The opamps are supposed to be Sallen-Key LPFs? If so the cap values don't look right and the 100R resistors in series I'm not sure of their function. I haven't checked out your link yet though.
About the Dorati - how insensitive are the IEMs? Dorati's current output can be tweaked upwards a little bit so might be workable. The output voltage from Dorati can be reduced if you have digital volume control available.
Incidentally I've very recently returned to designing with TDA1387 after a bit of a break from it, check this out - https://www.diyaudio.com/community/...l-multibit-dac-adventures.343834/post-7794390
Good to hear back from you Richard!
My project looks rather boring compared to your new 1000DACs 😀 But I'm back to it after spending much time with an AKM multibit, which I don't really enjoy. I'm tied to the OPA driver though, for the small footprint and 'alias-free' output I need for this application.
The opamps are supposed to be Sallen-Key LPFs, I guess you are rightly questioning the damping factor not being butterworth? Here goes another attempt.
I placed the IV resistor at the DAC's output, or it would have never work in real life–if I follow you well.
No need for NOS droop compensation maybe, because the DAC will be 4X oversampled?
RLC filter (fc 44.1kHz) + Sallen-key (fc 44.1kHz), should make a 4th order LPF. Sim shows -26dB at Nyquist (88.2kHz).
Would this be any good?
My project looks rather boring compared to your new 1000DACs 😀 But I'm back to it after spending much time with an AKM multibit, which I don't really enjoy. I'm tied to the OPA driver though, for the small footprint and 'alias-free' output I need for this application.
The opamps are supposed to be Sallen-Key LPFs, I guess you are rightly questioning the damping factor not being butterworth? Here goes another attempt.
I placed the IV resistor at the DAC's output, or it would have never work in real life–if I follow you well.
No need for NOS droop compensation maybe, because the DAC will be 4X oversampled?
RLC filter (fc 44.1kHz) + Sallen-key (fc 44.1kHz), should make a 4th order LPF. Sim shows -26dB at Nyquist (88.2kHz).
Would this be any good?
Attachments
So 1387's sound is definitely preferable to AKM? The AKM is almost certain to have lower noise and so, likely more 'air'.
Here's my re-working of your schematic (had to change opamp, no OPA1622 in mine) :
To help flatten the LF roll-off, I increased R2 to 47k. C9 increased to get a sharper knee from the Sallen-Key LPF. I went for two I/V resistors rather than one to reduce current through L2 which has increased its value. C8 doesn't need to go to the mid-rail, so its grounded now. Here's the frequency response - green is from LC filter, magenta the opamp's output.
I agree, no need for droop compensation when you're running at 4XOS. Incidentally the first image when at 4X is at (44.1*4 - 20) = 156kHz
Here's my re-working of your schematic (had to change opamp, no OPA1622 in mine) :
To help flatten the LF roll-off, I increased R2 to 47k. C9 increased to get a sharper knee from the Sallen-Key LPF. I went for two I/V resistors rather than one to reduce current through L2 which has increased its value. C8 doesn't need to go to the mid-rail, so its grounded now. Here's the frequency response - green is from LC filter, magenta the opamp's output.
I agree, no need for droop compensation when you're running at 4XOS. Incidentally the first image when at 4X is at (44.1*4 - 20) = 156kHz
This is amazing, your generous intervention saves me multiple times of research and experiments. The filter now shows -58dB at 156.4KHz and any fold-back image would be even further attenuated and inaudible 🙂
Regarding the mysterious 100R at the feedback loop, it is my bad interpretation/implementation of the thread previously mentioned, but still a concern. When trying the circuit in crowded areas (well grounded in a solid enclosure), I experienced rushes of interference that I could blame to the HPamp, because the EMI disappeared when reconnecting the headphones. In that thread someone mentions a similar situation. Since in my circuit the inverting input of the driver opamp is connected directly to the output, it might be that interference coming through the HPs cable reaches the inverting input easily?
To solve this, I'm thinking to add resistors from the inverting input of the OPA driver to the output and VGND. To add some gain (1.33) and isolate the -IN from the output. The filter would need again redesign though :s
Then there is also my VGND. Maybe EMI was reaching the -INV of the VGND opamp, which is also shorted to the output. If that's the case, I don't see how to solve it other than eliminating the VGND circuit and going for a conventional capacitor solution at the output.
I'd really appreciate any opinion on this issue.
PD.: When I say I didn't like my old AKM chip, it is very subjective and it has to do also with enjoying the implementation process. But the sound was less physical than the TDA, more distant, analytical and shouty. Less pleasant or musical to hear. Of course this might have to do with the TDA harmonic distortion. But I still have the feeling that extreme OS or the digital interpolation filter adds something odd to the sound, to the structure of harmonics, or something. Maybe it's just a guess, but I want to test with a properly filtered NOS to see how it sounds and maybe conclude something from it.
Regarding the mysterious 100R at the feedback loop, it is my bad interpretation/implementation of the thread previously mentioned, but still a concern. When trying the circuit in crowded areas (well grounded in a solid enclosure), I experienced rushes of interference that I could blame to the HPamp, because the EMI disappeared when reconnecting the headphones. In that thread someone mentions a similar situation. Since in my circuit the inverting input of the driver opamp is connected directly to the output, it might be that interference coming through the HPs cable reaches the inverting input easily?
To solve this, I'm thinking to add resistors from the inverting input of the OPA driver to the output and VGND. To add some gain (1.33) and isolate the -IN from the output. The filter would need again redesign though :s
Then there is also my VGND. Maybe EMI was reaching the -INV of the VGND opamp, which is also shorted to the output. If that's the case, I don't see how to solve it other than eliminating the VGND circuit and going for a conventional capacitor solution at the output.
I'd really appreciate any opinion on this issue.
PD.: When I say I didn't like my old AKM chip, it is very subjective and it has to do also with enjoying the implementation process. But the sound was less physical than the TDA, more distant, analytical and shouty. Less pleasant or musical to hear. Of course this might have to do with the TDA harmonic distortion. But I still have the feeling that extreme OS or the digital interpolation filter adds something odd to the sound, to the structure of harmonics, or something. Maybe it's just a guess, but I want to test with a properly filtered NOS to see how it sounds and maybe conclude something from it.
What puzzles me about the thread you linked is - why no attempt to prevent the RF entering the circuit through placing an inductor (or inductors, to extend the frequency range of what's being rejected) in series with the HP outputs? Why only focus on preventing RF getting to the opamp input terminals? Putting filtering there is going to fiddle with the stability of the feedback loop whereas an inductor on the output won't have that effect. You could also use a CM inductor as RF pickup on the HP leads is quite likely to be common-mode in nature.
👍
What value or type of choke would be enough in this case (to filter above 500MHz)? I'am afraid that the footprint would be considerable higher and I couldn't fit it on the little board space I have left.
What value or type of choke would be enough in this case (to filter above 500MHz)? I'am afraid that the footprint would be considerable higher and I couldn't fit it on the little board space I have left.
I'm thinking something like this - https://www.mouser.com/datasheet/2/54/Bourns_04_16_2024_SRF4532TA-3451368.pdf. For the highest impedance version there's 1000ohm of CM impedance at 500MHz :
If that turns out to be too bulky there are likely smaller ones, maybe even down to 1206 size.
If that turns out to be too bulky there are likely smaller ones, maybe even down to 1206 size.
- Home
- Source & Line
- Digital Line Level
- Building a portable I2S 4x TDA1387 DAC