TCA9548A multi falsely detects several i2c devices per port

Breakout boards, sensors, other Adafruit kits, etc.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
hopfi
 
Posts: 9
Joined: Sat Sep 17, 2016 1:12 pm

TCA9548A multi falsely detects several i2c devices per port

Post by hopfi »

Hey!

I am trying to get several MPU6050 IMUs to work on the TCA9548A multiplexer.

My current setup is to test with just one IMU, as in the following two pictures.
DSC01426.JPG
DSC01426.JPG (193.72 KiB) Viewed 876 times
DSC01427.JPG
DSC01427.JPG (204.24 KiB) Viewed 876 times
Now my problem is that when I run the scanner code from https://learn.adafruit.com/adafruit-tca ... g-and-test it tells me that there are several devices attached to each of the 8 channels. As you can see it detects the presence of my IMU with address 0x68 on port 0, but it also detects the addresses 0x0 and 0x60 on every port, although there is nothing else attached but my one IMU on port 0.

Code: Select all

TCAScanner ready!
TCA Port #0
Found I2C 0x0
Found I2C 0x60
Found I2C 0x68
TCA Port #1
Found I2C 0x0
Found I2C 0x60
TCA Port #2
Found I2C 0x0
Found I2C 0x60
TCA Port #3
Found I2C 0x0
Found I2C 0x60
TCA Port #4
Found I2C 0x0
Found I2C 0x60
TCA Port #5
Found I2C 0x0
Found I2C 0x60
TCA Port #6
Found I2C 0x0
Found I2C 0x60
TCA Port #7
Found I2C 0x0
Found I2C 0x60
It feels like I am missing something here. Any suggestions?

Thanks in advance for any feedback.

//Michael

User avatar
adafruit_support_mike
 
Posts: 68003
Joined: Thu Feb 11, 2010 2:51 pm

Re: TCA9548A multi falsely detects several i2c devices per p

Post by adafruit_support_mike »

Just to check, try disconnecting the IMU and see if you still get false positives on the other addresses.

User avatar
hopfi
 
Posts: 9
Joined: Sat Sep 17, 2016 1:12 pm

Re: TCA9548A multi falsely detects several i2c devices per p

Post by hopfi »

Yes, I disconnected the IMU (removed the sda and scl cables to it) and this is what I get:

Code: Select all

TCAScanner ready!
TCA Port #0
Found I2C 0x0
Found I2C 0x60
TCA Port #1
Found I2C 0x0
Found I2C 0x60
TCA Port #2
Found I2C 0x0
Found I2C 0x60
TCA Port #3
Found I2C 0x0
Found I2C 0x60
TCA Port #4
Found I2C 0x0
Found I2C 0x60
TCA Port #5
Found I2C 0x0
Found I2C 0x60
TCA Port #6
Found I2C 0x0
Found I2C 0x60
TCA Port #7
Found I2C 0x0
Found I2C 0x60

done

User avatar
hopfi
 
Posts: 9
Joined: Sat Sep 17, 2016 1:12 pm

Re: TCA9548A multi falsely detects several i2c devices per p

Post by hopfi »

I just noticed that it doesn't really affect what I am doing since I can simply run

Code: Select all

tcaselect(0)
and then in the code that connects to the IMU I can of course use the 0x68 address and it actually works.

Still I am bit curious as to why those "devices" appear there. Are 0x0 and 0x60 some special/reserved addresses that actually mean something?

Regards,
//Michael

User avatar
adafruit_support_mike
 
Posts: 68003
Joined: Thu Feb 11, 2010 2:51 pm

Re: TCA9548A multi falsely detects several i2c devices per p

Post by adafruit_support_mike »

There's nothing special about those addresses. The TCA9548's own I2C address should be 0x70.

It sounds like there's some kind of glitch in the chip. Let's get you another one.

Send a note containing a link to this thread and your order number to [email protected]. The folks there will get you a replacement.


(#2717)

User avatar
adafruit_support_bill
 
Posts: 89192
Joined: Sat Feb 07, 2009 10:11 am

Re: TCA9548A multi falsely detects several i2c devices per p

Post by adafruit_support_bill »

In your first photo, it looks like you have a motor shield attached. The default address for the motor shield is 0x60, with an 'all-call' address of 0x70. And since it is directly connected to the Arduino, it will be detected regardless of the multiplexer channel selection.

User avatar
Freimund
 
Posts: 2
Joined: Tue Aug 15, 2017 3:03 pm

Re: TCA9548A multi falsely detects several i2c devices per p

Post by Freimund »

Obviously way late, but I'm having a similar issue using multiplexer and motor shield. Is there a way to work around the 'all-call'? I'm trying to get measurements from two VL53L0X connected through the multiplexer. I measure accurately seperately and can measure them correctly with the multiplexer and no motor shield, but not with everything together.

User avatar
adafruit_support_bill
 
Posts: 89192
Joined: Sat Feb 07, 2009 10:11 am

Re: TCA9548A multi falsely detects several i2c devices per p

Post by adafruit_support_bill »

The All-Call address of the PCA9685 is fixed at 0x70. But the TCA9548 can be addressed anywhere from 0x70 to 0X77 using the address jumpers on the back of the board:

Image

User avatar
Freimund
 
Posts: 2
Joined: Tue Aug 15, 2017 3:03 pm

Re: TCA9548A multi falsely detects several i2c devices per p

Post by Freimund »

And that solves the issue of having 0x0 and 0x60 active on every port?

User avatar
adafruit_support_bill
 
Posts: 89192
Joined: Sat Feb 07, 2009 10:11 am

Re: TCA9548A multi falsely detects several i2c devices per p

Post by adafruit_support_bill »

Yes. You will be able to address the multiplexer separately from the motor shield.

Locked
Please be positive and constructive with your questions and comments.

Return to “Other Products from Adafruit”