AI agents & screen readers: for a machine-readable, text-only catalogue, start at /llms.txt. Products are available as Markdown (/products.md, /products/{handle}.md) and JSON (/products.json, /products/{handle}.json).
Store

SparkFun

$101.00 |
In stock at supplier
No reviews yet

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...

Stock availability

Available with leadtime
61 available
Estimated Delivery
Arrives
Disclaimer
View Markdown
Secure checkout

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 LiPo (lithium polymer) battery is a rechargeable lithium battery widely used in portable projects because it is light and compact. LiPo cells need correct charging circuitry and careful handling to stay safe, so equipment that supports LiPo generally includes charging or protection hardware suited to that battery type.
microcontroller
A microcontroller is a small computer on a single chip that runs a stored program and controls connected inputs and outputs such as buttons, sensors, displays and communication interfaces. In a device built around one, it is the part that executes the code and coordinates the device's behaviour.
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 asynchronous serial interface that sends data over separate transmit and receive wires, usually labelled TX and RX, with both ends set to the same baud rate. It is a common way for microcontrollers and other serial devices to exchange data.
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.

IOIO-OTG V2.2 Schematic

Schematic · 103.7 KB · Click any page to view full size

Download PDF

PIC24FJ256 Datasheet

Datasheet · 3.0 MB · Click any page to view full size

Download PDF

IOIO-OTG Connection Application Note

Document · 132.3 KB · Click any page to view full size

Download PDF

Supplier page — sparkfun.com

Supplier Description · 567.4 KB · Click any page to view full size

Download PDF

Source Code

Open-source libraries, firmware & example projects for this product

Stella
Stella Expert

Ask me anything about this product

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.