I figured out how to use these A28/A31 Linkplay boards. They are usually slaves to an A/D converter, which provides the I2S clock. But then they are masters to the DAC and the SPDIF transmitter. So, you need to provide a 2.822MHz clock if you don't have the A/D converter. Once I provided a suitable clock, the chip outputted audio from Spotify and my cell phone via DLNA to my ADAU1701. I used this same clock for the ADAU1701 with PLL mode = 00, which the chip used to run at 45MHz.
Hi,
you can use the ADAU1701 with the Arylic Up2Stream/Linkplay A31 like you would use it with any other I2S source.
You habe 2 possibilities to do so:
1)
Use the whole Arylic Up2Stream module as Master. This module has an 32bit ARM M3 under the Linkplay module, which creates the clocks (lrclk, bclk and mclk) from it's integrated fractional pll.
To use it with the ADAU1701 e.g. the Wondom module, you have to desolder the crystal oscillator on the DSP board or cut the pcb traces.
Then you can input the mclk on the mclki pin and the other clocks on the lrclk and bclk inputs.
That is the easiest way, because you don't have to solder a new crystal oscillator.
Another advantage is the ability to change the volume on the source device. That is a question I am working on right now.
The linkplay module outputs it's data over i2S at 100% digital volume (I tested that a few mins ago). So the data_out wire of the linkplay must be routed through the uC on the Arylic base board (I checked that with the multimeter) to do the scaling auf the digital data. There must be some communication going on from the linkplay module to the arylic uC when the volume changes. Probably over i2c?
2)
Use the ADAU1701 as Master and combine it just with the linkplay module without the arylic base board.
Therefore you have to exchange the 12.288 MHz crystall with one at 11.2896 MHz (PLL settings stay the same). The adau1701 can now operate at 44,1 kHz sampling rate.
Then do it like you would do with any other digital source, when the dsp is the clock master (mentioned in the adau1701 datasheet):
Take the output clocks (lrclk and bclk) and loop them back to the clock inputs of the adau1701
--> connect MP10 with MP4 and MP11 with MP5.
Also connect the clocks to the linkplay module (the linkplay doesn't need a mclk).
Option 2 is exactly what PA5cAL1 did in the mentioned thread.
They don't have separate clock sources. That is technically not possible, because they wouldn't be in sync. All clocks have to be derived from one oscillator.So in his case both the W31 and ADAU1701 had the same sample rate, but had separate clock sources. He claimed this worked fine so I assumed the I2S somehow managed to sync together.
The 192kHz/24bit is more like a marketing gag. I think the data must be resampled to 44,1 kHz/16bit on the Linkplay module.2) These modules are suppose to be able to generate 24-bit audio up to 192KHz, so it should be as happy with an ADAU1701 using a 12.288MHz crystal as one with a 11.2896MHz crystal.
Kind regards,
Markus
Thanks for the post. When I made my post I thought PA5cAL1 was using the entire Upstream module, not just the W31 module. Thanks for clearing that up.
I think the data must be resampled to 44,1 kHz/16bit on the Linkplay module.
Kind regards,
Markus
I don't think that is correct, at least for the A28 module. I'm using a 3.072MHz oscillator for a custom ADAU1701 board, with PLL mode = 00. The ADAU1701 provides a 48KHz clock to I2S_WS and 3.072MHz to I2S_CLK for the A28 on my board, and I right now I am listening to Spotify through the A28 and it sounds fine. So there shouldn't be any reason to swap out the crystal or oscillator with one of those commercial ADAU1701 boards.
We really should move this discussion to a new thread or the one started by PA5cAL1 , because we are hijacking the OP's post. I'll be documenting what I did with this board in this article, but first I'll try to give Pygmy an answer to his original question.
Sure ADAU1701 Audio Quality
Most of these ADAU1701 boards are very similar, as they are based on the reference circuit in the Analog Devices data sheet. The audio quality of these boards is mostly determined by the ADAU1701 chip itself.
One way to reduce the audio quality is to use low quality ceramic caps for the input coupling and the output filter. Maxim has an excellent article on using ceramic caps for audio, and they show the difference between various dielectrics and package sizes. However, the capacitors on these boards are relatively low value and low voltage, so the cost will be low. I think it's unlikely that any of these vendors would use poor quality capacitors just to save a small fraction of a cent on cost.
Some of the boards such as the FreeDSP use a higher order reconstruction filter, which should result in lower distortion for class AB amplifiers. However, for class D amps, where the analog output is resampled and low-pass filtered, that higher order reconstruction filter isn't going to improve the audio quality. Some of the boards provide extra gain, which is needed for pro audio equipment. The Pro audio line level is defined as 1.23V, and the ADAU1701 is spec'ed at .9V, so you need extra gain to drive Pro audio. However, consumer audio line level is .316V, so the output of the ADAU1701 is fine for many amps, and no additional gain is needed. And some of the boards make it easy to add Bluetooth modules or other expansion I/O or to connect the board to other devices.
But, obviously, if you don't need these features then there is no reason to shell out the extra money--the Sure module will "do the job" and have good audio quality. It doesn't "suck"--it's just a different implementation.
So... what's wrong with the Sure Adau1701 DSP boards that makes them "suck"?
Most of these ADAU1701 boards are very similar, as they are based on the reference circuit in the Analog Devices data sheet. The audio quality of these boards is mostly determined by the ADAU1701 chip itself.
One way to reduce the audio quality is to use low quality ceramic caps for the input coupling and the output filter. Maxim has an excellent article on using ceramic caps for audio, and they show the difference between various dielectrics and package sizes. However, the capacitors on these boards are relatively low value and low voltage, so the cost will be low. I think it's unlikely that any of these vendors would use poor quality capacitors just to save a small fraction of a cent on cost.
Some of the boards such as the FreeDSP use a higher order reconstruction filter, which should result in lower distortion for class AB amplifiers. However, for class D amps, where the analog output is resampled and low-pass filtered, that higher order reconstruction filter isn't going to improve the audio quality. Some of the boards provide extra gain, which is needed for pro audio equipment. The Pro audio line level is defined as 1.23V, and the ADAU1701 is spec'ed at .9V, so you need extra gain to drive Pro audio. However, consumer audio line level is .316V, so the output of the ADAU1701 is fine for many amps, and no additional gain is needed. And some of the boards make it easy to add Bluetooth modules or other expansion I/O or to connect the board to other devices.
But, obviously, if you don't need these features then there is no reason to shell out the extra money--the Sure module will "do the job" and have good audio quality. It doesn't "suck"--it's just a different implementation.
We really should move this discussion to a new thread or the one started by PA5cAL1 , because we are hijacking the OP's post. I'll be documenting what I did with this board in this article, but first I'll try to give Pygmy an answer to his original question.
I posted my answer in the thread of PA5cAL1: Link.
If all you need are balanced out´s, use 4 little boards with the OPA1632 ?
Fully-Differential Audio Operational Amplifier OPA1632 Module ADC Driver Board | eBay
Wolf, what is the typical power consumption of these boards? Is there an optimum voltage?
Anything from +- 5-15 should be fine, 17 is limit. They need clean power, no voltage regulator on board. These are very small. I hope they are not fake, but this complicated little TI chip is very cheap. The fake ones are usually labeled BB, which was taken over by TI in 2000. Don´t think 20 years later are still many BB at reputable distributors...
Mine on the 3x2.5 cm board are BB _ OPA1632_6AF303, maybe they are real. If not, at least I have a little PCB where I can install a real one.
I just tell you about the usual risks with our Chinese friends, so you are not disapinted...
Mine on the 3x2.5 cm board are BB _ OPA1632_6AF303, maybe they are real. If not, at least I have a little PCB where I can install a real one.
I just tell you about the usual risks with our Chinese friends, so you are not disapinted...
Cheers man! So at 12v how many milliamps will it require do you think? I might order a handful to play with!
Most of these ADAU1701 boards are very similar, as they are based on the reference circuit in the Analog Devices data sheet. The audio quality of these boards is mostly determined by the ADAU1701 chip itself.
One way to reduce the audio quality is to use low quality ceramic caps for the input coupling and the output filter. Maxim has an excellent article on using ceramic caps for audio, and they show the difference between various dielectrics and package sizes. However, the capacitors on these boards are relatively low value and low voltage, so the cost will be low. I think it's unlikely that any of these vendors would use poor quality capacitors just to save a small fraction of a cent on cost.
Some of the boards such as the FreeDSP use a higher order reconstruction filter, which should result in lower distortion for class AB amplifiers. However, for class D amps, where the analog output is resampled and low-pass filtered, that higher order reconstruction filter isn't going to improve the audio quality. Some of the boards provide extra gain, which is needed for pro audio equipment. The Pro audio line level is defined as 1.23V, and the ADAU1701 is spec'ed at .9V, so you need extra gain to drive Pro audio. However, consumer audio line level is .316V, so the output of the ADAU1701 is fine for many amps, and no additional gain is needed. And some of the boards make it easy to add Bluetooth modules or other expansion I/O or to connect the board to other devices.
But, obviously, if you don't need these features then there is no reason to shell out the extra money--the Sure module will "do the job" and have good audio quality. It doesn't "suck"--it's just a different implementation.
Thank you so much for this explanation!
I'm pretty new in all this - I've built a couple of speaker designs by other people, then I "built" (Lego'ed? :_)) an amplifier based on the Yuan Jing TPA3116D2 where I removed almost all stock components and replaced them with better ones (hopefully?) as I read the diyaudio thread on TPA3116 mods.
My current project is building a set of active speakers, where the speakers are just "shells" - no analog filters, just straight output from the speaker drivers to the back.
Building two amplifiers with 3 class D amps - one for each speaker driver - and a Dayton Audio DSP board to do the crossover / filtering.
For now that'll do 🙂
If I find out that any part in the chain is sub-par, I can replace it with something better. (F.e. swapping out the Dayton DSP board for a 3E audio DSP board - if that actually makes a difference).
I'll learn and replace as I move along 🙂
The OPA1632 should be more than fine with about 50mA each.
Let us see, very coarse, what it puts out: 4v into 2000 Ohm will be about 4:2000 = 2:1000 that makes .002 so wie could call that 2 mAmpere for each of two channels (it is differential!). With it´s basic needs and low efficiency so 50mA is something like shorted outputs.
Im sure someone can calculate better, but I do not care that much if it is in a power amp or preamp with over sized supply. Any usual regulator has 1000 mA and these IC runs usually not at 5 volt output, as most amps need around 1V for full power.
Critical?
Let us see, very coarse, what it puts out: 4v into 2000 Ohm will be about 4:2000 = 2:1000 that makes .002 so wie could call that 2 mAmpere for each of two channels (it is differential!). With it´s basic needs and low efficiency so 50mA is something like shorted outputs.
Im sure someone can calculate better, but I do not care that much if it is in a power amp or preamp with over sized supply. Any usual regulator has 1000 mA and these IC runs usually not at 5 volt output, as most amps need around 1V for full power.
Critical?
Hi,
you can use the ADAU1701 with the Arylic Up2Stream/Linkplay A31 like you would use it with any other I2S source.
You habe 2 possibilities to do so:
1)
Use the whole Arylic Up2Stream module as Master. This module has an 32bit ARM M3 under the Linkplay module, which creates the clocks (lrclk, bclk and mclk) from it's integrated fractional pll.
To use it with the ADAU1701 e.g. the Wondom module, you have to desolder the crystal oscillator on the DSP board or cut the pcb traces.
Then you can input the mclk on the mclki pin and the other clocks on the lrclk and bclk inputs.
That is the easiest way, because you don't have to solder a new crystal oscillator.
Another advantage is the ability to change the volume on the source device. That is a question I am working on right now.
The linkplay module outputs it's data over i2S at 100% digital volume (I tested that a few mins ago). So the data_out wire of the linkplay must be routed through the uC on the Arylic base board (I checked that with the multimeter) to do the scaling auf the digital data. There must be some communication going on from the linkplay module to the arylic uC when the volume changes. Probably over i2c?
2)
Use the ADAU1701 as Master and combine it just with the linkplay module without the arylic base board.
Therefore you have to exchange the 12.288 MHz crystall with one at 11.2896 MHz (PLL settings stay the same). The adau1701 can now operate at 44,1 kHz sampling rate.
Then do it like you would do with any other digital source, when the dsp is the clock master (mentioned in the adau1701 datasheet):
Take the output clocks (lrclk and bclk) and loop them back to the clock inputs of the adau1701
--> connect MP10 with MP4 and MP11 with MP5.
Also connect the clocks to the linkplay module (the linkplay doesn't need a mclk).
Option 2 is exactly what PA5cAL1 did in the mentioned thread.
They don't have separate clock sources. That is technically not possible, because they wouldn't be in sync. All clocks have to be derived from one oscillator.
The 192kHz/24bit is more like a marketing gag. I think the data must be resampled to 44,1 kHz/16bit on the Linkplay module.
Kind regards,
Markus
MKSounds,
If I am correct, you wrote a driver for ADAU1701.
Is option 2 also possible with the scenario in mind you can play 44.1 material without having to resample to 48 kHz first?
Regards,
Ronnie
The OPA1632 should be more than fine with about 50mA each.
Let us see, very coarse, what it puts out: 4v into 2000 Ohm will be about 4:2000 = 2:1000 that makes .002 so wie could call that 2 mAmpere for each of two channels (it is differential!). With it´s basic needs and low efficiency so 50mA is something like shorted outputs.
Im sure someone can calculate better, but I do not care that much if it is in a power amp or preamp with over sized supply. Any usual regulator has 1000 mA and these IC runs usually not at 5 volt output, as most amps need around 1V for full power.
Critical?
Nice one, thanks! So, I could get away with a 2w isolation unit, I think. I have a spare Sure board that I might build a balanced in/out around as it won't be used SE, otherwise. I know isolation converters aren't the most elegant solution.
Hi Ronnie,MKSounds,
If I am correct, you wrote a driver for ADAU1701.
yes I coded a driver for the Raspberry Pi to connect it to the adau1701.
ADAU1701 Raspberry I2S Driver
Yes, that is exactly the same procedure as I did with the raspberry.Is option 2 also possible with the scenario in mind you can play 44.1 material without having to resample to 48 kHz first?
Hi Ronnie,
yes I coded a driver for the Raspberry Pi to connect it to the adau1701.
ADAU1701 Raspberry I2S Driver
Yes, that is exactly the same procedure as I did with the raspberry.
Nice!
I have an old minidsp 2x4 I will use first. No clockchange, resampling 44.1 to 48 kHz in software.
After reading your installation instructions about wiring I hope it will function with this board also.
Wireing Raspberry to ADAU1701 :
Pin 12 (PCM_CLK) - MP5 und MP11 ( 14 and 20 ) (MiniDSP)
Pin 35 (PCM_FS) - MP4 und MP10 (15 and 21)
Pin 40 (PCM_DOUT) - MP0 (oder MP1, MP2, MP3) (10 ? )
Pin 39 (GND) - any GND-Pin ( )
I wrote the connection number for minidsp in the table ( ) Is this correct?
Why is the signal loopbacked actually?
Attachments
Last edited:
In my case the raspberry runs as slave (dsp is the clock master). If you want to use airplay (fixed to 44,1 kHz without the opinion of resampling in the alsa subsystem) you have to provide clocks for 44,1 kHz.I have an old minidsp 2x4 I will use first. No clockchange, resampling 44.1 to 48 kHz in software.
I think that should be ok.I wrote the connection number for minidsp in the table ( ) Is this correct?
The signal is not loopbacked, but the clocks are. That is the way it has to be connected if the dsp is the clock master for an input (see adau1701 datasheet for more info).Why is the signal loopbacked actually?
Markus,
Driver works fine with MiniDSP 😉
Regarding Shairport:
A while ago I used Shairport in conjunction with Brutefir (Brutepi, see Github)
It contains a shairport sync conf file where output from Shairport is set. In this case a virtual Loopback soundcard, which outputs to Brutefir.
Maybe it is possible to loop it back to an asound.conf with resampling to 48 kHz?
Driver works fine with MiniDSP 😉
Regarding Shairport:
A while ago I used Shairport in conjunction with Brutefir (Brutepi, see Github)
It contains a shairport sync conf file where output from Shairport is set. In this case a virtual Loopback soundcard, which outputs to Brutefir.
Maybe it is possible to loop it back to an asound.conf with resampling to 48 kHz?
Driver works fine with MiniDSP 😉
Regarding Shairport:
Maybe it is possible to loop it back to an asound.conf with resampling to 48 kHz?

I think that might be possible, but I never tried. The problem of resampling the shairport output is the "sync". Shairport is able to sync the multiroom-devices and must therefore write the data directly to the hardware to have consistent time aligning. I haven't searched for a solution yet.
If you find out something, please answer in the corresponding thread to keep the overview.
- Home
- Amplifiers
- Class D
- Sure Adau1701 DSP opinions?