Non-scannable advertising

I advertise as 

  • BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE
  • BLE_GAP_ADV_TYPE_NONCONNECTABLE_NONSCANNABLE_UNDIRECTED

This posts suggests I may have not really disabled the scan response.

https://devzone.nordicsemi.com/f/nordic-q-a/56616/how-to-disable-scan-response

I set  adv_params.scan_req_notification = 1; and I do not see a scan request logged when my phone scans.

The final reply in the following thread says "Note that some phones might not support a peripheral that doesn't send a scan response, even if it is just an empty reply."

https://devzone.nordicsemi.com/f/nordic-q-a/20796/disable-scan-response

I have no problem reading the advertisements on my android phone (Samsung M31). Can anyone clarify which phones I might have a problem with? 

Does Nordic know of any testing facilities that I could send my product for compatibility testing with the most popular handsets?

Thanks for your help,

-Jason

  • Hi Jason

    You can check if there is an empty scan response by using a sniffer device (I.E. the nRF sniffer) to sniff all data that is transmitted on the BLE band. It does indeed seem like you have not disabled the scan response completely, as that is only possible if you use the whitelist advertisement feature.

    I'm sorry, but we do not have a list of which phones this would be. I still think the devices should be able to scan for these devices, but may have issues if you want to connect to the peripheral, but it seems like you're not going to connect to these devices, correct?

    Best regards,

    Simon

  • Correct, no connections from the non-scannable advertising. Just a few bytes of sensor data etc.

    I allow connections briefly if the device is turned on it's head. I change the advertising and I have no problems. The scan response then contains the service UUID.

  • Do I need to implement whitelisting if the device is advertising as BLE_GAP_ADV_TYPE_NONCONNECTABLE_NONSCANNABLE_UNDIRECTED ?

  • Hi Jason

    First, I have asked internally to check if we have a list of phones that but have not been able to find one as of yet I'm afraid. If you want to disable the scan response altogether you will have to implement the whitelisting indeed, but if you have already set the scan response packet and length to 0 in your application that should be fine for most central devices as far as I know.

    Best regards,

    Simon

  • Thank you Simon, that's much appreciated. I will look at whitelisting later today. 

    if this affects a significant proportion of handsets (sold in the last ~5 years) then an easy solution might be to alternate the advertising as scannable and non-scannable. I already do this for connectable advertising and I only had scannable advertising until recently. I will try to test the nrf sniffer later today also. (too much to do!)

    Thank you!

Related