My device is central and peripheral running freertos.
In the central role it would receive advertised packets from devices with certain MAC addresses. peripheral device sends a packet every 5 seconds.
Somehow I dont receive all the packets. At the moment I tried to match MAC address in on_adv_report, but this didnt help.
then I added filtering in scan_init as follows:
err_code = nrf_ble_scan_init(&m_scan, &init_scan, scan_evt_handler); APP_ERROR_CHECK(err_code); //char arr[6]={0x3A, 0xC0, 0x35, 0x47, 0x01, 0x01}; char arr[6]={0x01, 0x01,0x47,0x35,0xc0,0x3A}; err_code = nrf_ble_scan_filter_set(&m_scan, SCAN_ADDR_FILTER, arr); APP_ERROR_CHECK(err_code); err_code = nrf_ble_scan_filters_enable(&m_scan, NRF_BLE_SCAN_ADDR_FILTER, false); APP_ERROR_CHECK(err_code);
But when I check on_adv_report it still prints out all the messages from all MAC addresses withoyt filtering.
What do I do wrong?
Thanks!