RE: BLE central device as GATT server
RE: BLE central device as GATT server
- Subject: RE: BLE central device as GATT server
- From: Mozhaev Sergey-BDP687 <email@hidden>
- Date: Wed, 13 Nov 2013 08:17:03 +0000
- Thread-topic: BLE central device as GATT server
Hi Stephan.
> I am aware that it's possible, but I think it's weird (and undocumented), because the CBPeripheralManager documentation only states that it will make these services available to *Central* devices.
Documentation is not perfect. Actually it should say "it is visible to, and can be accessed by, any connected GATT client ". Once again, during connection establishment stage Central-Peripheral roles matter. Once Bluetooth LE connection(or we may call it link) is established, these roles doesn't matter for higher level (i.e. GATT) interactions. On top of this link/connection any side (if it has GATT client in its Bluetooth stack) can invoke different GATT procedures. No matter if you're Central(Master) or Peripheral(Slave).
I can understand those who wrote this documentation, it's not quite easy to communicate all possibilities of Bluetooth LE specification is a compact and universally understandable way.
As I already said, CBCentralManager combines Central and GATT client functionality, CBPeripheralManager - combines Peripheral and GATT Server. I believe that GATT roles can be used independently of Central-Peripheral. Otherwise, it's deliberate narrowing of functionality and doesn't make sense from the Bluetooth spec point of view.
> I wouldn't call it a "GATT connection" but your understanding is correct
Yes, I agree, there's no such notion as "GATT connection". Once you have BLE link set up, you can just start sending GATT PDUs (to be perfectly correct, ATT PDUs that are used for certain GATT procedures - because ATT is protocol and GATT is profile using this protocol).
> * iOS is the GAP Central and GATT Server providing the Time Service
> * nRF8001 is the GAP Peripheral and GATT Client accessing the Time Service.
> I got this working and could read the current time; and also get time updates as GATT Notifications.
Could you tell what functions/APIs did you use on nRF8001 side? Could you give a link to corresponding nRF8001 documentation?
Best regards,
Sergey.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Bluetooth-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden