This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Heavy scanning activity from Android (and iOS) devices might prevent connecting to BLE GAP Peripheral

Dear Nordic team and community,

Have you encountered the problem where standard BT4.0/4.1 GAP Peripheral device would be "blocked" from connection (kind of "denial of service" situation) by too many actively scanning GAP Scanners/Centrals? We are seeing this with certain mobile phones (especially Android) in "observing" role and this is pretty independent on adv. interval we use (typically 20-200ms). All adv. events are "loaded" with SCAN_REQ packets when there are 5 or more "scanning" phones and beside SCAN_REQ collisions (which are typically not critical for BLE solutions) basically all CONNECT_REQ collide with some SCAN_REQ packet and thus Peripheral never follows the connection.

Any suggestions (beside trying to lower scanning activity on phones' side which obviously isn't always possible)?

Thanks Jan

Parents
  • It's not only that on Android 6+ user must grant the location permission to an app (BLE scanning requires a runtime location permission, Bluetooth permission is granted automatically). A web can't just scan in background without user knowing it. Scanning will show a popup (like one shown on the link I gave above) and will scan for few seconds. I guess even on CES or other shows like this where WiFi and Bluetooth are everywhere and people are walking around and scanning it is not that terrible. Although I have never been there, just heard that there were problems with connectivity but now not complete DoS. And this is a kind of an extreme environment. Btw, if you want to block BLE it's best to use a good WiFi router that takes all space available. BLE nodes are too lazy in doing so.

Reply
  • It's not only that on Android 6+ user must grant the location permission to an app (BLE scanning requires a runtime location permission, Bluetooth permission is granted automatically). A web can't just scan in background without user knowing it. Scanning will show a popup (like one shown on the link I gave above) and will scan for few seconds. I guess even on CES or other shows like this where WiFi and Bluetooth are everywhere and people are walking around and scanning it is not that terrible. Although I have never been there, just heard that there were problems with connectivity but now not complete DoS. And this is a kind of an extreme environment. Btw, if you want to block BLE it's best to use a good WiFi router that takes all space available. BLE nodes are too lazy in doing so.

Children
No Data
Related