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

Loading dsp data using esp32 holds i2c lines low

SigmaDSP & SigmaStudio abdi Feb 26, 2026 00:00 6 replies Original on forum ↗
Subscribe
abdi Question
Feb 26, 2026 00:00

On ESP32 I program the ADAU1452 DSP over a shared I2C bus during startup (bulk writes of the DSP image). During this DSP load phase I have observed, on a logic analyzer that both I2C lines (SCL and SDA) are held low for random time intervals during different write transactions where one of them is ~350 ms. While this happens the bus is effectively stalled and one of our i2c device gets disrupted.

I need guidance on understanding why the dsp is holding the bus low for hundreds of milliseconds. I have observed that the bigger timeout i-e~350ms happens when writing program data to address 0xC0000. While there are other writes that also have these delays in getting the ack back they are relatively small intervals usually < 50ms.

I have attached below the image highlighting the delay.

Can anyone help on how to resolve this or why this happens?

Regards.
Abdullah

Audio Signal Processors

adau1452

software

SigmaDSP Audio Processors

dsp_i2c.png
dsp_i2c.png
Harishgowtham Reply
Feb 27, 2026 00:00

Hello Abdullah,

We are trying to simulate it; we will get back to you.

Thanks for your patience.

Regards,

Harish

abdi Reply
Mar 6, 2026 00:00

Hi Harish

Were you able to reproduce the above behavior ?

Looking forward to your reply.

Regards
Abdullah

Aravindhan Reply
Mar 6, 2026 00:00

Hello Abdullah,

I programmed the Sigma-DSP from an STM32 microcontroller over I2C, and I did not observe any line pull down issues on my side Please refer to the probe image below

If possible, please share your sigma studio project. I will try to boot it on my device and check what happens

Regards

Aravindh

pastedimage1772797300213v1.png
pastedimage1772797300213v1.png
abdi Reply
Mar 6, 2026 00:00

Hi Aravindh,

Would it be possible to do a private ticket? because then i could share our DSP project with you.

Regards
Abdullah

DaveThib Reply
Mar 6, 2026 00:00

Hello Abdullah,

Just send Aravindh a private message but make sure to also send him a friend request. Otherwise, he will not be able to respond.

There is a chance you might get an error message saying he cannot receive your message. Then just send him a friend request and then after he accepts you will be able to send private messages.

I have set my account to accept a message from anyone but the default for the forum is only to accept messages from friends.

This is why people send me a message and then I cannot respond because of their settings. So send a friend request.

Thanks,

Dave T

CKay Reply
Apr 7, 2026 00:00

If you used the analog example, I might have noticed something. In the delay block, pointers to data 2 and data 1 are used; it should correctly be data 1 and data 0. Who knows what's in your memory cell?