Maximum i2c card on arduino

We need 6 cards that communicate with I2C on an Arduino:
3x ADS7828 and 3x MCP23008.
Every card has its own 12VDC external supply and a unique address.
When I put only 4 cards on the bus, everything goes.
But, If I put more, the Arduino crashed.

It seems to be a lack of 5V supply on I2C…
How can I get more supply on I2C channel ?
Is the PCA9547 the solution?
Any ideas to fix this issue?

Thank you

You can have up to 4 of the ADS7828 and up to 8 of the MCP23008 to the same I2C bus without a bus multiplexer. There would be no reason for the Arduino to “crash”. I would say that is code related.

You should connect all boards to the bus with address jumpers installed correctly, then run some simple I2C bus scan code to see if all devices appear on the bus.

The address scan was OK, it seems to be 5v, I2c issue.
I put all the jumpers (5v ,I2c )on the card, and it runs.
In the past, I never needed to put on this jumper.
Thank you for help.

1 Like