Skip to main content
mani s
Associate III
Jul 20, 2020 11:56 AM UTC
Solved

STM32G474RE - I2C always busy flag

I have generated the I2C code using cube-mx. My slave device is I2C based DIGI-POT.

when I check with HAL_I2C_IsDeviceReady() function - it is always coming busy flag.

These below are the Hardware and Firmware checks I have done:

HW checks -

  1. DIGIPOT is getting 5v voltage.
  2. Checked the pull-up resistors values - fine - using 4.7kohm

Fw checks -

 1. address - 0101 1000 - 0x58

2. Read state of SCL and SDA pins - Both are logic high.

3. Voltage on the both the pins - 3.3v

4.Some people are facing same issue - suggested in the internet to do first I2C clock enable and then GPIO init - Not working this as well. This is linkhttps://electronics.stackexchange.com/questions/272427/stm32-busy-flag-is-set-after-i2c-initialization.

This topic has been closed for replies.
mani s
mani sBest answer
Associate III
Jul 31, 2020 11:22 AM UTC

I found the issue , it is handler issue

2 replies

mani s
mani sAuthor
Associate III
Jul 23, 2020 5:05 AM UTC

Is anybody have clue on this ?

mani s
mani sAuthorBest answer
Associate III
Jul 31, 2020 11:22 AM UTC

I found the issue , it is handler issue