The sensors and the MUX work with 3.3v. I am using a level shifter from the MUX to the Edison (Figure 1).
The Edison shows the MUX's address but don't show the Sensor's address (I set the MUX to read just SDA0 and SCL0). So I tried different ways to connect the parts:
Unfortunately I must use 5v for the GPIOs. Anyone knows why the Edison just recognizes the MUX when I am using the level shifters? I tried to turn the internal pullup resistors off but it shows me "Resource is busy."
Thank you in advance.
Thanks for reaching out.
That's weird. I don't know why this is happening, and I don't have the devices to test it. Nevertheless, I will try my best to help you.
Normally, when an I2C device is not recognized is because it is not powered, so we recommend the users to supply the I2C sensors with an external power supply, please try it and let us know if it works.
I know that you must use 5 V for the GPIOs, as a workaround if both devices are recognized using IOREF = 3.3 V, use this configuration and try to use the level shifters for the GPIOs that need 5 V.
I hope you find this useful.
Have a nice day.