Getting To Know The IOIO OTG Board
Clone this wiki locally
Getting To Know The IOIO-OTG Board
This page contains information regarding the IOIO-OTG board. For information on the original (V1) IOIO board, please visit This page.
The IOIO-OTG board contains the following components:
- USB connector (micro-AB, female): Used to connect to host computer, an Android device or a Bluetooth dongle.
- Power jack (2-pin JST, female): Used for power supply to the board. Voltage between 5V-15V should be supplied.
- GND pins (10 pins): Ground connection.
- VIN pins (3 pins): Used for outputting the supply voltage to your circuit, or as an alternative input to the power jack.
- 5V pins (3 pins): 5V output from the on-board regulator, which can be used in your circuit.
- 3.3V pins (3 pins): 3.3V from the on-board regulator, which can be used in your circuit.
- I/O pins (46 pins, numbered 1-46): General purpose I/O pins. Some have special functions, see below.
- PWR LED (red): Lights when the IOIO is getting power.
- STAT LED (yellow): General purpose on-board LED, under application control.
- MCLR pin: Not normally used. Its purpose is for programming new bootloader firmware on the IOIO board.
- BOOT pin: Special pin used for getting the IOIO into bootloader mode on power-up. Note that this pin is shared with the stat LED.
- Charge current trimmer (CHG): Adjusts the amount of current supplied on the VBUS line of the USB when acting as a USB host. Typically used in battery-powered application with Android to prevent the Android from draining the battery quickly. Turning in the (+) direction increases charge current.
- Host switch: In "A" mode, the IOIO-OTG will detect whether it should act as host or as device automatically, according to whichever USB connector is plugged in (micro-A or micro-B). To support non-standard USB cables or adapters that use micro-B type, move the switch to the "H" position to force host mode.
The I/O pins are the essence of the IOIO. They are used to connect to external circuits using different interfaces. The common denominator to all pins is that they can all serve as 3.3V digital inputs or 3.3V digital outputs. In addition, many of the pins are capable of other functions as detailed in the table at the bottom of this page.
For convenience, the common pin functions are presented graphically on the bottom of the board, with a legend:
- Pins surrounded by a square can be used as analog inputs (3.3V). For more details, see Analog Input.
- Pins surrounded by a circle are 5V-tolerant, i.e. can be used as 5V logic inputs or product 5V logic output when used in open-drain mode with the help of a pull-up resistor. For more details, see Digital I/O.
- Pins marked with "P" can be used as peripheral inputs and outputs. Mainly, this includes PWM, Pulse Input, UART, and SPI. These are also indicated in the PPSo column of the table below.
- The pin marked with "Pi" can be used as peripheral input (but not output).
- Pins marked with DAx and CLx are used for TWI.
Detailed Pin Function Table
This table applies to IOIO-OTG (V2.0) boards.
Specific design files in EAGLE format can be downloaded here.
- A/D: pin can be used as analog input
- I2C: pin can be used as I²C: DAx - data pin if I²C module number x, CLx - clock pin if I²C module number x
- PPSi: pin can be used as input for remappable peripherals (input capture, UART, SPI)
- PPSo: pin can be used as output for remappable peripherals (UART, SPI, comparator output)
- 5V: pin is 5V tolerant: can be used as 5V input or 5V output in open-drain mode
- Comp: pin can be used as comparator input number as specified
- Prog: pin can be used for ICSP: use Vpp and either C1/D1, C2/D2 or C3/D3 which are clock and data, respectively
All pins can be used as digital input / output (GPIO)
|PIC pin||PIC function|
|35||Y (ref +)||Y||Y||C1||15||PGEC1/AN1/VREF-/RP1/CN3/RB1|
|36||Y (ref -)||Y||Y||D1||16||PGED1/AN0/VREF+/RP0/CN2/RB0|
|stat LED / boot||39||OSCI/CLKI/CN23/RC12|