I2C device is not recognized in the GPIO pins (Solved)


I have connected I2C interface sensor module to Expansion Header Pin
and then, ‘sudo i2cdetect -y -r 1’ command can not find device.

I installed OS from Jetpack 4.1,
but do I need to install a kernel program or activate an I2C port separately?

Also, in which of these documents are there?
(I already confirmed the OEM Design Guide, but I did not understand the procedure)

Thanks in advance

What pins are you using to power the I2C device? Is it possible that the device is on another bus (perhaps bus 0?)

Pin 1 for power 3.3V and Pin6 for GND.
Does bus0 mean I2C_GP0 of the PCI slot?

@Naruru you used:
sudo i2cdetect -y -r 1
which indicated I2C Bus 1.

I believe that all of the Expansion Header pins (other than power and ground) are currently marked as GPIO, and it is up to the developer to assign SFIO (“Specific Function Input Output” such as I2C). This requires a little digging through the pinmux, gpio-names.h and other documentation. I think the idea here is to build a custom device tree with the configuration that you need.

I haven’t dug through the documents yet so I don’t have the exact details, but need to.

Hi Naruru,

I2C5 is on the controller 9, please use command “sudo i2cdetect -y -r 8” to read it.

@ Kangalow, Trumany
Thank you very much for your support.
I can read my I2C device from bus-8.

Hi @Naruru ,
How to know I2C_GP5 is on the controller 9?
How to know I2C_GP5 mapping to /dev/i2c-8?