Callback of wiced_bt_ble_scan() returns stale information

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
StBa_721356
Level 5
Level 5
50 likes received 25 likes received 10 likes received

When using wiced_bt_ble_scan() we see that after restarting it with another call to wiced_bt_ble_scan() we do get advert data from peripherals which do not advertise anymore.

Here is what we do:

1. we start the scan with wiced_bt_ble_scan(), High Duty, no duplicate filtering and 2 minutes for the scan duration.

2. when the High Duty scan is finished it starts the Low Duty scan

3. when the Low Duty scan is finished we start over with 1.

We use Active Scan all the time to get the scan responses as well.

We are using SDK 6.4.0 running on a 20706/20707. But we have seen the very same behaviour with SDK 6.2.1.

The strange thing is that we do get called back with advert or scan response data for peripherals which do not advertise anymore. We see this effect for example when one of the peripherals change its static random BLE address. Then we do see callbacks for the old address and for the new address. Interestingly the payload of callbacks for the old address is typically empty.

How can this happen? How can we avoid seeing such stale BLE addresses?

0 Likes
1 Solution
AnjanaM_61
Moderator
Moderator
Moderator
10 questions asked 5 comments on KBA First comment on KBA

Hello,

We have never seen this issue.

Could you please provide the project for Central and peripheral which you are testing?

So that we can reproduce at our side.

Thanks,

Anjana

View solution in original post

0 Likes
1 Reply
AnjanaM_61
Moderator
Moderator
Moderator
10 questions asked 5 comments on KBA First comment on KBA

Hello,

We have never seen this issue.

Could you please provide the project for Central and peripheral which you are testing?

So that we can reproduce at our side.

Thanks,

Anjana

0 Likes