Android Bluetooth architecture and support for bluetooth stacks

879 views
Skip to first unread message

RatzAndroid

unread,
Feb 9, 2009, 10:30:04 AM2/9/09
to android-platform
Hi,

I have been exploring possibilities to integrate bluetooth stacks
within the existing Android architecture. Would like to know if it is
possible to integrate some other third party bluetooth stacks (instead
of using Bluez). Is there some existing support in Android to do this?
Are there any design documents or guidelines that are available?

Thanks

Nick Pelly

unread,
Feb 10, 2009, 2:33:54 AM2/10/09
to android-...@googlegroups.com
The diagram on
http://source.android.com/projects/bluetooth-faq
may give you a little head start, but otherwise you are on your own.

What is your reason for wanting to install another stack on Android? Bluez has support for most useful Bluetooth profiles. It will be less work to plumb those Bluez profiles into the Android framework than to integrate an entirely different stack to Android.

When we do release the Java Bluetooth API's, your stack would need to accurately implement those API's in order to claim Android compatability.

Nick

pavan savoy

unread,
Feb 10, 2009, 2:49:59 AM2/10/09
to android-...@googlegroups.com
Although BlueZ has support, very less of them is actually hooked up the android framework isn't it ?

And also the blueZ version is 3.36, and project bluez has gone beyond 4, is there any plans to upgrade to that version ?

Also, wouldn't all Java API, [JNI] end up sending dbus- messages ?
So, if I have a stack, with dbus- interfaces, very similar to bluez, it should work, shouldn't it ?

regards,
Pavan

Nick Pelly

unread,
Feb 10, 2009, 11:24:31 AM2/10/09
to android-...@googlegroups.com
Hi Pavan,

On Mon, Feb 9, 2009 at 11:49 PM, pavan savoy <pavan...@gmail.com> wrote:
Although BlueZ has support, very less of them is actually hooked up the android framework isn't it ?

Yes correct, but neither is any other stack. The integration work involved in hooking up already existing Bluez profiles to Android would be far less than the integration work involved in porting an entirely different stack to Android. If you bring in another stack you would need to integrate A2DP, AVRCP, HSP and HFP all over again.


And also the blueZ version is 3.36, and project bluez has gone beyond 4, is there any plans to upgrade to that version ?

Of course. It is a real shame we haven't switched to 4.x already, but we need to get A2DP out the door first.


Also, wouldn't all Java API, [JNI] end up sending dbus- messages ?
So, if I have a stack, with dbus- interfaces, very similar to bluez, it should work, shouldn't it ?

The Android Java API will not have any dependancy on DBUS. It wil be a pure Java interface.

If your stack has an identical DBus interface to Bluez then yes that will help somewhat. But are you identical to 3.x or 4.x? They are completely different and as you mention we will switch sometime.  And those are not the only interface points. A2DP uses a socket to the media server to co-ordinate the data path. Our Java HSP/HFP stuff uses SCO and RFCOMM sockets directly to the kernel. Rfkill is used for power control. The linux input framework is used for AVRCP. If you are trying to port another stack and you have not realized all these interface points then you are in for a hard time :)

Nick

pavan savoy

unread,
Feb 10, 2009, 11:10:56 PM2/10/09
to android-...@googlegroups.com
Yes, agree upon the integration with android framework part. Totally.
I am also waiting for the A2DP to come out .....

Thanks for the Info ...

regards,
Pavan
Reply all
Reply to author
Forward
0 new messages