ΣSigmaStudio Ask AI Русский Log in

ADAU1701: is 44.1Khz a supported rate for the I2S Serial Data Input?

SigmaDSP & SigmaStudio niektb Mar 16, 2023 00:00 3 replies Original on forum ↗
Subscribe
niektb Question
Mar 16, 2023 00:00

Hi all! I've designed a (in my opinion ;)) very nice DSP board where a Teensy 4.0 and a ADAU1701 can work in tandem for audio effects. However, I'm having some struggles to get sound between the two. Then I realised the Teensy Audio Library works at 16-bit, 44.1Khz but Table 63 from the ADAU1701's datasheet only lists 48, 96 and 192 kHz... 44.1kHz is not mentioned... Now my question is; is 44.1kHz actually also supported as serial data rate? I could not find the answer but forgive me if I overlooked a topic! Thanks in advance!

PDF

Edit Notes
Added PDF of schematic

[edited by: niektb at 7:23 PM (GMT -4) on 16 Mar 2023]

Audio Signal Processors

hardware

SigmaDSP Audio Processors

adau1701

1.72.png-185x240x2.png
1.72.png-185x240x2.png
KJBob Reply
Mar 16, 2023 00:00

Hello,

You can run your ADAU1701 at 44.1K by providing a 11.2896 MHz MCLK instead of 12.288 MHz. This needs to be synchronized with the I2S to/from your Teensy, because the -1701 lacks a ASRC (Asynchronous Sample Rate Converter). If the Teensy can supply this 11.2896 MHz clock, run the -1701 as a I2S subordinate. Or if the Teensy is capable of accepting an external MCLK, use a 11.2896 crystal with the -1701 and make it the MCLK source. If you run your Teensy and -1701 with independent clocks, audible artifacts result -- connecting the I2S clock lines alone is not sufficient. More advanced SigmaDSPs such as the ADAU1452 avoid this limitation by including ASRCs. Please see this post for more information.

Best regards,

Bob

niektb Reply
Apr 11, 2023 00:00

Hi Bob,

Okay that's nice! The Teensy indeed generates the main clock for the ADAU1701 and also at the right frequency as far as I can tell (I have a very old analog scope which doesn't do measurements so it's a bit of guesswork). The BCK and LRCLK are also running but the DATA lines (in and out) are completely quiet. I did set the register settings such that the auxiliary input accept SDATA.

Hmm, I do have a question: when you export a sigmaDSP project to hex (and header files), do the register settings also get exported as part of this? I'm using this repository for the export scripts:github.com/.../SigmaDSP

niektb Reply
Apr 11, 2023 00:00

This is what my register settings look like btw!

pastedimage1681201078325v1.png
pastedimage1681201078325v1.png