I was just commenting on your question on missing files. The reason for
moving to a new stack is a separate topic. We did have good reasons to
undertake such a big change. Our first goal is to make classic bluetooth
working smoothly. We think we will have new features added faster with the
Bluedroid stack in the future, in long run.
In no means I am giving official answer for the stack switch from Bluez to
Bluedroid. Just a few good things about the new design. Bluetooth services
run in Bluetooth process, moved out of system server. Underlying stack runs
in the same process, no dbus dependency. Bluedroid fully executes in user
space. Bluetooth stack acts as an Android HAL device.
On Mon, Nov 19, 2012 at 7:04 PM, Manuel Naranjo
> So then why did you make that move??? You had all the pieces for 4.0 in
> BlueZ all ready. Please we are grown ups, don't reply with the obvious
> auto-reply. Android Bluetooth implementation is years behind, most of the
> API and the internals haven't changed in years, while BlueZ was reaching
> version 4.100 AOSP was tracking 4.69.
> Please don't tell me we will have to wait another 6 months for you guys
> solve something that could be solved in a few weeks, if Android
> would really be open.
> All the pieces are there, only GAP is missing. I know I could start
> hacking around and implement GAP my self, but I don't want to reinvent
> well, this code is there, either you or Broadcom have it.
> I love Android, and the power it gives me to run real native code on my
> devices, don't start giving Bluetooth Low Energy manufacturers more
> to recommend iOS and Windows.
> LE is not supported yet. We are at 3.0.
>> On Mon, Nov 19, 2012 at 6:38 PM, Manuel Naranjo
>> I changed bt_target.h to match:
>> BTA_GATT_INCLUDED TRUE
>> BLE_INCLUDED TRUE
>> ATT_INCLUDED TRUE
>> SMP_INCLUDED TRUE
>> GAP_INCLUDED TRUE
>> But all functions starting with GAP_ are not included in the code,
>> even though they get killed. Looks like someone missed some files
>> when pushing them into the code repository. By looking at the code
>> structure it should be the files gap_api.h and gap_api.c, I think
>> they belong to stack.
>> Without GAP you can't do any LE discovery, it's part of the
>> Bluetooth 4.0 spec AFAIK.
>> HI Manuel
>> GAP_INCLUDED is defined as FALSE in the Android.
>> Do you see any essential GAP feature missing?
>> On Sun, Nov 18, 2012 at 7:26 PM, Manuel Naranjo
>> Matthew, JBQ and all,
>> I've been playing with bluedroid from AOSP 4.2 tree, but
>> after many
>> hours hacking I noticed you missed submitting gap_api.h (By
>> at the src structure it should be under stack/include), a c
>> implementing those functions also is missing.
>> Some of the missing functions are GAP_Init,
>> GAP_SetTraceLevel (those
>> are all the ones I'm getting as error when building).
>> I did try patching files to get at least LE scanning
>> working, but I
>> failed because of this missing stuff. First I modified
>> include/bt_target.h then I started monkey patching some
>> other files
>> to get a build that at least works (I made my own hcitool
>> scan clone
>> based on some code available in the tree). I'm able to
>> discover non
>> LE devices, but LE keep failing.
>> Anyway, enough talk, any chance you could provide with GAP
>> implementation? I want to start working on implementing
>> some user
>> level API just for fun, but I can't go on so far. Wouldn't
>> like to
>> make my own GAP implementation :)
>> ps: Off course this tool only works when I disable
>> bluetooth, otherwise it collides, but I can't working on a
>> layer until I know what the inner pieces are.
You received this message because you are subscribed to the Google Groups
To post to this group, send email to
To unsubscribe from this group, send email to
For more options, visit this group at http://groups.google.com/group/android-platform?hl=en.