Adafruit PCA9546 4-Channel I2C Multiplexer
100 units will be available shortly.
You just found the perfect I2C sensor, and you want to wire up two or three or more of them to your Arduino when you realize "Uh oh, this chip has a fixed I2C address, and from what I know about I2C, you cannot have two devices with the same address on the same SDA/SCL pins!" Are you out of luck? You would be if you didn't have this ultra-cool PCA9546 1-to-4 I2C multiplexer!
Finally, a way to get up to 4 same-address I2C devices hooked up to one microcontroller - this multiplexer acts as a gatekeeper, shuttling the commands to the selected set of I2C pins with your command. If you need to have up to 8 multiplexed devices, check out the 8-channel TCA9548 version of this board.
Using it is fairly straight-forward: the multiplexer itself is on I2C address 0x70 (but can be adjusted from 0x70 to 0x77) and you simply write a single byte with the desired multiplexed output number to that port, and bam - any future I2C packets will get sent to that port. In theory, you could have 8 of these multiplexers on each of 0x70-0x77 addresses in order to control 8*4 = 32 of the same-I2C-addressed-part.
Like all Adafruit breakouts, we put this nice chip on a breakout for you so you can use it on a breadboard with capacitors, and pullups and pulldowns to make usage a snap. Some header is required, and once soldered, you can plug it into a solderless breadboard. The chip itself is 3V and 5V compliant, so you can use it with any logic level.
Comes with only the assembled PCB, no cables or sensors included (we have tons available though!)
The Adafruit PCA9546 4-Channel I2C Multiplexer appears in the following collections:
SKU AF-5663
by Little Bird