I2C1 signal problems (BeagleBone Rev. A3)


I use an Angstrom demo image Angstrom-Cloud9-IDE-eglibc-ipk-v2012.04. I have used 2 pullup resistor 4,7K on SCL and SDL line.
I used mbed device as a I2C slave for testing.

I have used

root@beaglebone:/sys/devices/platform/omap# i2cdetect -F -y 1
Functionalities implemented by /dev/i2c-1:
I2C yes
SMBus Quick Command no
SMBus Send Byte yes
SMBus Receive Byte yes
SMBus Write Byte yes
SMBus Read Byte yes
SMBus Write Word yes
SMBus Read Word yes
SMBus Process Call yes
SMBus Block Write yes
SMBus Block Read no
SMBus Block Process Call no
SMBus PEC yes
I2C Block Write yes
I2C Block Read yes


The problems is that no device could be detected !

Same here.

I have used a logic analyser to check (P9 - Pin 17 and Pin 18) if a signals are generated (call i2cdetect -y -r 1).
I assume that calling i2cdetect -y -r 1 generate signals which could be detected by a logic analyser. Is this correct ?

Correct. I did the same with no signal detected but if you repeat this to I2C2 (bus 3 on linux) you will see signal.

Is it possible that something is wrong with the Pin configuration ???

I changed configs to match I2C2 that is working good but still have no signal.

What can I do to make I2C1 working ???

I am assuming the I2C1 is bus i2c-1 on linux while I2C2 is, for sure, bus i2c-3. I can see that bus i2c-1 works because I can see the value of Beagle eeprom but I though this would reflect in P9 header pins also.

Still looking for more information.

Or in fact, I2C1 is disabled (and mapped as i2c-2 on linux), i2c-1 on linux
represents I2C0 that is not mapped to headers and I2C2 is linux's i2c-3...
that makes sense now. :slight_smile: