We've had high expectations for the IOIO since its inception in April 2011. The ability to easily connect external hardware to your Android device has its allure already, but advances in the IOIO firmware/software (like Bluetooth capability), as well as exceptionally documented projects have created enough public information that will enable anyone (not just Java developers) to start their very own IOIO-Android project.
Here is a quick IOIO refresher in case this is all new: The IOIO is a piece of hardware, as shown above. In order to have your Android control the IOIO, you will need to write a program in Java using the IOIO libraries. The IOIO libraries allow you to write simple Java code to control any of the pins on the IOIO board, as you would a normal microcontroller. The IOIO code sits along with the Android app code that controls functions on your Android device (i.e. touchscreen, GPS, etc.). The IOIO board and its supporting IOIO libraries combine very low level embedded hardware development with very high level Android app development in one environment. If you want to jump right into it, here is the IOIO Beginners Guide.
Want to know more? We will be offering a IOIO workshop/class on June 30th and another on July 1st. We will have Ytai Ben-Tsvi (inventor of the IOIO) leading each class. The class will be based on the MIT hack-a-thon Ytai taught in February. Limit is 20 per class. Don't miss this!
For all you paper lovers out there we have a book of IOIO projects! For all you paper haters, the book also has its own website with videos, source code, etc.! This book is well documented with pictures, code examples, and clear wiring diagrams. All of the projects use SparkFun parts, so if you want to follow along with the projects in the book, a shopping list can be found here.
Michael Mitchell, a PhD Computer Science student at FSU, has compiled some beautifully documented IOIO examples on his website MitchTech. There are projects ranging from garage door control to a laser turret. Nice work!
The Droidalyzer is a great example of a Bluetooth enabled IOIO project. An alcohol sensor takes your BAC reading, then transmits the information to your Android. If you've had one too many, the app will even call a cab for you! The Droidalyzer is very well documented with an Instructable and an official Android app.
This is another project that stood out. An RC car is controlled by a IOIO board, plugged to an Android phone that receives motor commands from a base station computer over Wi-Fi or 3G (Wi-Fi in this video). The phone also sends the video and the values from the acceleration and orientation sensors back to the computer. The communication protocol between the phone and the computer is UDP. There is a great blog post with source code for this project found here. Check out the base station display at 3:33 in the clip. Me want.
Another well documented project with source code. This project can send MIDI signals to any MIDI hardware. Check out the blog post here.
Many more videos of IOIO action, hosted by MIT, can be found here.
A couple more things; be sure to bookmark the official IOIO wiki. This place is where you will find all of the most up-to-date information and source code relating to the IOIO. Also, the IOIO discussion group is where you will get any technical question answered. Here is the product page where you can purchase the IOIO.
I hope this blog post can serve as a reference point for example IOIO projects. If anyone has any IOIO project to share, please post in the comments!
P.S. More to come, so please stay tuned.
EDIT 6/15/12: More projects on youtube, check out Open Gadgets Channel.