Post Go back to editing

ADAU1701 and SigmaTcp - Header mismatch

Hey All,

I was trying to configure an ADAU1701 connected to a raspberry pi (over an i2c bus, running Raspbian) using SigmaTcp. Unfortunately, I was unable to do that in the first attempt. I analyzed the TCPIP packages sent by SigmaStudio using wireshark and I noticed that the header was different from the one that SigmaTcp was waiting. Sigma tcp waits for a 8 bytes header, with length in the bytes 4 and 5, and addr in the bytes 6 and 7. SigmaStudio sends a 10 bytes header with length in the bytes 6 and 7, and addr in the bytes 8 and 9. After some changes in function handle_connection on sigma-tcp.c, I was able to control the chip over a TCP/IP connection. 

Is there a different version of sigma tcp to be used with ADAU1701? I searched in this forum and couldn't find anyone with the same problem, so I decided to post this. 

Thanks!

Lucas@

Parents
  • I believe that your problem is in the i2c interface. I faced the same problem when trying to interface the ADAU1701 with raspberryPi (I saw in the other thread that it is the hardware that you are using). Are you able to read the DSP in another way? Try to "i2cdetect -y" your i2c bus and verify if you are able to detect the codec in the right address. 

    The ADAU  i2c bus requires two start conditions in a row, and it seems that the i2c hardware of the broadcom chip in RPI doesn't do that (and I couldn't find a way to change it). 

    you can read more about this problem here:

    ADAU1701 I2C read 

    Lucas

Reply
  • I believe that your problem is in the i2c interface. I faced the same problem when trying to interface the ADAU1701 with raspberryPi (I saw in the other thread that it is the hardware that you are using). Are you able to read the DSP in another way? Try to "i2cdetect -y" your i2c bus and verify if you are able to detect the codec in the right address. 

    The ADAU  i2c bus requires two start conditions in a row, and it seems that the i2c hardware of the broadcom chip in RPI doesn't do that (and I couldn't find a way to change it). 

    you can read more about this problem here:

    ADAU1701 I2C read 

    Lucas

Children
No Data