2025-01-24 12:15 PM - last edited on 2025-01-24 02:56 PM by Tesla DeLorean
What does this error mean for the I2C interface? I have it on the connection between the LORA E5 Mini and the SI7021 sensor.
The debugger stops here:
Exactly at his method call:
/* Wait until TXIS flag is set */
if (I2C_WaitOnTXISFlagUntilTimeout(hi2c, Timeout, Tickstart) != HAL_OK)
{
return HAL_ERROR;
}
As you can see, the I2C is in the HAL_I2C_STATE_READY.
I have four items of the same sensor tested with this LORA device, and all behave the same, so I think a hardware error should be excluded.
Solved! Go to Solution.
2025-01-24 04:37 PM
I2C is open-collector/open-drain, you need pull-up's somewhere on the bus to ensure SCL/SDA go High.
10K is on the weak side, might not be enough for fast rise times. The Si7021 spec's them for lower current draw, but it might not be enough for other devices, depending on how many slaves, and how the bus is constructed. I'd probably shoot for 2K7, and 1K5 is on the aggressive side.