Are you a Java developer looking to add advanced hardware I/O capabilities to your Android or PC application? Well then the IOIO-OTG is for you! The IOIO-OTG (pronounced “yo-yo-O-T-G”) is a development board specially designed to do just that. It features a PIC microcontroller which acts like a bridge that connects an app on your PC or Android device to low-level peripherals like GPIO, PWM, ADC, I2C, SPI, and UART. An app-level library helps you write control code for these low level peripherals in the same way you’d write any other Java app!
What separates the IOIO-OTG from previous IOIO boards is the ability to leverage the USB On-The-Go specification to connect as a host or an accessory. There are several ways to connect the IOIO to your Java app. If the app is running on your Android device, the IOIO-OTG will act as a USB host and supply charging current to your device (meaning the IOIO-OTG will need its own power source). If your app is running on a Windows, Linux or OSX machine, the IOIO-OTG will assume device mode and present itself as a virtual serial port. When in device mode, the IOIO-OTG can be powered by the host! Connecting a USB Bluetooth dongle will cause the IOIO-OTG to show up as a Bluetooth serial connection so you can go wireless!
A switch on the board can be used to force the IOIO-OTG into host mode, but most of the time the board can be left in ‘auto’ mode and it will detect its role in the connection. We’re now shipping the IOIO-OTG board loaded with the V4.02 bootloader and the V5.06 application firmware. New application firmware is frequently released, and can be upgraded without needing a programmer using the IOIODude application. Additionally, this version of the IOIO-OTG has corrected the IC power failure issue due to the on-board switch voltage regulator failing as well as adding a missing decoupling cap on the AVIN pin. This new IOIO-OTG has fixed the problems that plagued the previous version making it a true vision of how the board is intended