Robostix I/O pins
From GumstixDocsWiki
This page describes the I/O pins on the Robostix board.
Contents |
Top of Robostix
This photo shows the top side of the robostix board.
Bottom of Robostix
This photo shows the bottom side of the robostix board.
I/O Pins
Looking at the bottom of the robostix, and starting in the top left corner, each section of pins will be described.
Interrupts
The Interrupts port is really just a collection of miscellaneous pins, only a few of which can cause interrupts. The row of pins closest to the edge of the board is ground. The middle row of pins is +5v. The pins closest to the middle of the board are described below:
| Pin | Label | GPIO | Other | Description |
|---|---|---|---|---|
| 1 | INT6 | Port E.6 | T3 | External Interrupt 6 Input or Timer/Counter3 Clock Input |
| 2 | INT7 | Port E.7 | ICP3 | External Interrupt 7 Input or Timer/Counter3 Input Capture Pin |
| 3 | IC1 | Port D.4 | Timer/Counter 1 Input Capture Pin | |
| 4 | T1 | Port D.6 | Timer/Counter 1, counter source | |
| 5 | T2 | Port D.7 | Timer/Counter 2, counter source | |
| 6 | PG2 | Port G.2 | General purpose I/O pin | |
| 7 | PG1 | Port G.1 | General purpose I/O pin | |
| 8 | PG0 | Port G.0 | General purpose I/O pin |
Port C
Port C is made up of 8 general purpose I/O pins. The row of pins closest to the edge of the board is ground and the middle row of pins is +5v. The pins closest to the middle of the board are described below:
| Pin | Label | GPIO |
|---|---|---|
| 1 | PC0 | Port C.0 |
| 2 | PC1 | Port C.1 |
| 3 | PC2 | Port C.2 |
| 4 | PC3 | Port C.3 |
| 5 | PC4 | Port C.4 |
| 6 | PC5 | Port C.5 |
| 7 | PC6 | Port C.6 |
| 8 | PC7 | Port C.7 |
Analog to Digital (A/D)
The A/D pins are connected to a 10-bit analog to digital converter. These pins can also be used as general purpose I/O pins or for connecting a JTAG. The row of pins closest to the edge of the board is analog ground and the middle row of pins is analog +5v (this is controlled by a different voltage regulator than the +5 on the Port C and Interrupts connectors). The pins closest to the middle of the board are described below:
| Pin | Label | GPIO | JTAG |
|---|---|---|---|
| 1 | AD0 | Port F.0 | |
| 2 | AD1 | Port F.1 | |
| 3 | AD2 | Port F.2 | |
| 4 | AD3 | Port F.3 | |
| 5 | AD4 | Port F.4 | TCK |
| 6 | AD5 | Port F.5 | TMS |
| 7 | AD6 | Port F.6 | TDO |
| 8 | AD7 | Port F.7 | TDI |
Pulse Width Modulation (PWM)
The PWM pins have the center row of pins connected to V_MOTOR, which is jumpered to the BOARD connector. This feature was designed to allow R/C servos to be plugged in directly to the robostix. If you plan on using servos on the PWM pins, then you should cut the jumper and provide a separate supply for driving the servos.
| Pin | Label | GPIO | Function | Description |
|---|---|---|---|---|
| 1 | PWM 1A | Port B.5 | OC1A | Output Compare Match A for Timer 1 |
| 2 | PWM 1B | Port B.6 | OC1B | Output Compare Match B for Timer 1 |
| 3 | PWM 1C | Port B.7 | OC1C or OC2 | Output Compare Match C for Timer 1, or Output Compare Match for Timer 2 |
| 1 | PWM 3A | Port E.3 | OC3A or AIN1 | Output Compare Match A for Timer 3 or Analog Comparator Negative Input |
| 2 | PWM 3B | Port E.4 | OC3B or INT4 | Output Compare Match B for Timer 3 or External Interrupt 4 |
| 3 | PWM 3C | Port E.5 | OC3C or INT5 | Output Compare Match C for Timer 3 or External Interrupt 5 |
NOTE: for revision 1131 of the robostix, pins 3A and 3C are swapped (i.e. the silk screen is incorrect). So for 1131 the pins for PWM3 are as follows:
| Pin | Label | GPIO | Function | Description |
|---|---|---|---|---|
| 1 | PWM 3A | Port E.5 | OC3C or INT5 | Output Compare Match C for Timer 3 or External Interrupt 5 |
| 2 | PWM 3B | Port E.4 | OC3B or INT4 | Output Compare Match B for Timer 3 or External Interrupt 4 |
| 3 | PWM 3C | Port E.3 | OC3A or AIN1 | Output Compare Match A for Timer 3 or Analog Comparator Negative Input |
Port A
Port A is just a set of pads which you can solder wires to, or solder a surface mount header. These are all GPIO pins.
| Pin | Label | GPIO |
|---|---|---|
| 1 | PA0 | PortA.0 |
| 2 | PA1 | PortA.1 |
| 3 | PA2 | PortA.2 |
| 4 | PA3 | PortA.3 |
| 5 | PA4 | PortA.4 |
| 6 | PA5 | PortA.5 |
| 7 | PA6 | PortA.6 |
| 8 | PA7 | PortA.7 |
UARTS
In the bottom left corner is the 2x8 UARTs connector. The STUART pins connect to the gumstix (through the 3.3v to 5v voltage converter) and don't connect to the robostix. UART-0 and UART-1 are the two serial ports available from the ATMega128, and the I2C pins are connected to both the gumstix and robostix.
| Function | Pin | Pin | Function |
|---|---|---|---|
| STUART RxD (GPIO 46) | 1 | 2 | Gnd |
| +5 | 3 | 4 | robostix UART-0 TxD (Port E.1) |
| STUART TxD (GPIO 47) | 5 | 6 | +5 |
| Gnd | 7 | 8 | robostix UART-0 RxD (Port E.0) |
| robostix UART-1 RxD (Port D.2) | 9 | 10 | Gnd |
| +5 | 11 | 12 | I2C SDA (Port D.1) labelled TX |
| robostix UART-1 TxD (Port D.3) | 13 | 14 | +5 |
| Gnd | 15 | 16 | I2C SCL (Port D.0) labelled RX |
Gumstix(aka console or FFUART)
Moving to the right a bit more is the 4 pin GUMSTIX connector, which doesn't connect to the robostix at all. It brings the FFUART pins out in 5v logic-level form. Pin 1 is marked on the top side of the board, (from the back, it's the one with the square pad).
| Pin | Signal |
|---|---|
| 1 | Gnd |
| 2 | FFUART TxD (GPIO 39) |
| 3 | +5 |
| 4 | FFUART RxD (GPIO 34) |
In System Programming (ISP)
The ISP header (In System Programming) is a 10 pin 2x5 header. Pin 1 is labelled on the top side of the board (from the back, it's the one with the square pad). Take note than pin 2 is the pin directly below pin 1.
| Function | Pin | Pin | Function |
|---|---|---|---|
| PDI (MOSI) | 1 | 2 | +5 |
| Ground | 3 | 4 | Gnd |
| Reset | 5 | 6 | Gnd |
| SCK | 7 | 8 | Gnd |
| PDO (MISO) | 9 | 10 | Gnd |
Note: The ISP port should only be used for programming the robostix when no gumstix is plugged in.
Note: The MOSI/MISO references were included since that's what most programmers call these pins. These do not correspond to the MOSI/MISO pins on the ATMega128. The ATMega128 uses PDI/PDO for programming rather than MOSI/MISO.
MOTOR Power
The two pin MOTOR connector is used to provide power to the servos. The square pin (at the edge of the board) is positive and the other pin is ground. Be sure to cut the jumper connecting it to BOARD if you're going to use MOTOR to provide power to the PWM pins.
BOARD Power
The two pin board connector is used to provide power to the robostix. The square pin (at the edge of the board) is positive and the other pin is ground. The ground side of the connector is disconnected if a power plug is inserted in the power jack.
Internal Connections
This section describes the internal connections between the gumstix and the robostix.
| Gumstix | gs GPIO | rs GPIO | Description |
|---|---|---|---|
| L_DD11 | 69 | Port E.2 | ATM_IRQ - allows robostix to interrupt gumstix |
| L_DD12 | 70 | Enable for Vcc5 and AVcc voltage regulators | |
| L_DD14 | 72 | Active low enable for the '245s | |
| L_DD15 | 73 | robostix Reset | |
| NSSPCLK | 81 | Port B.1 | robostix SCK |
| NSSPFRAME | 82 | Port B.0 | robostix SS |
| X_MOSI | 83 | Port B.2 | robostix MOSI |
| X_MISO | 84 | Port B.3 | robostix MISO |
| X_SCA | Port D.0 | robostix SCL | |
| X_SDA | Port D.1 | robostix SDA |

