ADAU1701 - cannot get I2S in to I2S out
The design uses an I2S input stream that provides:
1) 12.288MHz MCLK feeding the MCLKI pin (as well as MCLKI on an external DAC)
2) 3.07MHz BCLK feeding the INPUT_BCLK pin
3) 48KHz WCLK feeding the INPUT_LRCLK pin
4) SDATA feeding the SDATA_IN1 pin (SigmaStudio Inputs 4,5 of the input block)
For the MPIO pins, the I2S ports are setup as above. Proper clock phases have been verified on the logic analyzer
MCLK=256fs, BCLK=64clks/wclk, Input format is I2S
I've connected the input block input 4 to DAC0 and input 5 to DAC1 (due to INPUT_SDATA0 and INPUT_SDATA1 lines swapped, as my serial data is on SDATA1)
The DACS are used to monitor the converted input I2S. However, no signal appears on the outputs...
DACS are not powered down, nor muted.
For the output side:
1) The DAC MCLK is connected to MCLKI (above, sourced by the input I2S MCLK)
2) OUTPUT_BCLK is connected to the DAC BCLK
3) OUTPUT_LRCLK is connected to the DAC WCLK
4) OUTPUT_SDATA0 is connected to the DAC SDI
RAM MODULO is set to non-zero otherwise the output I2S does not work?!
I was not aware that this was used in the 1701. Can someone please clarify this.
The I2S output side is setup as a master.
I've verified the output DAC by instantiating a sine oscillator and sending it out the I2S to the DAC. Signal at the DAC is good!
It is also routed to the 1701 DACS and signal is good there as well.
My problem - I2S is not working. Any ideas?
Audio Signal Processors
SigmaDSP Audio Processors
adau1701
I don't expect that the problem is this simple, but you mentioned the input routed to DAC0 and DAC1, and that you could monitor the DAC output (from the I2S source I gather) but had no I2S output from -1701? Do you also have signal routed to DIG0 in your Sigmastudio schematic?
Hello Bob,
I need to see your project file so I can see the register setting and the SigmaStudio schematic.
I am a bit confused as to exactly how you tested and what worked.
You instantiated a sine oscillator in an external DSP? Then sent it via I2S to the DACs? So the input side of the I2S is working?
So the ADC/DSP outputs are not going out of the I2S outputs correct?
Thanks,
Dave T
An oscillator was instantiated IN the 1701 which was routed to the DIG0 and DIG1 outputs. The signal was present on the external DAC attached to the I2S running in master mode. I2S output works fine.
I2S INPUT routed to the 1701 INTERNAL DAC fails.
I'm trying to implement is I2S pass through with independent clocks and data (except for MCLK which feeds MCLKI and the external DAC MCLK).
I have signals routed to both INPUT_SDATA0 and INPUT_SDATA1. I'm using INPUT_SDATA1.
Here is the project file.
Hello Bob,
I tried your project and was able to get serial data from the Audio Precision into serial port 0 and to analog out using the internal DACs.
I imagine you were feeding the 1701 MCLK?
The input serial ports on this device are always a slave so are you feeding it LR and BCLK? I know at the beginning of this post you did answer these questions.
Which Evaluation board are you using? The MINIZ board is what I used in the lab and I had to change your project to wire it slightly differently. This eval board only has the serial data 0 port available via headers and the headphone output jack is wired to DACs 2 & 3 so I had to cross the wires to route port 0 to outputs 2 & 3. But it did work. So I am trying to think of other things that would prevent your board from working...
To answer your question about the RAM Modulo. This needs to be set to 8 and should never change. This register never should have been included in the GUI for this part.
Dave T
Dave,
We have the MINIBZ eval.
We are feeding MCLK (12.288MHz), BCLK (3.07MHz) and WCLK (48K), and SDATA0 into the I2S input port - verified w/scope and logic analyzer
Would it be possible to get your project and we'll re-route the outputs where they need to go?
What version of SigmaStudio are you using? We are on 3.11 Rev2 Build 1396.
Your help is most appreciated.
Hello Bob,
I have attached two project files. One of them is your project with the channels swapped. Using the MINIZ eval board you can route one I2S signal into the headers (serial port 0) and the audio will be routed out of DAC 2 &3 (the third and fourth DACs).
(I will say the following for others who may read this)
You will need to feed in MCLK, BCLK, LRCLK and DATA into the header. The slide switch for MCLK input select needs to be to the left, towards the 1701. If it is the other way I still get signal but it is quite distorted because the internal eval board MCLK oscillator is not correlated with the data coming in.
The second file is kind of a fun project. We use something similar to test the boards. This project uses the pot to adjust the flashing frequency of the LED on the board. Then the three pushbuttons will illuminate another LED. The audio routing is summing up the analog input with the digital input and the internal oscillator. Then the audio is sent out to both the headphones and the speaker out. Be careful because the oscillator volume is at 0dBFS. Now, with the board I have here I was not able to get audio from the ADCs with this project. I think my board may be damaged. Something else to put on my to-do list.
So now back to your test for brining in two I2S streams. You will have to modify this board because there is an LED on the pin that is the serial port 1. On this eval board it is an output. Your project is setup correctly in that the audio will appear on the next two audio inputs after serial port 0.
Thanks,
Dave T
Guys,
Thanks for all your help. We did manage to get I2S to the DAC! We connected the Audio Precision to the 8-pin header of the eval board. Signal came out of the DACs. It looks like the issue is with our I2S source. Funny though, the clocks are all correct. We're investigating.
Hi David,
I see no specific mention of whether the DSPPROJ file can accommodate the MINIBZ board. Will it work with that one?
Thx,
Brian
Hey all,
Just an FYI that the "MINIBZ" silkscreen label on the board and its appearance (just once) in the online eval board document is presumed to be in error. The "B" was dropped from the name, but only after the board silkscreen was finalized with the "B" still in there. "MINIZ" is the way the board should be referenced for documentation and ordering.
This further implies that the project files should be functional. And the board would have to be altered to allow MP1 to be used for a second I2S input port.
Regards,
Brian
So the issue was that our I2S source was putting out a level way down in the mud. After attaching the AP to our I2S interface we were able to get signal through our system. Eventually, we resolved the level issue with our I2S source.
Thanks again, all.
This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.
Thank you,
EZ Admin
Please log in to reply.