Hi everybody,
I saw topics with similar naming like mine, but none of them actually describes my issue.
I develop some simple scanner and advertiser solution.
On advertiser side I've implemented ADV_SCAN_IND and SCAN_RSP packets. In ADV_SCAN_IND I've put some custom UUID to easy find my advertisers if there is many BLE devices around. In SCAN_RSP there is my custom data (0xFF - manufacture data).
On scanner side I've turned on active scanning with turned on filtering by UUID (same solution as it is in some sample code).
I've observed some strange behaviors:
1. Scanner side invokes "filter match" callback when ADV_SCAN_IND packet is received with correct UUID...and then "filter no match" callback when SCAN_RSP packet is received which contains my own custom data. To avoid this would I need to put UUID data also in SCAN_RSP packet? Or maybe some scanner configuration should be changed?
2. Even if in ADV_SCAN_IND there is no matching data (no UUID field), my scanner sends SCAN_REQ anyway...I think is pointless to waste time for sending SCAN_REQ for different advertisers.
- Can I configure my scanner in a way that it will send SCAN_REQ only to devices which contain correct data in first ADV_SCAN_IND?
- Can I avoid invoking "no filter match" callback for devices which have correct data only in ADV_SCAN_IND packets?
Best regards,
Adam