This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Crash on connecting second I2C module

Hi,

I'm connecting two I2C modules : MAX30102 and MPU-9250

I can individually communicate with either of these modules and they work okay. But if I connect both of them together on the same bus, only the MAX30102 works. The other module fails to communicate. I see the following on the Logic Analyzer:

image description

I flashed again, and I get a different behaviour:

image description

There is a small pulse in the SCL line towards the end. If I reset the board, I get a mix of ACKs and NACKs for write to different registers, but no consistent communication:

image description

The MAX30102 module has an inbuilt level shifter, and it pulls the I2C bus to VIN, which is 2.8v coming from the NRF52-DK. But MPU9250 module did not come with a schematic, but I'm assuming it to be pulled up to 2.8V itself, since its VIN is the same 2.8V from NRF52-DK.

If I disconnect SDA/SCL of MAX30102, then MPU9250 start communicating consistently. Could anyone point out why the communication is inconsistent ?

Parents
  • I suppose a lot of wires would rather introduce a lot of extra capacitance and slow down rise and fall times, not introduce weird spikes. Is it possible to increase the sample rate of your logic analyzer? I can see there are small bumps in the signal below the spikes, but I think it is weird that it registers as a logic 1. It is also really weird that the spikes jumped from the data to the clock signal when you shorted the solder bridge. What I2C addresses are you using? And what device ID does your flash chip return?

Reply
  • I suppose a lot of wires would rather introduce a lot of extra capacitance and slow down rise and fall times, not introduce weird spikes. Is it possible to increase the sample rate of your logic analyzer? I can see there are small bumps in the signal below the spikes, but I think it is weird that it registers as a logic 1. It is also really weird that the spikes jumped from the data to the clock signal when you shorted the solder bridge. What I2C addresses are you using? And what device ID does your flash chip return?

Children
No Data
Related