.NET Gadgeteer Socket Types

Socket types allow mainboards and modules to specify how they connect to one another, and are a key concept in .NET Gadgeteer.

Socket Types on a Mainboard

Every socket on a Gadgeteer mainboard is labelled with a number that uniquely identifies it. It is also labelled with one or more letters, and each letter corresponds to a different socket type.

MainboardSocketExampleTaken together, the letters describe the electrical and communication capabilities of the individual pins on that socket. (This is sometimes referred to as the pinout of the socket). Each socket type letter is simply a shorthand description of what each of the pins on the socket can do. The image on the right shows a mainboard socket - socket number 10 - that supports socket types A, I, T and X.

The socket type A definition, for example, specifies that pin 1 is connected to the +3.3V supply, that pin 2 is connected to the +5V supply and that pin 10 is connected to system ground. Pins 3, 4 and 5 are specified as analog inputs, with pins number 3 and 4 doubling as general-purpose input/output. In addition, pin number 6 is a general-purpose input/output, and pin number 3 supports interrupt capabilities. Pins 7, 8 and 9 are marked as undefined, which means that for a socket that supports only socket type A they will be left unconnected.

 

Pin 1 Pin 2 Pin 3 Pin 4 Pin 5 Pin 6 Pin 7 Pin 8 Pin 9 Pin 10
+3.3V +5V AIN (G!) AIN (G) AIN GPIO [UN] [UN] [UN] GND

 Pinout specified by the socket type A definition.

 

A mainboard socket can support multiple types, in which case the pinouts for multiple socket types are combined. This works as long as each pin is actually capable of supporting the various combinations of functionality that may be required.

 

Pin 1 Pin 2 Pin 3 Pin 4 Pin 5 Pin 6 Pin 7 Pin 8 Pin 9 Pin 10
+3.3V +5V AIN (G!) GPIO! AIN (G) GPIO YU AIN GPIO XL GPIO YD XR SDA SCL GND

Pinout for a single mainboard socket that supports types A, I, T and X.
 

Socket Types on a Module

ModuleSocketExampleGadgeteer modules are also labelled with one or more letters, which are usually found close to the socket itself. The picture on the right shows a close-up of a Gadgeteer module socket, labelled XY. This means that the module can be connected to a mainboard socket that supports either socket type X or type Y. It is also possible, although rare, that a module is labelled by letters joined by an ampersand (for example, A&I), in which case it must be connected to a socket that supports both types A and I.

A module might use all or only some of the pins and capabilities offered by the socket types it is labelled with. In order to understand the exact pinout of a module, it is often necessary to consult either its schematic or source code for its accompanying library.

 

List of Current Socket Types

This list may grow over time. For pinout details, click on the socket type letter on the list below.

A

Three analog inputs, with pins number 3 and 4 doubling as general-purpose input/output. In addition, pin number 6 is a general-purpose input/output, and pin number 3 supports interrupt capabilities.

B

Display (LCD) interface, carrying the blue component on pins 3 to 7, as well as the LCD enable line on pin 8 and the clock signal on pin 9.

C

Controller-area network (CAN, or CAN-Bus). Pins number 4 and 5 serve as the CAN transmit (TD) and receive (RD) pins, and double as general-purpose input/outputs.  In addition, pins number 3 and 6 are general-purpose input/outputs, and pin number 3 supports interrupt capabilities.

D

A USB device interface for the mainboard to connect to a PC, usually for programming. Pins 4 and 5 are used as the dedicated USB data pins (D- and D+). In addition, pins 3, 6 and 7 are general-purpose input/outputs, with pin 3 supporting interrupt capabilities.

E

Ethernet PHY connection. Pins 6 to 9 are the dedicated transmit/receive lines to an Ethernet connector with integrated magnetics. Pins 4 and 5 are optional connections to the LEDs on the Ethernet connector.

F

Secure Digital Card (SD) or MMC (Multi Media Card) interface. Pins 4 to 9 are the dedicated data and control lines for this interface. In addition, pin 3 is a general-purpose digital input/output with interrupt capabilities.

G

Display (LCD) interface, carrying the green component on pins 3 to 8, as well as the backlight control line on pin 9.

H

USB host interface to connect USB peripherals to the mainboard. Pins 4 and 5 are used as the dedicated USB data pins (D- and D+). In addition, pins 3 is a general-purpose input/output with interrupt capabilities.

I

I2C interface. Pins 8 and 9 are the dedicated I2C data (SDA) and clock (SCL) lines. Note that a mainboard should include pull-up resistors for these pins, in the region of 2.2K Ohms. Modules must not include their own pull-ups on these lines. In addition, pins 3 and 6 are general-purpose input/outputs, with pin 3 supporting interrupt capabilities.

K

UART (serial line) interface operating at TTL levels, with hardware flow control capabilities. Pin 4 (TX) is data from the mainboard to the module, and pin 5 (RX) is data from the module to the mainboard. These lines are idle high (3.3V), and can double as general-purpose input/outputs. Pin 6 (RTS) is an output from the mainboard to the module, indicating that the module may send data. Pin 7 (CTS) is an output from the module to the mainboard indicating that the mainboard may send data. The RTS/CTS are 'not ready' if high (3.3V) and 'ready' if low (0V).  In addition, pins 3 is a general-purpose input/output, supporting interrupt capabilities.

O 

Analog output on pin 5. In addition, pins 3 and 4 are general-purpose input/outputs, and pin 3 includes interrupt capabilities.

P

Three pulse-with modulated (PWM) outputs on pins 7, 8 and 9. Pins 7 and 9 double as GPIOs. In addition, pin 3 is an interrupt-capable GPIO, and pin 6 is a GPIO.

R

Display (LCD) interface, carrying the red component on pins 3 to 7, as well as the VSYNC line on pin 8 and the HSYNC line on pin 9.

S

Serial peripheral interface (SPI). Pin 7 is the master-out/slave-in (MOSI) line, pin 8 is the master-in/slave-out (MISO) line, and pin 9 is the clock (SCK) line. In addition, pins 3, 4 and 5 are general-purpose input/outputs, with pin 3 supporting interrupt capabilities.

T

Four-wire touch screen interface.

U 

UART (serial line) interface operating at TTL levels. Pin 4 (TX) is data from the mainboard to the module, and pin 5 (RX) is data from the module to the mainboard. These lines are idle high (3.3V), and can double as general-purpose input/outputs. In addition, pins 3 and 6 are general-purpose input/outputs, with pin 3 supporting interrupt capabilities.

X

Three general-purpose input/output (GPIO) pins, with pin number 3 supporting interrupt capabilities.

Y

Seven general-purpose input/output (GPIO) pins, with pin number 3 supporting interrupt capabilities.

Z

Manufacturer specific. The pinout for this socket will vary between mainboards. Please refer to the individual mainboard's documentation for details.

*(DaisyLink)

DaisyLink downstream interface. Pin 3 is used for the DaisyLink neighbour bus, pin 4 is used for I2C SDA, pin 5 is used for I2C SCL. Note that this socket type should not appear on a mainboard, only on DaisyLink modules. The [MS] pins on this socket type can optionally support reflashing the firmware on the module.

Last edited Apr 19, 2013 at 8:34 PM by JanKuceraMSFT, version 16

Comments

No comments yet.