BLE 5 peripheral devices are not getting scanned on BLE 5 supported Android phones and iPhones

301 views Asked by At

I am working on an Application which needs to communicate with BLE 5 powered peripheral devices, as our requirement to use the extended advertisement packet. As we know, BLE 5 devices are completely supports background-compatibility. So when the BLE 5 device broadcasts itself in legacy mode it is getting scanned on Andorid/ iPhone devices. But when it broadcasts without legacy mode it is not getting scanned. I don't know what I am missing. I believe there is nothing to do as much on the application side as it will be handled at stack level.

Any help would be highly appreciated. Thanks in advance.

1

There are 1 answers

0
maze On

Please check the following points:

  1. Take a bluetooth sniffer. Is your device advertising at all?
  2. What is the advertising interval? It is compatibel with the phone? If you have a bad interval, there might be kind of aliasing issue. A good point to start the the Accessory Design Guidelines from Apple. If the inverval is longer than, lets say 500 ms it might take very long to find the device.
  3. What kind of advertising to you send? directed / undirected ? If you send directed, the stack of the non-targed device will just irgnore the advertisement
  4. If you have a good BLE scanner it might also show you if the advertising data is malformed. I once had the issue that all my advertisements were ignored because a length field did not mach the payload.
  5. Do you expect public or random BLE addresses? I am not sure about this, but it may be possible to filter for either or. So if your device switches to random addresses and you filter for only public you might not see it.

I hope this is a good start for debugging for any one having the same problem.