I want to capture solely BLE advertisements from my well known advertiser whose device-address is known for advertisement-statistics (advertisement interval).
After the device-address is added to the white-list there is only one "DeviceScanned"-Event generated while scanning.
Is that the desired behavior? Because I want to capture >all< advertisements from that particular device added to the white-list.
How can I achieve this?
Capturing >all< advertisements from any BLE-Devices is insufficient, because some advertisements which I am interested in will get lost due to the processing of the "unwanted ones".
If you are only receiving one "DeviceScanned"-Event, this may be an indication that you have the Filter_Duplicates enabled which is the purpose of this parameter. If you want to receive an event for every advertising report, you should disable the Filter_Duplicates.
Let us know if this works for you. :smileyhappy:
It is working now as expected. "bluetooth_1.2.7" does support setting "EnableFilterDuplicates" via FSCI even though it is not exposed by the corresponding API/Function-Signature.
Just appending a single byte (bool) indicating the desired behavior is enough to make it work as expected.
I suggest updating the SDK as I already have seen similar questions here.
I just discovered that starting with FSCI-Command-Set Version 1.3.x (XML shipped with NXP Test Tool 12) the FilterDuplicates options is available.
But my installed (I think it is the most recent version) SDK for USB-KW41Z (SDK Version: KSDK 2.2.0 (2019-01-16)) ships with "bluetooth_1.2.7" where the option for FilterDuplicates is not available via FSCI. Interestingly it IS defined in middleware\wireless\bluetooth_1.2.7\application\common\fsci_host\fsci\fsci_ble_gap.c for calling via FSCI to another host ...
The question is, how can I disable duplicate filtering with FSCI on USB-KW41Z with SDK Version: KSDK 2.2.0 (2019-01-16) (bluetooth_1.2.7)
That would probably work but I am unable to test it as the "enableFilterDuplicates" parameter for the Gap_StartScanning-Method is unfortunately unavailable via FSCI as far as I can see.
I am using the USB-KW41Z SDK Version: KSDK 2.2.0 (2019-01-16)
Is there any workaround for that issue? I'm afraid the FSCI-Functions are private and only available as static library.
Thanks for sharing your findings. I'll report it to the corresponding team so the EnableFilterDuplicates parameter gets added to the corresponding xml file.
As an alternative, you can modify the BLE_1.2.x.xml used by Test Tool (C:\NXP\Test Tool 188.8.131.52\Xml) and insert the following lines at line 7547:
<Parm> <ParmName>EnableFilterDuplicates</ParmName> <ParmDesc>Boolean value which indicates duplicate advertising report filtering is enabled</ParmDesc> <ParmSize>1</ParmSize> <ParmType>tBool</ParmType> <ParmLastValue>01</ParmLastValue> <ParmDefaultValue>01</ParmDefaultValue> </Parm>