[Ytai], the lead developer for the IOIO breakout board for the Android Open Accessory kit, figured out how to control just about anything from an Android phone wirelessly over Bluetooth.
When [Ytai] first announced the IOIO breakout board for Android devices, one of the commentors on his post said a standard Bluetooth dongle could stand in for the USB cable between the phone and the IOIO. Wireless control of home automation project and robots was just too good of an idea to let go, so [Ytai] dove into this new Bluetooth project.
After getting a cheap Bluetooth dongle from DealExtreme, [Ytai] found btstack, a lightweight Bluetooth stack that was perfect for an embedded environment. Dealing with the USB driver for a no-name Bluetooth adapter didn’t come as easily, but after a few long nights, [Ytai] emerged victorious.
He still has a few more problems to overcome. Namely, supporting environments where more than IOIO board is available. [Ytai] is thinking about adding support for WiFi dongles, something we’d love to see. Check out [Ytai]’s demo of wireless control of a servo after the break.
13 thoughts on “Bluetooth For Android Open Accessories”
just to point out that the IOIO works on principally on ADB, which has the advantage of being supported by all Android versions > 1.5.
ADK is also supported, but still in beta I think…
Why all the trouble of using a USB dongle when there are bluetooth modules that have USART output.
Looks great. I was developing a bluetooth app for Android 3.1 a while ago and the api for the virtual com port was super buggy. It involved using undocumented APIs so I’m interested to see how he did it.
The IOIO is way way too expensive for most projects. I was hoping this was going to take it out of the equation.
Could this be ported to a teensy? Been wanting to play with bluetooth in my projects, but the BT modules are too expensive for me. Would love to use a cheap dongle. Still a beginner and most my projects are made from sourced parts from my junk pile. I’d scrap together 20 dollars for a teensy if I could use it with a bluetooth tho.
You can also use a propeller chip ($8), four resistors, and a usb plug to replace the IOIO entirely. Just go to the parallax object exchange and search for android and there’s code example.
Nice work, but the article seems to indicate that this is something new.
A team at CMU had bluetooth control working with android and arduinos last year:
MIT has had Amarino out for a while:
Excellent work. $3 bluetooth, but then $50 IOIO kills it. Are there any breadboard friendly components available that could emulate IOIO? Pretty soon old android phones will be affordable and open up all sorts of possibilities. I’m still hoping we’ll see a more affordable android to microcontroller interface.
I have one of these
And combine this with arduino (or STM32 or pic or..)
Only problem is writing base software for Android that uses bluetooth as a serial interface..
I found that a Bluetooth serial device is very easy to work with from SL4A (Scripting Languages For Android). I’ve been using the BluetoothFacade API to interface an Arduino-like gadget to a python script running on the phone. Doing any kind of graphics via SL4A is still kind of a hack, so this approach may not be for everybody.
Ok, will check that out. As a uC I use STM32-discover (around 10euros). Only thing that is little “confusing” is C (++) for uC and java-like for android since QT isn’t that well supported in Android world.
I’ll be happier when the blasted bluetooth keyboards work on Android. No go on all of the Android devices I have.
The more interesting thing is the fact that we now can use those cheap Bluetooth PHY’s with PICs. If you take the cost of a PIC24/32 and add on the $1.80 dongle, then for basically under 7$ you have a complete Bluetooth solution
Please be kind and respectful to help make the comments section excellent. (Comment Policy)