Wiimu A31 module in combination with ADAU1401/1701 DSP

Nobody will hear any difference between a lossless file at 44,1 kHz or at 96/192 kHz.

That really depends what kind of system you're using it for from a SNR/dynamic range point of view.
16 bits is only 98dB tops

I can tell from professional experience that this will result in audible noise in some line arrays, or compressions drivers with a very high sensitivity.
Not to mention just the extra bit of "reserves" you have with a high bit-rate.

From a samplerate point of view, that's a different story because of the lowpass effect of the human hearing.
Basically everything above 7-10kHz is pure sine-wave because of this effect.
 
A98 at Parts Express:
Linkplay A98 Module
Thank's for the hint :)

The connector of the A98 module is not really that diy friendly. E.g. the A97 could be integrated in a diy pcb quite easily over the headers.

I see one problem which all modules using a wifi-based stream have from the sight of a diy user: you have to configure the wifi before you use it (except your using it in the access point mode only).
Therefore the module has to be used by a company in a commercial product already, which includes a config app (like the arylic 4stream).
Otherwise you would have to program a config app on your own?!
 
Hi,

I want build an amp feeded by the arylic board connected to an i2s dac. So the chain will be:

Arylic -> Kali recloker -> I2s Dac -> power amp

I want use Arduino to control the volume by a rotary encoder and from a remote. But I want to be able as well to control it from the Arylic software on the phone.
I checked on arylic documentation, and there are api available to set and read the volume value via http post and get, so with some code in arduino I think that I could manage it in sync from app and the hardware knob. So, for example decrease the volume through the app, and increase it with the rotary encoder.

But the http method doesn’t seems really appropriate .... I don’t think that it could be really fast and reliable.

1 - On the arylic board there is as well uart connection. Could I use this protocol to sync the volume value between arylic board (app) and arduino?

2 - Do you think that Kali board will works Correctly and increase final audio quality?

3 - I really need the arylic board? Which features it could provide me more than the alone linkplay module? I2s volume control?

4 - I want to obtain a professional result, because I only listen music from NAS or streaming services. This setup could give me a really good output sound in terms of quality? If the dac/amp are really good I mean...

Thank you
 
Last edited:
On the linkplay board are present the i2c pins. Why are not accessible through arylic? Arylic use it for comunicate with linkplay?
The linkplay board doesn’t provide a manual more detailed? There are some api that I could use for manage volume directly through it?

A lot of questions I know... :)
 
I want use Arduino to control the volume by a rotary encoder and from a remote. But I want to be able as well to control it from the Arylic software on the phone.
That might be possible over uart. As I wrote a few post before, the linkplay outputs raw data over i2s and the volume meta data is transferred over uart. But I think that works just in one direction.

2 - Do you think that Kali board will works Correctly and increase final audio quality?
If you use stable and low jitter clock source, the reclocker won't have any benefit and increases latency.

3 - I really need the arylic board? Which features it could provide me more than the alone linkplay module? I2s volume control?
Yes, software volume of the i2s output. The arylic board runs as master.

4 - I want to obtain a professional result, because I only listen music from NAS or streaming services. This setup could give me a really good output sound in terms of quality? If the dac/amp are really good I mean...
Everything is resampled to 44,1 kHz/16 bit.


The linkplay board doesn’t provide a manual more detailed?
That's an oem module, not a big surprise that there isn't much open-source information.
 
Thank you.

The resampling is doing by linkplay or arylic? Do you think that in the near future could be improved to native support FLAC files?

2 - Do you think that Kali board will works Correctly and increase final audio quality?
If you use stable and low jitter clock source, the reclocker won't have any benefit and increases latency.

How can I check it?
 
Last edited:
Member
Joined 2004
Paid Member
Hmmm...the newer version of this board seems to have grown an extra pin :)
 

Attachments

  • New_ADAU1701_module.png
    New_ADAU1701_module.png
    756.1 KB · Views: 337
Member
Joined 2004
Paid Member
It's labeled on the silkscreen: CLKI and CLKO. CLKI used to be a ground and the new "pin" is CLKO. That will make connecting synchronous I2S devices easier. I haven't buzzed out the connections yet to determined whether they switched from a crystal to an oscillator or what it takes to use these pins.. But I'm assuming the mod to 44.1KHz sampling will be easier with these pins.
 
Member
Joined 2004
Paid Member
I traced the two new connections, and yes, they do go directly to the ADAU1701 MCLKI and OSCO pins. Unfortunately, the new version of the module won't work in the board I made, because that CLKI pin used to be a ground, and that is what my board provides. So I have to cut that ground connection. That's one of the risks of using these low-cost modules: the design can change without notice.

The board can be made to use 44.1KHz sampling by connecting a 11,289.6MHz oscillator to CLKI. Most of those small oscillators specify a maximum of 15pf loading, so you should remove C28 and probably R13. That's not too hard to do--removing SMD components is much easier than soldering them to the board. Just add enough solder to the device to cover it and then flick it away with the iron or use tweezers to lift it off the board.

For those who prefer cutting traces to removing components, you can make a small cut between the via and pad near C28 (see the tiny red line in the picture). The via goes out to the CLKI pin, so this cut has the same effect as removing C28, the crystal, C27 and R13.
 

Attachments

  • New_ADAU1701_module.png
    New_ADAU1701_module.png
    756.1 KB · Views: 344
Has anyone tried the i2s input of the a28/31 modules already?
Would be great for my desktop speakers, if I could source one A28/31 module via usb (usb to i2s bridge is working) and then send the data wireless to another module in the other active speaker.

The main question is:
Is that "source" selected by default or do we need to select the i2s input as source (instead of the streaming input)?
 
Member
Joined 2004
Paid Member
The I2S input is used by the ADC chip, and that is the "line input" that can be selected using the Muzo app. I know that it isn't the default and that there is no "automatic" switching, so if you power down the A31, you would need to use the app to select "line input" again.

I'm not convinced the I2S inputs are synchronized the way the streaming input is. I was never able to get stereo from one line input and two modules. But it's been a while, and I might have been doing something wrong...
 
The I2S input is used by the ADC chip, and that is the "line input" that can be selected using the Muzo app. I know that it isn't the default and that there is no "automatic" switching, so if you power down the A31, you would need to use the app to select "line input" again.
Okay, that is what I feared.
What we have:
Up2Stream Pro: Has additional analog and bluetooth input. If you use the 4stream (or any similar) app, you can choose the adc or bluetooth as input (must be routed to the i2s input of the A31 module).
Up2Stream mini (older version): No analog input. You can't choose the adc in the config app.
Up2Stream mini (current version): Has a bluetooth interface onboard. When I assume correctly, the data from the bluetooth interface is sourced to the A31 module (on it's i2s input). Otherwise the module couldn't do multi-room in combination with the bluetooth input.

The problem is: although all arylic products use the same A31 module, the config app recognises which product that is and offers the corresponding features in the app.

What might be possible:
Take the new version of the Up2Stream mini with bluetooth. The A31 on it must have any different firmware in comparison to the old mini module, otherwise the app wouldn't know, which module it is. It is possible to use the A31 without the arylic board underneath, so there can't be any communication going on (like reading the name or serial number of the device).
I think it would be possible, to use the A31 of the new Up2Stream mini and source the data via i2s. In the 4stream app you could select the bluetooth input (although there is no bluetooth interface connected).

I'm not convinced the I2S inputs are synchronised the way the streaming input is. I was never able to get stereo from one line input and two modules. But it's been a while, and I might have been doing something wrong...
I read somewhere or saw it in a video, that the adc inputs are capable of doing multi-room. So the data has to be send to the server, will be synchronised with other devices and then transmitted to the renderer and then to the i2s output.
 
Member
Joined 2004
Paid Member
You are probably better off doing the source selection after the A31. I've got two sets of these boards on order from Aliexpress, but they haven't arrived yet. I bought one previously, and it works really well to "automatically" switch between an analog source and Bluetooth for a single stereo source. It's got a stereo relay to do the switching. What I am waiting to verify is how well the TWS works with two modules, and how low is the latency, so that I can run a computer through the Bluetooth signal chain and then have the other input available for the output of the A31. I don't know whether this would address your needs, but I'll report back if things works out for my application.
 
Hi Neil,
it is not just the source selection what I want to do. The synchronisation of the i2s input is the main advantage. That would give me the possibility to source any data I want to the module and sync it with other modules e.g. for Multi-Device (wireless stereo pair).
I think if I take the A31 of an Arylic up2stream pro, I will have the selection feature in the 4stream app. The uC on the arylic module switches between bluetooth and line-in. I think it will make no difference which one I would choose in the app, because those two sources are switched in the uC and the output signal is sourced to the i2s in of the A31.
Think I will give that a try.
 
Member
Joined 2004
Paid Member
I think I understand what you are hoping to achieve, but I don't think the WiFi modules will work that way. The module can synchronize the left and right streaming audio because it is packetized, delayed and time-stamped. However, for real time audio, there is no delay, and my experience was that the I2S input could not be synchronized for multi-speaker applications. The I2S audio works fine for a stereo speakers connected to a single module, but when you use multiple modules, you could only synchronize the left and right channels of streaming audio--not the I2S input. At least, that was the problem I ran into--the I2S audio was delayed by about 2 seconds in the second module. Maybe there is some way to make it work, but I didn't find an easy answer and I gave up.
 
Hi everyone,

It's been a little while. I figured some more stuff out. It is possible to hook up a Jab 3 DSP amplifier to an Up2Stream module directly (V2 & V3). However, this again requires some modifications to be done. Both the crystal and 3V3 LDO have to be desoldered from the sure amplifier board. Even though these are SMD components they can easily be removed with a genereric soldering iron and a generous amount of solder after which the pads can be cleaned up.

The master clock signal will have to be connected to one of the pads on the footprint of the crystal, it's marked by a small arrow. GND, 3V3, LRCLK, BCLK and data can simply be connected between the two boards. In this configuration the supply voltage for the DSP will be provided by the Up2Stream module. Normally the DSP is powered by a power supply on the amplifier board but this can cause audible distortion due to interference.

Cheers
 

Attachments

  • Jab350.jpg
    Jab350.jpg
    80.7 KB · Views: 488
Last edited: