tda1387 dac pcb "front end"

Member
Joined 2008
Paid Member
Here's a semi-decent detail picture of the board. About the best I can do without turning it off, which I'm not ready to do yet. :) But hopefully later today or tomorrow I'll give it a rest and then be able to get some more pics, including the back.
 

Attachments

  • fd_tda1387nas_detail_20180915.jpg
    fd_tda1387nas_detail_20180915.jpg
    380.6 KB · Views: 492
Member
Joined 2008
Paid Member
I don't have a link for that particular transformer, I've had it for quite a while. But I bought it off ebay, just search for "R core transformer", and select the right VA rating, along with the right secondary(ies) you want. IIRC, some of the vendors will even make custom secondary voltages for you.
 
Here's a semi-decent detail picture of the board. About the best I can do without turning it off, which I'm not ready to do yet. :) But hopefully later today or tomorrow I'll give it a rest and then be able to get some more pics, including the back.

Hi .Matt, You I spired me to buy one, my beloved Subbu dac just died and I need a replacement. I'll be interested in hearing how it compares
 
Member
Joined 2008
Paid Member
I will look forward to your direct I2S mod.

It won't really be a mod, just soldering wires directly to pins 1, 2 and 3 of the DAC IC. :)


looks pretty. does it have pins to add a potentiometer? i guess not, but would it be feasible to hack it?

No pins for a pot. But I don't see why you couldn't hang one off the output.


Hi .Matt, You I spired me to buy one, my beloved Subbu dac just died and I need a replacement. I'll be interested in hearing how it compares

Please post your thoughts and impressions when you get it! My (decidedly non-golden) ears say it's pretty decent.


Attached are some better pics.
 

Attachments

  • top1.jpg
    top1.jpg
    822.4 KB · Views: 442
  • top2.jpg
    top2.jpg
    954 KB · Views: 419
  • angle_top1.jpg
    angle_top1.jpg
    891.5 KB · Views: 387
  • angle_top2.jpg
    angle_top2.jpg
    786.4 KB · Views: 371
  • angle_top3.jpg
    angle_top3.jpg
    782.5 KB · Views: 110
  • back2.jpg
    back2.jpg
    745.4 KB · Views: 108
  • back3.jpg
    back3.jpg
    770.9 KB · Views: 112
Last edited:
Member
Joined 2008
Paid Member
Certainly, hanging a pot off the output will definitely change the impedance characteristics. You may or may not be able to hear it though. I've seen lots of people do this (self included) on the amplifier end of things (quick and dirty way to turn a "power amp" into an "integrated amp").

Perhaps it's possible to hack the output buffer circuit for volume control?

You could of course also add a pre-amp with volume control to the chain.

Variable transformers are another option.

While I used to use pots between the DAC and amp input, these days I use digital volume control on the source. I know it's imperfect, but it's easy. :)
 
Member
Joined 2008
Paid Member
I meant software-based. My source these days is almost always a Raspberry Pi running Music Player Daemon (MPD). I have a huge music collection which lives on a networked file server. So whenever I want a new music source somewhere in my house, I just spin up a new RPi. (I already have three of these instances already: basement, living room, office.) Then I can use any number of MPD client apps (on just about any device) to control the music. In particular, the M.A.L.P. player for Android is really nice (and free/open source), and allows storing of multiple server profiles, so I can quickly and easily switch between devices.

So, as-is, it's software volume control.

To have this convenience with hardware volume control, I'd need to implement something that can be controlled by a microcontroller (i.e. the RPI), and do some hacking on my MPD/ALSA config to turn volume control operations into microcontroller commands that actually tweak the hardware. I've done exactly this with the Soekris dam1021. But so far I haven't had the time to come up with a similar arrangement for tda1387-based DACs.
 
I meant software-based. My source these days is almost always a Raspberry Pi running Music Player Daemon (MPD). I have a huge music collection which lives on a networked file server. So whenever I want a new music source somewhere in my house, I just spin up a new RPi. (I already have three of these instances already: basement, living room, office.) Then I can use any number of MPD client apps (on just about any device) to control the music. In particular, the M.A.L.P. player for Android is really nice (and free/open source), and allows storing of multiple server profiles, so I can quickly and easily switch between devices.

So, as-is, it's software volume control.

To have this convenience with hardware volume control, I'd need to implement something that can be controlled by a microcontroller (i.e. the RPI), and do some hacking on my MPD/ALSA config to turn volume control operations into microcontroller commands that actually tweak the hardware. I've done exactly this with the Soekris dam1021. But so far I haven't had the time to come up with a similar arrangement for tda1387-based DACs.

mmm. Let me rephrase just to make sure I got it. Are you suggesting that creating a script/daemon to read data from one pin in the RPi and then set the volume on the MPD/ALSA would do the trick? In the DAM1021 looks pretty easy cause it already has the pins for it, but AFAIK all RPi pins are digital, right? Maybe I would need an Arduino in between to read a pin using analogRead and then convert to a % and send the value to RPi somehow (TXD/RXD?). Maybe you're suggesting something (much) simpler?
 
...
4. Here's another random ebay find: Philips Little Giant TDA1387 hum decoding (nos mode) (upgrade tda1541) (seller shenglongsi). I placed an order for one of these last night (came to just over $42 with ebay promo code "PREGAME15"). We'll see how it looks in person, but to my untrained eyes, it looks to be one of the most sophisticated tda1387 implementations I've seen outside of this forum. Going by the pics, it looks like it has a complete output stage (I/V, filtering, buffer), and also appears to use LDOs fancier than lm317. I thought it was worth a gamble if nothing else.

Nice find, Matt!

Since it's NOS, does the filter correct the sin c droop at 20kHz?
Do you have the output stage schematic?

Cheers,
Jeff
 
Member
Joined 2008
Paid Member
Since it's NOS, does the filter correct the sin c droop at 20kHz?

I'm not sure. If I had to guess I'd say no, but that's just speculation.

Do you have the output stage schematic?

I wish! I asked the ebay seller, he said he didn't have one. I'm going to try to see if I can back out the schematic from studying the board itself. But that will take some time.


mmm. Let me rephrase just to make sure I got it. Are you suggesting that creating a script/daemon to read data from one pin in the RPi and then set the volume on the MPD/ALSA would do the trick? In the DAM1021 looks pretty easy cause it already has the pins for it, but AFAIK all RPi pins are digital, right? Maybe I would need an Arduino in between to read a pin using analogRead and then convert to a % and send the value to RPi somehow (TXD/RXD?). Maybe you're suggesting something (much) simpler?

To be clear: with the tda1387 DACs, so far I'm just using super-simple software-based volume control. Nothing fancy or interesting there.

In terms of fancier setups, I described that in two articles on my website: Alsa Dummy Events, and Dam1021 Raspberry Pi Howto. The gist is as follows: on the Linux system, there are two ALSA devices. One is the actual DAC itself (e.g. I2S connection), and the other is a "Dummy" device.

The actual true DAC hardware device does not have a mixer, i.e. it's fixed volume. Ideally this is "bit perfect" and does nothing with the PCM data except massage it into I2S format.

The "dummy" device, specifically a dummy mixer, is where the magic happens. By default, the dummy mixer acts just like a regular mixer, but it actually does nothing. But, ALSA provides hooks for allowing you to be notified of certain events. In this case, we are interested in volume changes on the dummy device. You can then create a program that listens for these events, and in turn, use the RPI's GPIO pins to manipulate "something" that actually does a hardware volume change.

Note that the Soekris DAC has two ways to change volume: one, via a potentiometer, and two, via serial commands. In my case, I used the dummy mixer events to trigger serial volume change commands to the Soekris. The RPI has a builtin UART for serial operations, so that was very easy (with the Python dam1021 library).

Indeed, if your "something" hardware volume control can't be manipulated by a digital signal (like SPI), then you'd probably have to put in a DAC (for data, not music) or a microcontroller that can do something useful with the RPI's digital signals.

To tie this all together, in MPD config, you say the hardware output device is the true ALSA device, but specify the dummy device as the mixer. Now when your MPD client changes volume, it triggers the ALSA event framework, which in turn manipulates the "something".
 
Disabled Account
Joined 2002
I'm using a 30VA R-core transformer with two 15V/0.5A secondaries, and two 9V/0.8A secondaries (one of those is taped off).

It is possible (without penalties) to use the 9V windings in parallel. Just connect them with correct phase.

That DAC looks like a nice find! Of course no 24 bit playback which can be frustrating if one has 24 bit stuff.
 
Last edited:
I'm not sure. If I had to guess I'd say no, but that's just speculation.



I wish! I asked the ebay seller, he said he didn't have one. I'm going to try to see if I can back out the schematic from studying the board itself. But that will take some time.




To be clear: with the tda1387 DACs, so far I'm just using super-simple software-based volume control. Nothing fancy or interesting there.

In terms of fancier setups, I described that in two articles on my website: Alsa Dummy Events, and Dam1021 Raspberry Pi Howto. The gist is as follows: on the Linux system, there are two ALSA devices. One is the actual DAC itself (e.g. I2S connection), and the other is a "Dummy" device.

The actual true DAC hardware device does not have a mixer, i.e. it's fixed volume. Ideally this is "bit perfect" and does nothing with the PCM data except massage it into I2S format.

The "dummy" device, specifically a dummy mixer, is where the magic happens. By default, the dummy mixer acts just like a regular mixer, but it actually does nothing. But, ALSA provides hooks for allowing you to be notified of certain events. In this case, we are interested in volume changes on the dummy device. You can then create a program that listens for these events, and in turn, use the RPI's GPIO pins to manipulate "something" that actually does a hardware volume change.

Note that the Soekris DAC has two ways to change volume: one, via a potentiometer, and two, via serial commands. In my case, I used the dummy mixer events to trigger serial volume change commands to the Soekris. The RPI has a builtin UART for serial operations, so that was very easy (with the Python dam1021 library).

Indeed, if your "something" hardware volume control can't be manipulated by a digital signal (like SPI), then you'd probably have to put in a DAC (for data, not music) or a microcontroller that can do something useful with the RPI's digital signals.

To tie this all together, in MPD config, you say the hardware output device is the true ALSA device, but specify the dummy device as the mixer. Now when your MPD client changes volume, it triggers the ALSA event framework, which in turn manipulates the "something".

OK everything read, twice. As I said yesterday, these are really helpful articles, thank you so much. I had made a pot > digital conversion in the past using an Arduino, but sending the data to the RPi was still pending. But now I'm convinced the "ALSA dummy mixer" strategy is much simpler. I will still be using a pot, so just ordered an 16bit ADC (no need to waste an Arduino for just this task if RPi can get the data directly from the ADC).

So, it all comes down to choosing the DAC now. I already have a IQAudiO DAC+, it's clean, but a bit fatiguing after a short time. That made me think of a more natural sound and was after the Soekris, that has everything included (all kind of inputs and outputs) but it's a bit expensive (not per se, but it's money). This thread caught my attention. Not sure if the original approach 8x or the DAC you bought lately would compare in any way to Soekris. Would they? I'm OK soldering the I2S to the IC if sound quality is worth it.

Thank you again
 
Member
Joined 2008
Paid Member
Not sure if the original approach 8x or the DAC you bought lately would compare in any way to Soekris. Would they? I'm OK soldering the I2S to the IC if sound quality is worth it.

I have two Soekris dam1021 boards setup in balanced dual-mono. It's been well over a year (maybe two?) since I powered them on. Not so much due to any deficiency. But to me, the tda1387 has a characteristic "sweetness" to it that I find immensely appealing. And, again for me personally, with DIY, the "journey" is as import (sometimes more) than the "destination". In other words, absolute best sound quality has in some ways almost become a secondary goal to the enjoyment of learning, building, tweaking, etc. Also, the tda1387 is a very simple chip, so even at my skill level, I can create something I find enjoyable.

From a purely practical standpoint: note the tda1387 DACs limit you to 16 bit input (e.g. redbook cd), whereas the Soekris can do up to 32 bit audio, and even DSD. If you have a significant amount of high resolution audio files, these old NOS DACs may not be your best bet (though you could do software pre-processing on the high res stuff).

Having said all that, my suggestion would be to start with the $50 tda1387 ebay board pictured above. It hasn't been fully vetted by the diyAudio community yet; I'm going on my initial impressions from minimal time with it. But those initial impressions were good, and most importantly (IMO) it's cheap! This limits your loss if it turns out the tda1387 isn't for you.

Kind of a soft, roundabout answer, I know. At the end of the day, without knowing your goals, budget and preferences, it's hard to predict what will or won't work for you. So I tried to give a sense of my perspective, hoping that you can better judge if my suggestions are worthwhile. :cheers:
 
I have two Soekris dam1021 boards setup in balanced dual-mono. It's been well over a year (maybe two?) since I powered them on. Not so much due to any deficiency. But to me, the tda1387 has a characteristic "sweetness" to it that I find immensely appealing. And, again for me personally, with DIY, the "journey" is as import (sometimes more) than the "destination". In other words, absolute best sound quality has in some ways almost become a secondary goal to the enjoyment of learning, building, tweaking, etc. Also, the tda1387 is a very simple chip, so even at my skill level, I can create something I find enjoyable.

From a purely practical standpoint: note the tda1387 DACs limit you to 16 bit input (e.g. redbook cd), whereas the Soekris can do up to 32 bit audio, and even DSD. If you have a significant amount of high resolution audio files, these old NOS DACs may not be your best bet (though you could do software pre-processing on the high res stuff).

Having said all that, my suggestion would be to start with the $50 tda1387 ebay board pictured above. It hasn't been fully vetted by the diyAudio community yet; I'm going on my initial impressions from minimal time with it. But those initial impressions were good, and most importantly (IMO) it's cheap! This limits your loss if it turns out the tda1387 isn't for you.

Kind of a soft, roundabout answer, I know. At the end of the day, without knowing your goals, budget and preferences, it's hard to predict what will or won't work for you. So I tried to give a sense of my perspective, hoping that you can better judge if my suggestions are worthwhile. :cheers:

What a sensible answer, thank you so much again!

Well, I overlooked the specs, on that ebay page reads "format supports up to 24bit 192K" but that's obviously not possible for an old DAC. Should be fine though if I use the SoX resampling to 16bit/*kHz (don't remember if there's such an option, for 24bit there is for sure).

In any case, I need to put everything on a balance and decide. There's too many cons on this DAC compared to the dam1021, like it needs a PS with 7/9V + 2x13/16V instead of just one of about 9-12V on the dam, no balanced output, no headphones output, no direct I2S input, no filters, no firmware updates (well seeing how that worked with last firmware that could be a pro though :D) etc. But the cost is muuuch cheaper and would also learn quite a lot from playing w/ it, also w/o the fear of losing lots of money if I brick/burn it.

mmm decisions...
 
Disabled Account
Joined 2002
Not really a con.... separate windings are better.

High Quality 30VA 30W AC 15V*2 9V*2 R Core Power Transformer For DAC D/A Converter-in Amplifier from Consumer Electronics on Aliexpress.com | Alibaba Group

no balanced output, no headphones output, no direct I2S input, no filters, no firmware updates

Comparing a 50$ DAC to a Soekris is a bit unfair. Well, make that plain unfair. But less can be more....especially firmware for which there always seems a need to be updated.

*One can learn from this one as much as from the Soekris .... just connect wires and it will work. They are ready made products. If one wants to learn better build a DAC yourself.
 
Last edited: