Which pins for I2C?



The pinout in the PTS defines the pins 8 as SDA and 10 as SCL for the I2C bus. On the other hand the AT command interface guide says that the I2C bus pins are selected among GPIOs using the +WBM bus management command. The same applies for the SPI bus. Which document is the correct one?



Remember that GPIO and I2C/SPI pins are multiplexed.

Maybe that’s what is confusing you?


We will use the Q24 Plus module (new generation) and here is the pinout:

Pin     Function
8       SDA/SPI_IO
10      SCL/SPI_CLK

24      GPIO0/CTS2
54      GPIO2/RI1
51      GPIO3/DCD1
53      GPIO4
35      GPIO5/RTS2
18      GPI/TXD2
26      GPO0/SPI_AUX
22      GPO1
20      GPO2/RXD2
28      GPO3/SPI_EN

I think that the I2C/SPI pins are separated from the GPIOs?



GPO’s are a specialized subset of GPIO’s and you have two GPO that are multiplexed with SPI pins.

I didn’t check that list myself before I made my answer so it appears I2C and SPI have two pins shared while only SPI share pins with GPIO.

As for your original question, I don’t really know as I haven’t used I2C or SPI myself.

From the documentation it appears that for SPI chipselect you can use either GPIO or SPI_EN or SPI_AUX.


Well, I found on the ADL user guide that the Q24 has a hard I2C apart from the soft I2C. It seems that the hard I2C uses dedicated pins 8 and 10 while the soft I2C uses GPIOs. This should be better documented.