I2C Reliability -
Posted: Mon Aug 06, 2018 7:56 am
Hi all,
Using a ESP32 connected to two devices on I2C I get very erratic behaviour. I have a PCF IO expander and a SI570 Controllable oscillator.
I have the I2C lines on IO 22+23 and a 330ohm pullup resistors. On first power-up, it seems to work, but then things go bad.
Attached is from a Logic analyser.
The transaction to the IO expander works 99% of the time, but that is simple.
First power-up on the SI570 Oscillator, although I do have to re-try transactions once. (there is one NACK instead of ALL nack)
In the bad cases, I get NACK and then I try 10 times to write to the address. The Bus recovers after a while and I have no idea why.
Using a ESP32 connected to two devices on I2C I get very erratic behaviour. I have a PCF IO expander and a SI570 Controllable oscillator.
I have the I2C lines on IO 22+23 and a 330ohm pullup resistors. On first power-up, it seems to work, but then things go bad.
Attached is from a Logic analyser.
The transaction to the IO expander works 99% of the time, but that is simple.
First power-up on the SI570 Oscillator, although I do have to re-try transactions once. (there is one NACK instead of ALL nack)
In the bad cases, I get NACK and then I try 10 times to write to the address. The Bus recovers after a while and I have no idea why.