cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F407VG, I2C Locked up and can't release the SDA line

Mr_RO
Associate II

Hello,

I have an STM32F407 (Master) communicating with an AHT10 device (Slave) over I2C as one to one. Till this part everything works just fine, the problem start when i add a new device (Slave) in the same bus (eg. MPU6050) after a while the I2C lines locked up (SCL High and SDA Low). As shown in the picture below.

 

1.PNG

 

Once I power off only the AHT10 Device the lines goes back normal, and if I put it back in the bus, after some times (the period of time it's not synchronised) the problem will appear again. As shown below.

 

2.PNG

 

At first i thought that the problem within the AHT10 Device and As I mentioned before in one to one connectivity he works just fine. Even tho, the master his the one that he should release the line. Aside from that, I noticed that the I2C not sending the 9th clock pulse to release the I2C lines. As shown below.

 

3.PNG

 

So, I checked the I2C_ISR register to get the status of the I2C peripheral and I found that the ARLO Bit = 1 (Arbitration Lost Bit), so I tried to reset the I2C through the SWRST Bit (Software Reset) in the I2C_CR1 register. After, the I2C is initialized and the register statue returned to the ideal state, but the problem remain the same.

 

PS: As I noticed in the previous problems within the community, this is a frequent problem.

 

Waiting for support, Thanks in advance,

Regards,

11 REPLIES 11
Mr_RO
Associate II

Hi waclawek.jan

 

> what if AHT10 considers it as an address?

- Maybe that's the case, I didn't' noticed till now but I will follow each last msg or add before the SDA goes low.

 

> show us a zoomed section of the end of communication

- Okay I will try.

 

> Only a single AHT10 can be connected to the I2C bus

- I have already read that section but I thought they meant only one AHT10 device in the bus, because u can't change the address of the others. Not that we can't add another device even though it's not AHT10, but yeah maybe correct theory.

 

Thank you.

Mr_RO
Associate II

And for the AHT10 Device, this is the English Version of the datasheet.