This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

About BLE_GAP_EVT_ADV_REPORT

Hello.
I am developing using nrf52832 (S132 v7.0.1, SDK v16.0.0) as a central device and an Android device (Bluetooth 4.2, nRF Connect) as a peripheral.

I want to get Scan Response data.
Therefore, I used scan_response of the ble_gap_adv_report_type_t structure in BLE_GAP_EVT_ADV_REPORT to check if it could be obtained.
However, during the verification, the scan_response was retrieved before sending the advertisement on nRF Connect.
In addition, scan_response was acquired multiple times after the start of transmission, or could not be acquired even once.

It is filtered by UUID at the start of scan, and nRF Connect has UUID set for advertisement and scan response. Therefore, I think that the event will not occur unless the UUID matches BLE_GAP_EVT_ADV_REPORT.

① Is the UUID filter irrelevant to BLE_GAP_EVT_ADV_REPORT?
② Why is scan_response acquired multiple times or not even once after the advertisement is sent?

Thank you.

Parents
  • Hi,

    ① Is the UUID filter irrelevant to BLE_GAP_EVT_ADV_REPORT?

    Yes. I assume you're using the scan module here(nrf_ble_scan.c). The scan module's does filtering based on BLE_GAP_EVT_ADV_REPORT, and then forwards the filter match to the application.

    ② Why is scan_response acquired multiple times or not even once after the advertisement is sent?

    I'm not sure I understand the question, but you could be getting scan responses from other Bluetooth devices nearby.

  • thank you for your answer.

    My purpose is to receive the Scan Response of the advertised device. This is because you later want to receive advice from multiple devices and see the packet information for each device. Therefore, I would like to link it with the device that received the advice.

    ①Is there any place other than BLE_GAP_EVT_ADV_REPORT that can be judged to have received Scan Response?
    ②Is there a way to determine that the device has received the advertisement? I am in trouble because the MAC address of the device cannot be obtained correctly without pairing.

    Thank you.

Reply
  • thank you for your answer.

    My purpose is to receive the Scan Response of the advertised device. This is because you later want to receive advice from multiple devices and see the packet information for each device. Therefore, I would like to link it with the device that received the advice.

    ①Is there any place other than BLE_GAP_EVT_ADV_REPORT that can be judged to have received Scan Response?
    ②Is there a way to determine that the device has received the advertisement? I am in trouble because the MAC address of the device cannot be obtained correctly without pairing.

    Thank you.

Children
Related