XIAO Expansion board: 2x Grove connectors limited to I2C?

Hi. Just getting started with the Xiao expansion board with Xiao RP2040. I’ve got a Grove rotary encoder, Grove solid-state relay, and Grove DS18B20 (one-wire bus) temperature sensor, with the plan to make a PID temperature controller. I think I’ve found a limitation though. Can someone confirm that the two Grove connectors on the top side of the PCB cannot be used for GPIO, if the OLED display is also used? It seems that the OLED display, and the two aforementioned connectors, are all connected to the same I2C bus? If this is true, is there a workaround, such as using a different bus for the display, or SPI (which it seems is supported by the display at least)? I do like the neatness of all Grove peripherals so am trying not to hack into the pin headers or do bodge wires.
Thanks for any insight.

From the schematic I see this note:

The I2C slave address is 0x78.
If the customer ties D/C# (pin 15) to VCC,
the I2C slave address will be 0x7a

GL :slight_smile:

the I2C slave address will be 0x7a

It would change the address of the OLED peripheral, but it would still be on the same I2C bus (only one I2C bus is exposed by the Xiao?), so if my theory is correct the contention would still be there.

Hmm , not sure what you mean . AFAIK
Can I2C have multiple slaves?

“You have a 7-bit address. That means you can address up to 127 slaves.” “The number of devices connected to the bus is only limited by the total allowed bus capacitance of 400 pF.”
More is better …LOL :-p

GL :slight_smile:

Haha. More buses would be better in this case :wink:
To clarify, I’m asking the question because I don’t think changing the I2C addresses will allow concurrent use of GPIO on the same pins. That’s what I think anyway. Just asking for clarification or if anyone has come up with a workaround. If so, I can probably chop up a harness and share two peripherals with one GPIO Grove connector. I guess that wouldn’t look too bad.