(for information on µParticle Interface see the µInt pages)
The Particle Connector provides interfacing between the various Particle boards or to other (e.g. your own) third party boards. It contains various standard interfaces (as serial/UART, I2C, SPI, Parallel I/O, Digital I/O, INT, Analog in, one wire bus, ...) and clearly specifies what lines has what function. It builds the basis for full interoperability between different Particle and different Add-On boards.
Board to Board connectors provide the flexiblity to combine the various modules of the Particle system such as Particle Boards and Sensor Boards or Particle Board an Serial Board. The connector used on all Particle devices is FCI's Conan 21 pin connector with a total board-to-board height of 5 mm (here is a eagle library file for this connector):

Other connectors used are 2.54mm standard connectors (breakout/proto board), connectors for power supply (serial board/XBridge, power board), Ethernet (for XBridge) and serial line (for serial board)
The connector is used to
The following combinations are possible. Subsets of the below named combinations are also possible (e.g. particle AND breakout)
You may also leave out one of the components in the above combinations.
The Particle Connector lines are used for communication of I/O signals (digital and analog), status and control lines (e.g. reset) and for power supply (gnd and V+). The following table gives an overview over the pin assignment for the various boards. Note: many of the lines are multiplexed:
| Board | Fkt
*5 mand. |
Fkt. optional |
Particle
2/0x,2/1x ,2/2x, zPart (female) |
Spart 2/0x (male) | SSimp 1/92 (male) | Serial 1/8x female | Serial 1/8x male | XBridge (male) | Test (male) | PartC 1/x | Particle 1/8x (female) | |
| PIN | ||||||||||||
| 1 | V+ | I/O/S: V+ out: 3.3V, in: 3.3V (*1) | I/S: V+:3-3.3V | I/S: V+ (in): 3-3.3V | O/S: V+: 3.3V | O/S: V+: 3.3V | O/S: V+ 3.3V | V+ | I/O/S: V+ :out:3V, in: 3-3.3V (*1) | |||
| 2 | B0, INT | I/O/D: B0 Processor / Ball Switch Input (Pulled down line) | I/O/D: B0 Processor | I/D: Ball Switch (not soldered) | I/O/D: QB0, DA0 FIFO | to PIN 14 | I/O/D: P1.0 + P3.2 (Interrupt (*4)) | I/O/D: B0 Processor / Ball Switch Input (Pulled down line) | ||||
| 3 | B1 | INT1, Actuator | I/O/D: B1 Processor | I/O/D: B1 Processor | I/D: LED amber | I/O/D: QB1, DA1 FIFO | to 11, 20 | P1.1 | I/O/D: B1 Processor | |||
| 4 | B2 | INT2,
Pwr Sens0 |
I/O/D: B2 Processor | I/O/D: B2 Processor | I/S: Power line for ADXL, TC74, TSL2550 | I/O/D: QB2, DA2 FIFO | to 19, 12 | P1.2 | I/O/D: B2 Processor | |||
| 5 | B3 | INT3 | I/O/D: B3 Processor | O/D: ADXL XOUT | I/O/D: QB3, DA3 FIFO | to 13 | P1.3 | I/O/D: B3 Processor | ||||
| 6 | B4 | INT4 | I/O/D: B4 Processor | O/D: ADXL YOUT | O/D:RX | I/O/D: QB4, DA4 FIFO | to 15 | P1.4 | I/O/D: B4 Processor | |||
| 7 | B5 | INT5 | I/O/D: B5 Processor | O/D: ADXL ZOUT | i/D:TX | I/O/D: QB5, DA5 FIFO | to 16 | P1.5 | I/O/D: B5 Processor | |||
| 8 | B6 | INT6,
Pwr Sens1 |
I/O/D: B6 Processor | I/O/D: B6 Processor | I/S: TSL2xx, Hygro Powerline | I/D: RTS | I/D: RTS | I/O/D: QB6, DA6 FIFO | to 17 | P1.6 | I/O/D: B6 Processor | |
| 9 | B7 | INT7, I2C:SDL | I/O/D: B7 Processor | I/O/D: B7 Processor | I/O/B: I2C SCL (pulled up) | O/D: CTS | O/D: CTS | I/O/D: QB7, DA7 FIFO | to 18 | P1.7 | I/O/D: B7 Processor | |
| 10 | /RESET | I/C: MCLR (Reset) Processor (Pulled up line) | I/C: MCLR (Reset) Processor (Pulled up line) | /Reset | I/C: MCLR (Reset) Processor (Pulled up line) | |||||||
| 11 | A0,I/O00 | I/O/A/D: A2 Processor (Analog Input 2) | O/A: Audio out | I/O/D: QB8, DA8 FIFO | to 3, 20 | P2.6; connected to AD0 if P3.0=0(*3) | I/O/A/D: A1 Processor (Analog Input 1) | |||||
| 12 | A1,I/O01 | I/O/A/D: A3 Processor (Analog Input 3) | O/A: Pressure,force out | I/O: /EFB FIFO | to 4, 19 | P2.5; connected to AD0 if P3.0=1(*3) | I/O/A/D: A2 Processor (Analog Input 2) | |||||
| 13 | I/O02 | A3, I2C:SDA | I/O/A/D:F0 Processor (Analog Input 5) | I/O/B: I2C SDA (pulled up) | I/D: /RB FIFO | to 5 | P2.4; connected to AD1 if P3.0=0(*3) | I/O/A/D:A3 Processor (Analog Input 3) | ||||
| 14 | I/O03 | A2 | I/O/A/D:A5 Processor (Analog Input 4) | O/A: TSL2xx or Hygro out | I/D: /WA FIFO | to 2 | P2.3; connected to AD1 if P3.0=1(*3) | I/O/A/D:A5 Processor (Analog Input 4) | ||||
| 15 | Resvd. | PRG,I/O10 | D/B: D6 Processor / SDA I2C Memory, Pulled-Up, 2/29: E4 | to 6 | /PROG | D/B: D4 Processor / SDA I2C Memory, Pulled-Up | ||||||
| 16 | I/O04 | 1-wire
data |
D/B: D3 Processor/ SCL I2C Memory, Pulled-up line, 2/29: E5 | I/O/D: B7 Processor | to 7 | P0.0 / SCK_SPI | D/B: D5 Processor/ SCL I2C Memory, Pulled-up line | |||||
| 17 | I/O05 | Pwr Sens2 + 1wire | I/O/D: D4 Processor | I/S: Audio, Pressure/force Power Supply | I/O/D: B6 Processor | to 8 | P0.1 / MOSI_SPI | I/O/D: D6 Processor | ||||
| 18 | I/O06 | I/O/D: D5 Processor | O/D: /FFA FIFO | to 9 | P0.2 / MISO_SPI | O/C: D7 Processor / Power I2C and Memory | ||||||
| 19 | TX | I/O11 | I/O/D: C6 Processor / TX1 | I/O/D: C7 Processor / RX | O/D:RX | to 4,12 | P2.1 / RX1 | I/O/D: C6 Processor / TX | ||||
| 20 | RX | I/O12 | I/O/D: C7 Processor / RX1 | I/O/D: C6 Processor / TX | i/D:TX | to 3,11 | P2.2 / TX1 | (I/O/D,*2): C7 Processor / RX, parallel to RF Transceiver out | ||||
| 21 | GND | GND | GND | GND | GND | GND | GND | GND | GND |
I: Input line
O: Output line
S: Supply line
C: Control line
D: Digital line
A: Analog line
B: Bus line
Bx: Parallel Bus
(8-bit)
INTx: Interrupt lines (1 mandatory, 7 optional)
I/O0x: mandatory I/O lines (7 I/O lines)
I/O1x: optional I/O lines (3 I/O lines)
Ax: Analog lines (2 mandatory + 2 optional Analog lines)
/RESET: System reset line (1 line)
Resvd: Special functions only (1 line)
TX,RX: Serial Interface line (2 lines)
PwrSens: Power lines for sensors attached to the Particle Connector (3 lines)
I2C: I2C bus lines
(2 lines)
Actuator: Actuator line (1 line)
*1:
Do not power the particle board via the attached battery or plugged in battery
AND the Particle Connector
*2: Restricted access. See programming documentation
*3:
P2.3-P.6 should be set input if associated Analog In port is used
*4: P3.2 should always be set input
*5:
Mandatory functions for that line. Must be provided by all core boards