Xavier / I2C issue on expansion port


here are the facts, we have 3 devkits, we connect the same I2C EEPROM card (address 0x50) on pin3/5 (I2C bus 8 in Linux) of each devkit, we run the same simple test in a 2s loop = ‘i2cdetect -y 8’ on each devkit:

  • devkit0 = device always detected (no issues seen so far)

  • devkit1 = device detected for hours then not detected anymore, a power off/on restart won’t correct the problem, eventually the next day after being off for some time, the detection will be reappear properly

  • devkit2 = device sometimes detected by the command, sometimes not, random behavior from one command to the other

Any idea?


Did you use oscilloscope to observe the signal waveform when issue happen? That can help to make sure if this is issue of Xavier or I2C device.

Investigations done.

On the scope, when the issue happen, the I2C signals at the 40-pin expansion port are the following:

  • CLK = not toggling anymore, fixed at 3V3
  • SDA = strong oscillations

In dmesg: ARB issues

When the I2C device is disconnected from the expansion port, the oscillations remain; when we reconnect it, they disappear and we’re back to normal signals (100 kHz, very clean).

  • yesterday: impossible to run for more than 15 minutes
  • this morning: runs for 5h before going into oscillations

Suspect (again) the choice of the level-shifter IC on the carrier board.
The oscillations on SDA port-side, reach the DATA pin of the SOM.
The SOM CLK output is not going through the level-shifter, hence the fixed state on SCL port-side.

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.

Are you testing on dev kit? Is it the pin 3 & 5 of 40-pin header J30? If so, both SDA and SCL pass through the level shifter.

Can you share the photo of “oscillations” and normal waveform?