SparkFun
IOIO-OTG - V2.2
The IOIO-OTG (pronounced "yo-yo-O-T-G") is a development board that lets Java developers add hardware I/O capabilities to Android or PC applications. A PIC24...
The IOIO-OTG (pronounced "yo-yo-O-T-G") is a development board that lets Java developers add hardware I/O capabilities to Android or PC applications. A PIC24FJ256 microcontroller bridges your app to low-level peripherals including GPIO, PWM, ADC, I²C, SPI, and UART, all controllable through a Java library.
The OTG (On-The-Go) design supports both USB host and device modes. When connected to an Android device, the board acts as a USB host and supplies charging current. When connected to a PC (Windows, Linux, or macOS), it presents as a virtual serial port and draws power from the host. Attach a USB Bluetooth dongle for wireless connectivity.
Key Features
- USB OTG Support – Auto-detects host or device mode (manual override switch available)
- Java Control Library – Write hardware control code as a standard Java app
- Rich Peripheral Access – GPIO, PWM, ADC, I²C, SPI, and UART
- Cross-Platform – Works with Android, Windows, Linux, and macOS
- Bluetooth Ready – Connect a USB Bluetooth dongle for wireless serial
- LiPo Battery Connector – JST connector with adjustable charge current (trimpot)
- Field-Upgradeable Firmware – Update via the IOIODude application (no programmer needed)
Ideal For
- Android hardware accessories and peripherals
- PC-based data acquisition and control
- Robotics with Java-based control software
- Rapid prototyping of USB-connected hardware
Package Contents
- 1× IOIO-OTG Development Board (V2.2b)
- 1× USB Female-A to Micro-A OTG cable
Resources
Jargon buster
Plain-language definitions for the technical terms used above.
- ADC
- An analogue-to-digital converter reads a changing voltage and turns it into a number the microcontroller can use. It matters when connecting analogue sensors such as light, sound, or variable-resistor sensors.
- GPIO
- General-purpose input/output pins are microcontroller pins you can set in software to read signals, switch devices on and off, or connect to peripherals. The number of GPIO pins matters because it limits how many buttons, LEDs, sensors, and other parts you can wire directly to the board.
- LiPo
- A lithium polymer rechargeable battery commonly used in portable electronics projects. It matters because LiPo batteries need correct charging circuitry and care, and this board includes hardware intended for that battery type.
- microcontroller
- A microcontroller is a small computer on a chip that runs your program and controls connected inputs and outputs. For this product, it is the part that reads buttons and sensors, drives the display and speaker, and communicates over Bluetooth.
- PWM
- Pulse Width Modulation is a way for a digital pin to simulate variable output power by switching on and off very quickly. It matters for controlling things like LED brightness, motor speed, or servo-style signals from a microcontroller pin.
- SPI
- A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
- UART
- UART is a simple serial connection that sends data over separate transmit and receive wires, often labelled TX and RX. It matters because this module is designed to replace a wired UART cable with a wireless link while keeping the same serial data format.
- USB host
- A USB host is the side of a USB connection that controls attached devices, like a computer talking to a keyboard or flash drive. This matters because most microcontroller boards are normally USB devices, so adding USB host support lets them use common USB peripherals.
Find this product in
Brands
STEM & Education
IOIO-OTG V2.2 Schematic
Schematic · 103.7 KB · Click any page to view full size
PIC24FJ256 Datasheet
Datasheet · 3.0 MB · Click any page to view full size
IOIO-OTG Connection Application Note
Document · 132.3 KB · Click any page to view full size
Supplier page — sparkfun.com
Supplier Description · 567.4 KB · Click any page to view full size
Resources & Downloads
Guides, code examples, and more
Related Tutorials
Free guides on learn.littlebird.com.au