ADAU1701 I2C boot
Hi,
I'm trying to boot an AUDA1701 from an I2C EEPROM, but unfortunately the I2C communication stops after a few byte transmitted. In general, the I2S communication seems to work. I can also read the EEPROM without problems from another I2C master. Does anybody have an idea what happened here?
Regards
Daniel
Audio Signal Processors
SigmaDSP Audio Processors
adau1701
Hello Daniel,
SigmaDSPs are a bit fussy about their boot sequence; if anything is out of place they quit and go into idle mode. Thus, what the DSP reads from the EEPROM must match exactly what's shown in Figure 28 of the ADAU1701 Data Sheet, page 28. I attached a copy of your analyzer display set alongside the first line of Figure 28's template. It looks good until the "length" byte, which should specify five (5) more bytes to read from EEPROM and write to the DSP. The EEPROM reads back a (2) here instead, so the -1701 happily reads the following two bytes and then chokes (with a NAK) on the third. Once that happens it's all over, no more booting takes place.
Best regards,
Bob
Guess you're right, thanks.
Bob's debugging is correct.
In order to generate a proper image for your self-boot EEPROM, use SigmaStudio. Follow the steps in this tutorial: https://ez.analog.com/message/5759#5759
Thank you. I fixed my program, it seems to work now. I use the TxBuffer file generated by SigmaStudio for both uploading to the DSP directly and for EEPROM programming. Using the same file for both is easier for my development and should work.
Please log in to reply.