2025-12-30 8:48 AM
According to BLE spec, whitelisting is not related to paired or bonded devices. Our application uses the advertisement and scanning for sensor beaconing application. STM32WB55 is not able to scan the interested sensors by whitelisting. STM32WB is not supporting whitelisting in advertisement scanning.
Now with scanning I am getting too many advertisement reports in the bluetooth dense environment.
2026-01-05 7:50 AM
Hello @embedded21,
to be honest, I am quite confused what is your goal, but I assume that you want to filter data that you are scanning according to the addresses of the beaconing sensors.
That is possible by setting scanning parameters.
For more information you can refer to:
ST Wiki
Best Regards,
grohmanno
2026-01-22 2:39 AM
My goal is simple. STM in BLE scanning mode scans all the advertisements, while I am interested only in the advertisements from specific BLE addresses.
I tried,
1. Setting the filtering enable in the scanning parameters generic scanning. It did not work. STM code overwrites this filtering in the aci_gap_start_general_discovery_proc().
2. Setting the whitelisting policy. But again currently STM uses it only in connection procedure.
So, literally it is not possible to use whitelisting while I scan for the advertisement from the my interested sensors.
2026-01-23 3:45 AM
Hello,
you should first set Filter Accept List with the BLE addresses of your beacons with:
* @PAram Address_Type Address type.
* Values:
* - 0x00: Public Device Address
* - 0x01: Random Device Address
* - 0xFF: Devices sending anonymous advertisements
* @PAram Address Public Device Address or Random Device Address.
* @return Value indicating success or error code.
*/
tBleStatus hci_le_add_device_to_filter_accept_list( uint8_t Address_Type,
const uint8_t* Address );And instead of aci_gap_start_general_discovery_proc, use this:
tBleStatus aci_gap_start_observation_proc( uint16_t LE_Scan_Interval,
uint16_t LE_Scan_Window,
uint8_t LE_Scan_Type,
uint8_t Own_Address_Type,
uint8_t Filter_Duplicates,
uint8_t Scanning_Filter_Policy );with Scanning Filter Policy set to 1.
If you want to filter packets more strictly (e.g. based on payload), you have to do it in your code in advertising report event.
If you have any further questions, do not hesitate to ask
Best Regards,
grohmano