2.2k actually sounds excessive, depending on the other components in the system that might also have internal pullups as well. I'm also unsure about the "multiple" PCA9507. I don't think you need multiple and they may in fact result in unwanted behavior. Adafruit was able to run an I2C line over 50m Ethernet cable with just ONE LTC4311.Hi Rob, thank you for your answer.
I’ve done some test:
I’m running a board with multiple PCA9507 as I2C extender; if I connect the sensor with 20cm of cable everything works fine.
If I run the full cable (around 2mt) to the same connector the sensor doesn’t work.
I’ve then tested the sensor attached to the outlet expansion board (which is connected to the cpu board by a bus extended by P82B96D): the PCA9685 that drives the output works without a problem, SHT31D connected to the same bus with 20cm of cable doesn’t work…
I was testing everything on a prototype board with very long cable (about 5 meters) and everything was working fine so I tought that with shorter cable I’ll not have any problem… could it be something related to the pullman-up resistor value? On my board I have 2.2K pull-up…
Let me know if tou have any idea, I’ll keep as last chance the use of the ESP32 only to read this sensor…
Thank you!
I would recommend starting a dedicated thread and lay out the details of your setup: Power supplies, how they are connected to the PI, your I2C network and how that is powered/level shifted (if at all). That would help greatly in analysing the problem and helping you solve it.