2 Replies Latest reply on Aug 18, 2015 9:10 PM by RuCh_2181101

    How to generate same ADV packet like that ?

    RuCh_2181101

      Dear Support,

         Our customer complained that the phone cannot detect iBeacon of WICED , but we use ibeacon.a to generate the beacon.

         Our customer also post the BLE packet for us to reference. First packet is WICED solution. Second is TI solution and work fine.

         Could we generate same ADV packet like TI solution ?

      Rush Chen

      1.png

        • 1. Re: How to generate same ADV packet like that ?

          Hello. When you say the phone cannot detect the iBeacon, do you mean that the BLE device is not shown among the scanned devices or that the phone cannot connect to the device?

           

          Looking at the diagram, you are using some kind of BLE sniffer and are seeing the advertisement packets from iBeacon. So iBeacon is advertising, which means your phone should be able to pick it up. If you are using an app like LightBlue, the name of the device might be something else, because it remembers the name of the device detected before for the same BD address. Or if your phone has already paired with a BLE device with the same BD address before, it filters out the device when scanning. So don't forget to "forget" any BLE devices that used the same BD address as iBeacon.

           

          If you want to connect to iBeacon, you'll have to change Adv PDU type, which I'm assuming is what you want to do, because that's the only difference in the little red box in the diagram.

           

          Unfortunately, if you are using ibeacon.a, I don't think you can change the Adv PDU Type.

          However, there are some workarounds.

           

          Method 1. ibeacon_managed

          In our SDK, there's an app called ibeacon_managed.

          It changes the advertisements to connectable when the button is pressed. This happens in the interrupt_handler for the button by using bleprofile_Discoverable(HIGH_UNDIRECTED_DISCOVERABLE, NULL);

           

          Method 2. mybeacon

          There's another app called mybeacon. It acts like iBeacon but without the use of ibeacon.a library. So you have more free as to what you do with your advertisement packet. You can set both advertisement parameters and the packet itself.

           

          bleprofile_startAdv is used to set the advertisement parameters. The first argument to this function is what changes the advertisement type.

          0x00 : ADV_IND

          0x02 : ADV_DISCOVER_IND

          0x03 : ADV_NONCONN_IND

           

          Please let us know if this was helpful or not.

          Thank you.

           

          James

          • 2. Re: How to generate same ADV packet like that ?
            RuCh_2181101

            Very thanks and very very excellent reply.