- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Now I want to use the direct advertising when central bonded to my peripheral.But seems the ios use the resolving address, will the direct advertising still work when central changes the peeraddress.
Solved! Go to Solution.
- Labels:
-
BLE
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ah; So, you want to know if you set the directAddr, and then start directed advertising from your peripheral to the IOS whether the peripheral will still be reaching the IOS, or if it will need to reacquire the address from the IOS device?
I don't know the answer to that question unfortunately. But, I would suspsect that the IOS changing its address would no longer receive the directed advertisement packets (as it has changed it's address that it responds to).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Not sure what issue/question you have... Are you saying that when you set it to directed advertising that the Cypress chip still behaves as if it is using the resolving address? Or are you saying that the central sending directed advertising to the peripheral works even when the central changes its address? (Which would be expected).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I mean if I use direct advertising, then I need to pass the peerAddr (central last connected) to cyBle_discoveryModeInfo.advParam->directAddr. Then If the central(e.g. the IOS phone) change its address on the way, will the direct advertising still work?
cyBle_discoveryModeInfo.advParam->advType = CYBLE_GAPP_CONNECTABLE_LOW_DC_DIRECTED_ADV;
cyBle_discoveryModeInfo.advParam->directAddrType = peerBdAddress.type;
memcpy(cyBle_discoveryModeInfo.advParam->directAddr, &peerBdAddress.bdAddr, CYBLE_GAP_BD_ADDR_SIZE);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ah; So, you want to know if you set the directAddr, and then start directed advertising from your peripheral to the IOS whether the peripheral will still be reaching the IOS, or if it will need to reacquire the address from the IOS device?
I don't know the answer to that question unfortunately. But, I would suspsect that the IOS changing its address would no longer receive the directed advertisement packets (as it has changed it's address that it responds to).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks,e.pratt. So should I use the whitelist instead? Do you know any example to test the bond and whitelist? In my opinion, direct advertising only has one peer address that the peripheral will advertise to, the whitelist has several central address.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, I would try using the whitelist to keep track of it. That way, it is using the keys associated with the whitelist/bond to recognize the device rather than the BDaddress. I know this isn't a cypress chip, but the post has useful information about the same problem you are encountering with the Iphone privacy settings: https://devzone.nordicsemi.com/question/71539/ble-directed-connection/