1 Reply Latest reply on Mar 12, 2018 11:26 AM by epr_1639216

    why is "Enable Link Layer Privacy" greyed out?


      The faster I go, the behinder I get...or is it the more I learn, the less I know??


      I seem to have learned that iOS changes BLE addresses and they are called "resolvable addresses".  I think this means that if I am using a PSoC4 BLE as a peripheral to an iOS central which are bonded together, when iOS decides to change the addresses something in the PSoC4 BLE has to resolve them in order to reconnect.



      1.  Is this description correct?

      2.  I think that this resolution is supposed to be handled by the Link Layer in BLE 4.2.

      3.  Also, I think for this to happen the box "Enable Link Layer Privacy" in the General selection of GAP Settings in the BLE component needs to be checked.

      4.  The Enable Link Layer Privacy is greyed out.  Any idea why?

      5.  If I want to only connect to devices in my whitelist does the interaction with the whitelist have to be done in my code or is that supposed to be handled by the Link Layer?




        • 1. Re: why is "Enable Link Layer Privacy" greyed out?

          There are: Static Addresses, Resolvable Addresses, and Random Addresses

          Static Addresses always use the same number

          Resolvable addresses are random numbers that resolve into a constant private number

          Random addresses are completely random and have no association with the device


          For privacy of users being tracked or monitored by their BLE address, iOS implements Resolvable addresses that are randomly generated, but can be turned into the private address of the device by trusted devices/services (and encryption of sorts). This allows only the devices with knowledge of the device's private numbers/calculations to be able to identify the device by it's address.


          To answer your questions:

          1. Yes.

          2. I believe it is too, yes.

          3. This feature is only available for BLE v4.2 compatible devices (if you are using BLE v4.1, then it will be properly grayed out. Also, older psoc creator may not allow using it either)

          4. Check that your chip supports BLE v4.2, PSoC Creator is the latest version, and the components in the project are updated to the latest.

          5. There are APIs to call in order to add/remove devices from the whitelist, but the device will automatically filter devices by the whitelist if set to do so either in the BLE component, or in application code.