Skip to main content

impC001 Pin Mux

The Functions Available From The impC001’s Pins

In addition to LTE cellular connectivity, the impC001 provides the most extensive array of GPIO and standard buses of any imp module yet, including seven UARTs, five SPI buses and four I²C buses, plus a single USB host port.

Pin Mux

Pins A—W

Pin uart
DCAB
uart
EVMT
uart
NU
uart
HJKL
uart
PQSR
spi
DCAB
spi
PQRS
spi
EVMT
i2c
JH
i2c
KL
usb
AB
ADC DAC PWM Wake
From
Sleep
State
Change
Callback
A RTS SCK DATA+ Yes
B CTS NCS DATA-
C RX CIPO Yes
D TX COPI Yes Yes
E TX COPI Yes
F Yes
G
H TX SDA Yes Yes
J RX SCL Yes Yes
K RTS SCL
L CTS SDA Yes
M RTS SCK Yes Yes
N TX
P TX COPI Yes
Q RX CIPO
R CTS SCK
S RTS NCS Yes Yes
T CTS NCS Yes Yes
U RX Yes Yes
V RX CIPO Yes Yes
W Yes Yes

Pins XA—XD

Pin uart
XBADC
i2c
XBA
i2c
XDC
PWM
XA RX SDA
XB TX SCL
XC CTS SDA
XD RTS SCL Yes

Pins YA—YU

Pin uart
YABCD
spi
YJTHU
spi
YRFES
ADC DAC PWM Wake
From
Sleep
State
Change
Callback
PHY SDIO
YA TX CLK
YB RX CMD
YC RTS DATA0
YD CTS DATA1
YE SCK DATA2
YF CIPO DATA3
YG CLK
YH SCK TXEN
YJ COPI Yes Yes CRSDV
YK Yes Yes Yes MDIO
YL Yes Yes Yes MDC
YM TXD0
YN TXD1
YP Yes RXD0
YQ Yes RXD1
YR COPI Yes
YS NCS Yes Yes
YT CIPO Yes Yes
YU NCS Yes

Notes

  • COPI was previously referred to as MOSI. CIPO was previously referred to as MISO.

impC001 Identification

Call imp.info() — this returns a meta object with the property type, which is is a string containing the imp module name:

if (imp.info().type == "impC001") {
  // Code running on impC001...
}

Reading Bus Names

Bus names prefixed with X or Y should be read with that prefix being applied to all of the subsequent pins included in the bus name, not just the first. For example, uartXBADC indicates that this UART uses pins XB, XA, XD and XC, not pins XB, A, D and C or pins X, B, A, D and C.

Wake pins

Currently, only pinW is supported for wake-from-sleep. The additional wake pins will be supported in impOS 42.

DAC

Whilst DAC functionality is available on the impC001 pins named in the table above, they are not currently accessible via hardware.fixedfrequencydac APIs.

UART

The UARTs provided by the impC001 initially have a minimum speed of 1526 baud and a theoretical maximum of 12.5Mbaud. If your application requires lower rates, please contact us.

USB

The impC001 has a single USB bus accessed via pins A and B and controlled in Squirrel using hardware.usbAB.