This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

I2S timing

Hi,

I am currently testing a DAC with I2S input supplied by the nRF52832. But unfortunately no signal is coming out from the DAC, furthermore when reading the error registers on the DAC through i2c I get a clock error which indicates that the clock ratio is not valid. I have discussed this with Texas Instruments audio forum, but they tell me that the clocks are valid and they point out to rather check if the I2S timing from the nRF is correct. (link to Texas forum)

Is the I2S module on the nRF52832 set to follow the I2S timing specifications?(shown in this link) I wasn't able to measure those parameters, because my scope wasn't precise enough :(

The DAC which I am using is the TAS5760L, link to datasheet.

-Erblin

Parents
  • Hello Erblin

    With the settings you mention in your post at Texas Instruments you should have a LRCLK, and SCLK error of approximately 3.1% which is within the 10% specified in the I2S Specification.

    Both of these are also within the 4% Alex Bhandari-Young at TI's forum had found for a similar product.

    In the TAS5760L product specification, legal clock ratios for SCLK/LRCLK are 32, 48 and 64. With your settings, this ratio is 32. Legal clock ratios for MCLK/LRCLK is 64, 128, 192, 256, 384 and 512. With your settings, this ratio is 64.

    As of yet I have not found any specific reason the nRF52832 should not be compatible with the TAS5760L, as all values seem to meet the requirements. I see Alex Bhandari-Young with TI has requested more information on clock tolerances, it will be interesting to see what he finds.

    I have found a post on Texas Instruments' support forum, which seems similar to your issue e2e.ti.com/.../1797838 Please have a look and see if that can be of help.

    Best regards

    Jørn Frøysa

  • You're right that the rise and fall timing requirements do look out of spec when comparing them to the GPIO electrical specification of the nRF52832, and high drive mode will probably be necessary. Your drive initialization looks correct.

    How are your I2S pins positioned relative to your TWI pins, and what's your TWI clockrate? If you are using the internal pull-ups the TWI port can be a bit sensitive to noise, and I suspect the higher current drain of the I2S might be interfering with it. You could try to either change output pins so they are further apart, or add a smaller external pull-up to the TWI, rather than the internal one, to reduce its sensitivity to noise.

Reply
  • You're right that the rise and fall timing requirements do look out of spec when comparing them to the GPIO electrical specification of the nRF52832, and high drive mode will probably be necessary. Your drive initialization looks correct.

    How are your I2S pins positioned relative to your TWI pins, and what's your TWI clockrate? If you are using the internal pull-ups the TWI port can be a bit sensitive to noise, and I suspect the higher current drain of the I2S might be interfering with it. You could try to either change output pins so they are further apart, or add a smaller external pull-up to the TWI, rather than the internal one, to reduce its sensitivity to noise.

Children
No Data
Related