How to implement more than one I2C-Connection?

Hey people,

I have a question. Is it possible to run more than one I2C-Connection on different pins?

I bought 3 MCP3421 ICs and they all have the same address by factory :disappointed_relieved:. They are not changeable.
And I only got one Wire()-connection on SDA/SCL pins.

So can I just add one more Wire()-connection to use it for another device on the same time? How can I do it, I found nothing on the internet?

Thanks in advance.

You can't use other pins for this because it is the hardware behind the pins that is fixed.
You can either write a bit banges I2C driver or use a data multiplexer on the bus.

Soft I2C

http://jeelabs.org/2010/03/15/software-and-hardware-i2c/
http://forums.adafruit.com/viewtopic.php?f=25&t=13722

Could you only power on one device at a time by supplying device power from a digital output, or does your app not allow this?

So you think an external mux would be better and faster?
I already ordered one "PCA9544A" for testing.

Maybe it's better to don't blame the Arduino with this task?

Could you only power on one device at a time by supplying device power from a digital output,

Bad idea as the unpowered one will drag down the powered line.

Use this:-

benny66766:
I already ordered one "PCA9544A" for testing.

That PCA9544A is looking good. It is a lot faster than Soft I2C.
Will you be using everything at 5V ?

Hi,

I am actually using everything on 5V. Is there a problem with?