I am trying to use a TCA9548A 8-Channel I2C Switch to connect eight identical sensors with an ESP32-WROOM-32D controller.
The sensors are Goertek SPL06-007 devices which I believe to be based on the Infineon DPS310. The datasheet is at https://datasheet.lcsc.com/szlcsc/1912111437_Goertek-SPL06-007_C233787.pdf
I can communicate with the TCA9548A and recognize it at address #70. (I have 3.3K pull-ups on SDA and SCL between the ESP32 and the switch.)
However, as soon as I write to the register at #70 to open a channel, SDA goes low and stays there and the bus reports busy.
With all channels closed on the sensor side of the switch I see that SC0-7 are at 3.25V but SD0-7 are at around 0.4V.
I have tried 10K pullups, 3.3K pullups and a 2.5K pullup (although in this case only on the channel I was opening) and the result is the same in each case.
The spec for the sensor states that the minimum pull-up resistor value is 5K, so going even lower seems pointless.
Do you have any suggestions on what else I should be looking at?