Community
cancel
Showing results for 
Search instead for 
Did you mean: 
TWeiW
New Contributor I
1,734 Views

how to enable I2C1?

Hi,I'm sorry that i don't know how to enable I2C1(mini breakout board).i know that (J18-PIN6->I2C1_SCL J17-PIN8->I2C1_SDA),and the edison image is newest.

and if i use i2cdetect to select the slave device. i can't find anyone.

 

root@edison:~# i2cdetect -y -r 6

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: — — — — — — — — — — — — —

10: — — — — — — — — — — — — — — — —

20: — — — — — — — — — — — — — — — —

30: — — — — — — — — — — — — — — — —

40: — — — — — — — — — — — — — — — —

50: — — — — — — — — — — — — — — — —

60: — — — — — — — — — — — — — — — —

70: — — — — — — — —

 

 

but if i use I2c6,it work well.

 

root@edison:~# i2cdetect -y -r 6

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: — — — — — — — — — — — — —

10: — — — — — — — — — — — — — — — —

20: — — — — — — — — — — — — — — — —

30: — — — — — — — — — — — — — — — —

40: — — — — — — — — — — — — — — — —

50: — — — — — — — — — — — — — — — —

60: — — — — — — — — — — — — — — — —

70: — — — — — — — 77

 

 

so, my problem is how to enable the i2c1?

 

0 Kudos
8 Replies
Sergio_A_Intel
Employee
141 Views

Hi freshbird

I've been reading on the i2C ports on the Edison. It looks like only i2C6 is configured to work and using both i2C ports is not going to work without doing some software changes.

I found some links in which several users discuss having similar issues to yours, take a look at them and try the suggestions posted.

/message/253549# 253549 https://communities.intel.com/message/253549# 253549

/message/256482# 256482 https://communities.intel.com/message/256482# 256482

/message/257701# 257701 https://communities.intel.com/message/257701# 257701

Regards

Sergio

KEckh
Valued Contributor III
141 Views

Hi Sergio and freshbird,

Thanks for the links. It looks like a few of them have to do with using Arduino IDE, which currently is hard coded to only use the one I2C buss. As I mentioned in some other threads, I have a beginning of Arduino IDE update to try to get more of the mini-breakout board working with it. Use MRAA pin numbers, don't try to do all of the mux stuff, that is not there, ... Have not tried to change I2C library to allow multiple buss as I am not really doing anything with I2C currently ...

Looking at the MRAA sources, it looks like it is setup to use both I2C interfaces on the mini-breakout board. Note: running i2cdetect on arduino breakout board to talk to buss 1, causes lots of errors to start happening, so it may be actually trying to hit the buss...

Kurt

TWeiW
New Contributor I
141 Views

Oh,thanks to your help.and to be honest, i just want to enable two i2c slave devices(BMP180 & MPU9150).and i found that each one can work well if i only touch one sensor to the I2C6.

but if i connect two sensors to I2C6, it can't work.and i use i2cdetect -y -r 6, there is no sensor founded.

so,i'm sorry for that do you have any advice??

Sergio_A_Intel
Employee
141 Views

Hi

How about if you try changing the options of the i2cdetect command? As you can see from this link http://linux.die.net/man/8/i2cdetect http://linux.die.net/man/8/i2cdetect , the option of –r is not recommended. Take a look at the options to see if you can scan both i2c devices at the same time using other options of i2cdetect.

Regards

Sergio

Carlos_M_Intel
Employee
141 Views

Hi freshbird

Were you able to use I2C to interact with your devices?

Regards;

CMata

TWeiW
New Contributor I
141 Views

I'm sorry for that it still can't work well...and i see the thread:

but i know that Edison Arduino kit had the levelshifter and pull up resistor(from 1.8v to 3.3v or 5v and 4.7kΩ resistor.)..

so,do you have any advise?

Sergio_A_Intel
Employee
141 Views

Hi freshbird

According to that link you posted, another user has the same issue as you but has put a line with the error he is receiving, do you get the same error? Please post the entire error log, I think it will help us determine what is wrong with your configuration.

Regards

Sergio

idata
Community Manager
141 Views

Hi,

I am also experiencing similar problems, using I2C1.

For example when I use i2cdetect or any mraa functions to initialize and read on I2C1, I am not getting anything. By not getting anything I cannot see any signal on a logic analyzer.

At the same time I2C6 works perfectly fine. I do not want to use a Arduino IDE. Is there any solution.

I am using Mini-breakout board. and latest version of yocto and mraa

Reply