Philips TDA1543 Dual 16-bit DAC ?

Just wondering if the Arduino 2-Wire can be used to send 16 bit worth of data to this chip?

TDA1543 Dual 16-bit DAC

Not a big deal, its just that I have one around and was wondering how fun would it be to send sound to it instead of using PWM PCM. ;-) I'm in the process of packing up for a move, but would still love to play around with this chip when possible...

I already managed to get several voices of 8-bit drum sounds mixed to a 16 bit variable, downsampled to 8 bits and output to a PWM pin, and it sounds good but not great, as a lot of the sound is lost during the downsample process, from 16 to 8 bits with multiple sounds playing at the same time. Now, lets say, 8 x 8-bit voices sending to the 16 bit DAC, that would save the downsampling process and would sound much better. Still 8-bit, but at least we get a lot of voices.

Anyway, just dreaming... ;-)

Best Regards, WilliamK

Check the control signal timing on sheets 8, 9. Looks a little funky to me.

Have you looked into a multiple output DAC like AD5308 for making cleaner mixes? I have 2 that I got as samples from Analog Devices, haven't played with them yet, waiting for TSOP adapters to arrive. SPI interface, eight 8-bit DACs. AD5318, eight 10-bit DACs AD5328, eight 12-bit DACs.

Oh, that's nice, but I wonder if the process of output to 8 values wouldn't slow down the whole thing?

In any event, I did manage to get 6 8-bit outputs thanks to the near 10-bit PWM process I created. ;-)

When I have my office settle at the new home, I will experiment with those Philips DACs, maybe I figure out how to use them and see the sample-rate I can get out of it. (couldn't find the info on the datasheet yet)


Data sheet says max word select rate is 192KHz, to support 4x oversampling.

Ah, yes, thanks, since it uses the clock I send, it will take pretty much any lower rates, I guess...


I just searched more on google and found even a MOD player using this chip and an ATmega32, see my other post here at the forum.

Is this Philips chip dead? Or is it easy to purchase? (I got mine from eBay)

Also, why people use it in parallel, like 8 chips doing the same sound and summed up? Just to increase volume without an AMP? Just curious. :wink:

Anyway, now I need to pack my stuff, see you guys in a week or less. (I hope less)


1 Like

Well, I have to say, here in germany, this great chip is deader than dead :P

i found it because of this youtube modplayer. i still got 2 of them, but I got them for much money from ebay.

Does somebody know some cool arduino-based projects with that?

Thanks, Tobias

Indeed. From the datasheet it requires an OP-Amp or whatever that is, and I don’t have one, so I can’t test it. :disappointed_relieved: =(

So I’m giving up for now…


Do you have powered computer monitor speakers? Take the DAC output and connect to those. The op-amp circuit is to provide some high frequency switching filtering. Use a simple RC lowpas filter, then connect to the computer monitor speaker input.

Well, a got a small mixer which connects to my headphones. ;-) Still, I couldn't see any voltage readings on my voltage-meter. :-(


Do you have a scope? If not, download Visual Analyzer from here make up a probe to plug into your sound card jack, check out the signal on your PC. Will be good enough for audio bandwidth, see if you are getting any signal out at all.

Ah, good one, will try that, thanks bud. :grin:


Ahhh, now it works, thanks to your idea I was able to check exactly what was wrong and fix it.

Also, thanks to Rugged Circuits crew, I just used a resistor from Ref to OutL and got the correct output. Couldn't do the same for OutR, but for now I can live with that, until I can order some op-amp pieces. ;-)

I'm using SPI, with ClockDivider2 works perfectly. Will test audio and see what happens now...


Couldn't do 2 resistors in parallel at Vref, 1 to OutL & 1 to OutR?

Thanks, I tried that already, but somehow as soon as I put another one for the other channel and Ref, it messes up the first channel. Go figure... I'm using 10k resistors. Maybe I should try 2 x 10k resistors for each channel?


Might help - Vref is good for 2.5mA. 10K & 5v is only 0.5mA, seems like there should be plenty of margin. Unless there is some internal mixing going on that screws it up. Maybe reducing will help. If not, have to wait for your op amps.