<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers</link><description>Hi all! I am working in a BLE scanner but I have enabled the filter by MAC ADDRESS. I can filter beacons that are produced based in NRF52 and NRF51. But when i try set a MAC ADDRESS of a SOC produced by other company the filter no match. wich could be</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 28 Nov 2022 22:15:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers" /><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/397981?ContentTypeID=1</link><pubDate>Mon, 28 Nov 2022 22:15:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3798fc03-4499-409d-9278-ff1656a7abe3</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Hi Carlos,&lt;/p&gt;
&lt;p&gt;It is still a problem that you observe that&amp;nbsp;odd behavior with your previous SDK. If you can note here with what SDK you found the problem, that would be great.&lt;/p&gt;
&lt;p&gt;It&amp;#39;s nevertheless great news that you solved the problem.&lt;/p&gt;
&lt;p&gt;Hieu&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/397507?ContentTypeID=1</link><pubDate>Thu, 24 Nov 2022 18:16:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1affb687-040d-4a46-b34c-e7c20c5140c6</guid><dc:creator>eudaldo</dc:creator><description>&lt;p&gt;Hi Hieu!&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&lt;span class="Y2IQFc" lang="en"&gt; managed to filter all the beacons!!! I have tried in differents version of the SDK, and with the SDK 17.1 with the &lt;/span&gt;&lt;span class="Y2IQFc" lang="en"&gt;with the most updated Soft Device S140, I succeeded&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="Y2IQFc" lang="en"&gt;thanks a lot Hieu!&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/397506?ContentTypeID=1</link><pubDate>Thu, 24 Nov 2022 18:01:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:25926d21-24c5-4e44-b950-88db73557a46</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;That is really very strange...&lt;/p&gt;
&lt;p&gt;Nothing stands out immediately to me right now.&amp;nbsp;&lt;span style="font-family:inherit;"&gt;What is the advertising period of&amp;nbsp;&lt;/span&gt;&lt;span style="font-family:inherit;"&gt;beacon 3? Other than let the filtered scan run for a long while and see how it goes, I don&amp;#39;t have anything to recommend today...&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I am out of office today and tomorrow, so I will&amp;nbsp;go over your code carefully one more time on Monday. If you need something urgent, please&amp;nbsp;let me know here and we can arrange some alternatives.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/397265?ContentTypeID=1</link><pubDate>Wed, 23 Nov 2022 17:15:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:53361798-b072-4c73-a312-0e2270ffbf30</guid><dc:creator>eudaldo</dc:creator><description>&lt;p&gt;I have done, I modified the scan_init and scan_evt_handler and scan the beacon 2 and beacon 3:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;scan_init:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void scan_init(void)
{
    ret_code_t          err_code;
    nrf_ble_scan_init_t init_scan;

    memset(&amp;amp;init_scan, 0, sizeof(init_scan));

    init_scan.connect_if_match = false;
    init_scan.conn_cfg_tag     = APP_BLE_CONN_CFG_TAG;
    init_scan.p_scan_param     = &amp;amp;m_scan_param;

    err_code = nrf_ble_scan_init(&amp;amp;m_scan, &amp;amp;init_scan, scan_evt_handler);
    APP_ERROR_CHECK(err_code);
 
}&lt;/pre&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;scan_evt_handler:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;pre class="ui-code" data-mode="text"&gt;
static void scan_evt_handler(scan_evt_t const * p_scan_evt)
{
    ret_code_t err_code;
    char data_hex[10];
    char len[10];
    

    switch(p_scan_evt-&amp;gt;scan_evt_id)
    {

        case NRF_BLE_SCAN_EVT_NOT_FOUND:  //FOB filter, it is filtered by the company ID           
            
            unsigned char* addr       =  p_scan_evt-&amp;gt;params.p_not_found-&amp;gt;peer_addr.addr;      
               
            uart_putstring(&amp;quot;ADDR:&amp;quot;);

            for (int a=5; a&amp;gt;=0; a--)
            {
                  sprintf(data_hex,&amp;quot;%02x&amp;quot;, addr[a] );
                  uart_putstring(data_hex);
                    
            }

            uart_putstring(&amp;quot;\r\n&amp;quot;);
            
        break;


        
        case NRF_BLE_SCAN_EVT_FILTER_MATCH:
       
             
        break;


        
        default:
        break;

    }
    
}&lt;/pre&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;and the result is the next:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/PRINT-INFO.PNG" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The NRF52 is able to see both beacons, but the problem is in NRF_BLE_SCAN_EVT_FILTER_MATCH, for some reason the Beacon 3 does not trigger the scan event. &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f61e.svg" title="Disappointed"&gt;&amp;#x1f61e;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/396487?ContentTypeID=1</link><pubDate>Fri, 18 Nov 2022 20:09:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0bc782fc-e1ec-493c-98d5-e136adee1b33</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;I don&amp;#39;t see anything wrong here. It really could just be that the nRF chip doesn&amp;#39;t see beacon 3 at all...&lt;/p&gt;
&lt;p&gt;As a final test, could you reconfigure the scan module to print all BLE addresses it see without any filtering, and let it run for 1~2 minute?&lt;/p&gt;
&lt;p&gt;If beacon 3 still won&amp;#39;t show up in that, perhaps we need to look at a sniffer trace&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/396067?ContentTypeID=1</link><pubDate>Wed, 16 Nov 2022 16:55:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:24573995-c20c-4099-98ae-46afb748b0c2</guid><dc:creator>eudaldo</dc:creator><description>[quote userid="9456" url="~/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers/395975"]I think the address being flipped is just some not-obvious problem in extracting the data. In any cases,&amp;nbsp;&lt;span&gt;NRF_BLE_SCAN_EVT_NOT_FOUND&amp;nbsp;means that the application never sees that beacon at all.&lt;/span&gt;[/quote][quote userid="9456" url="~/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers/395975"]Also, if you could share how you extract the addresses out of the events, I can look into why addresses are flipped/not flipped.[/quote]
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I misspoke, in the handler function scan_evt_handler I print via UART the MAC ADDRESS of the device, both&amp;nbsp; NRF_BLE_SCAN_EVT_NOT_FOUND and NRF_BLE_SCAN_EVT_FILTER_MATCH, but when I print them,&amp;nbsp; I flip them :&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;
static void scan_evt_handler(scan_evt_t const * p_scan_evt)
{
    ret_code_t err_code;
    char data_hex[10];
    char len[10];
    

    switch(p_scan_evt-&amp;gt;scan_evt_id)
    {

        case NRF_BLE_SCAN_EVT_NOT_FOUND:           


                unsigned char* addr       =  p_scan_evt-&amp;gt;params.p_not_found-&amp;gt;peer_addr.addr;      
                
               

                uart_putstring(&amp;quot;NFND:&amp;quot;);

                for (int a=5; a&amp;gt;=0; a--)
                {
                  sprintf(data_hex,&amp;quot;%02x&amp;quot;, addr[a] );
                  uart_putstring(data_hex);
                    
                }

                uart_putstring(&amp;quot;\r\n&amp;quot;);
                
            }
            

        break;



        //  FILTER MATCH
        case NRF_BLE_SCAN_EVT_FILTER_MATCH:

              

             uint8_t *addr =  p_scan_evt-&amp;gt;params.filter_match.p_adv_report-&amp;gt;peer_addr.addr;      
             
                uart_putstring(&amp;quot;ADDR:&amp;quot;);

                for (int a=5; a&amp;gt;=0; a--)
                {
                  sprintf(data_hex,&amp;quot;%02x&amp;quot;,addr[a] );
                  uart_putstring(data_hex);
                   
                }
                
                uart_putstring(&amp;quot;\r\n&amp;quot;);
                
             
           break;


        
        default:
        break;

    }
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;the results are the follow (an example):&lt;/p&gt;
&lt;p&gt;NFND:1804ED65A2EE&amp;nbsp;&amp;nbsp; //Not found&lt;br /&gt;ADDR:DF916E57EA97&amp;nbsp;&amp;nbsp; //Filter match&lt;br /&gt;ADDR:607771FCDA68&amp;nbsp;&amp;nbsp; //Filter match&lt;/p&gt;
[quote userid="9456" url="~/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers/395975"]&lt;span&gt;However, it could be that the scanning timeout&amp;#39;d before it sees Beacon 3. Or&amp;nbsp;the timeout might seems enough for 2-3 advertising interval, but the scanner still&amp;nbsp;could (very) unfortunately miss the packets. &lt;br /&gt;&lt;/span&gt;&lt;span&gt;How do you setup the scan itself, as in how do&amp;nbsp;your scanning init and start function calls look like?&lt;/span&gt;[/quote]
&lt;p&gt;these are my functions:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;scan_params:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;pre class="ui-code" data-mode="text"&gt;#define SCAN_INTERVAL                   0x00A0                              /**&amp;lt; Determines scan interval in units of 0.625 millisecond. */
#define SCAN_WINDOW                     0x009f                              /**&amp;lt; Determines scan window in units of 0.625 millisecond. */
#define SCAN_DURATION                   0x0000                              /**&amp;lt; Timout when scanning. 0x0000 disables timeout. */

#define MIN_CONNECTION_INTERVAL         MSEC_TO_UNITS(7.5, UNIT_1_25_MS)    /**&amp;lt; Determines minimum connection interval in milliseconds. */
#define MAX_CONNECTION_INTERVAL         MSEC_TO_UNITS(30, UNIT_1_25_MS)     /**&amp;lt; Determines maximum connection interval in milliseconds. */
#define SLAVE_LATENCY                   0                                   /**&amp;lt; Determines slave latency in terms of connection events. */
#define SUPERVISION_TIMEOUT             MSEC_TO_UNITS(4000, UNIT_10_MS)     /**&amp;lt; Determines supervision time-out in units of 10 milliseconds. */

#define APP_BLE_CONN_CFG_TAG            1                                   /**&amp;lt; A tag identifying the SoftDevice BLE configuration. */
#define APP_BLE_OBSERVER_PRIO           3 



static ble_gap_scan_params_t const m_scan_param =
	{
		.active        = 0x00,
		.interval      = SCAN_INTERVAL,
		.window        = SCAN_WINDOW,
		.filter_policy = BLE_GAP_SCAN_FP_ACCEPT_ALL,
		.timeout       = SCAN_DURATION,
		.scan_phys     = BLE_GAP_PHY_AUTO,
		.extended      = false,
	};&lt;/pre&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;scan_init&lt;/strong&gt;&amp;nbsp; (in my previous comment , I write about it and the variables):&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void scan_init(void)
{
    ret_code_t          err_code;
    nrf_ble_scan_init_t init_scan;

    memset(&amp;amp;init_scan, 0, sizeof(init_scan));

    init_scan.connect_if_match = false;
    init_scan.conn_cfg_tag     = APP_BLE_CONN_CFG_TAG;
    init_scan.p_scan_param     = &amp;amp;m_scan_param;

    

    err_code = nrf_ble_scan_init(&amp;amp;m_scan, &amp;amp;init_scan, scan_evt_handler);
    APP_ERROR_CHECK(err_code);

    //Setting filters for scanning.


    int rows =  sizeof (target_device) / 6;

    for (int t=0 ; t&amp;lt;rows; t++)
    {
          char td[] = { target_device[t][0],target_device[t][1]  ,target_device[t][2]  ,target_device[t][3] ,target_device[t][4]  ,target_device[t][5]};
          err_code = nrf_ble_scan_filter_set(&amp;amp;m_scan, SCAN_ADDR_FILTER, td);
          APP_ERROR_CHECK(err_code);    
    }

    
   
     err_code = nrf_ble_scan_filters_enable(&amp;amp;m_scan, NRF_BLE_SCAN_ADDR_FILTER, false);
     APP_ERROR_CHECK(err_code);
 
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;scan start:&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void scan_start(void)
{
    ret_code_t err_code;

    err_code = nrf_ble_scan_params_set(&amp;amp;m_scan, &amp;amp;m_scan_param);
    APP_ERROR_CHECK(err_code);

    err_code = nrf_ble_scan_start(&amp;amp;m_scan);
    APP_ERROR_CHECK(err_code);

    //USE LED TO INDICATE THE STATUS BLE AS SCANNER  &amp;lt;------
}&lt;/pre&gt;&lt;/strong&gt;&lt;/p&gt;
[quote userid="9456" url="~/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers/395975"]Can you try setting the timeout to unlimited and let the app run for a while?[/quote]
&lt;p&gt;The scanning timeout already disable&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/395975?ContentTypeID=1</link><pubDate>Wed, 16 Nov 2022 12:48:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d3384595-81fe-4909-9c02-becf26b2ba52</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;I think the address being flipped is just some not-obvious problem in extracting the data. In any cases,&amp;nbsp;&lt;span&gt;NRF_BLE_SCAN_EVT_NOT_FOUND&amp;nbsp;means that the application never sees that beacon at all.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I notice in the nRF Connect App screenshot, the beacon&amp;nbsp;dBm and interval data is greyed out, indicating that the app hasn&amp;#39;t seen it in a bit of time. That is typical for devices with long advertising interval, such as your Beacon 3 (~10ms).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;However, it could be that the scanning timeout&amp;#39;d before it sees Beacon 3. Or&amp;nbsp;the timeout might seems enough for 2-3 advertising interval, but the scanner still&amp;nbsp;could (very) unfortunately miss the packets. &lt;br /&gt;&lt;/span&gt;&lt;span&gt;How do you setup the scan itself, as in how do&amp;nbsp;your scanning init and start function calls look like?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Can you try setting the timeout to unlimited and let the app run for a while?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Also, if you could share how you extract the addresses out of the events, I can look into why addresses are flipped/not flipped.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/395870?ContentTypeID=1</link><pubDate>Tue, 15 Nov 2022 19:54:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:04d26696-5b4b-4164-859d-2559effe9ed3</guid><dc:creator>eudaldo</dc:creator><description>[quote userid="9456" url="~/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers/395379"]One possibility is that the other devices are advertising with random addresses, which could change between when you recorded it into your filter code and&amp;nbsp;when you run the test.[/quote]
&lt;p&gt;The addresses of the devices are always the same, at least, in Nordic Connect&amp;nbsp; app.&lt;/p&gt;
[quote userid="9456" url="~/f/nordic-q-a/93653/the-nrf52840-can-not-filter-by-mac-address-other-ble-devices-that-are-from-other-manufacturers/395379"]If you force the advertising address of the nRF52 and nRF51 into one of the&amp;nbsp;non-Nordic addresses you are expecting, does the filter work?[/quote]
&lt;p&gt;If I set a custom ADDRESS (one that I created) into nordic device, the filters work.&lt;/p&gt;
&lt;p&gt;I has been test other devices and I could filter a ble device from other company (Texas Instrument), but when I try set other filter of a diferent TI device, I can not filtered :(&amp;nbsp; for example:&lt;br /&gt;&lt;br /&gt;I have three beacons (attach photo and the information that NRF connect provide me):&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Beacon 1 (Nordic SOC):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/7444.B1.jpg" /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/B1b.jpg" /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/B1c.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Beacon 2 (Texas Instrument):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/B2.jpg" /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/B2b.jpg" /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Beacon 3 (Texas Instrument):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/B3.jpg" /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/B3b.jpg" /&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;beacon1&lt;/strong&gt; and the&lt;strong&gt; beacon 2 &lt;/strong&gt;I could filtered with out problems, but the &lt;strong&gt;Beacon 3&lt;/strong&gt; I could not filtered and the filters are set&amp;nbsp; with the same metodh:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;store the ADDRESS in a array:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;char target_device[][6] = {
{0x96, 0xEA, 0x57, 0x6E, 0x91, 0xDF},
{0xEE, 0xA2, 0x65, 0xED, 0x04, 0x18},
{0x68, 0xDA, 0xFC, 0x71, 0x77, 0x60}
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;set and enable the filters:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void scan_init(void)
{
    ret_code_t          err_code;
    nrf_ble_scan_init_t init_scan;

    memset(&amp;amp;init_scan, 0, sizeof(init_scan));

    init_scan.connect_if_match = false;
    init_scan.conn_cfg_tag     = APP_BLE_CONN_CFG_TAG;
    init_scan.p_scan_param     = &amp;amp;m_scan_param;

    

    err_code = nrf_ble_scan_init(&amp;amp;m_scan, &amp;amp;init_scan, scan_evt_handler);
    APP_ERROR_CHECK(err_code);

    //Setting filters for scanning.


    int rows =  sizeof (target_device) / 6;

    for (int t=0 ; t&amp;lt;rows; t++)
    {
          char td[] = { target_device[t][0],target_device[t][1]  ,target_device[t][2]  ,target_device[t][3] ,target_device[t][4]  ,target_device[t][5]};
          err_code = nrf_ble_scan_filter_set(&amp;amp;m_scan, SCAN_ADDR_FILTER, td);
          APP_ERROR_CHECK(err_code);    
    }

    
   
     err_code = nrf_ble_scan_filters_enable(&amp;amp;m_scan, NRF_BLE_SCAN_ADDR_FILTER, false);
     APP_ERROR_CHECK(err_code);
 
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Enabling filters for the Scanning Module:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;// &amp;lt;e&amp;gt; NRF_BLE_SCAN_FILTER_ENABLE - Enabling filters for the Scanning Module.
//==========================================================
#ifndef NRF_BLE_SCAN_FILTER_ENABLE
#define NRF_BLE_SCAN_FILTER_ENABLE 1
#endif
// &amp;lt;o&amp;gt; NRF_BLE_SCAN_UUID_CNT - Number of filters for UUIDs. 
#ifndef NRF_BLE_SCAN_UUID_CNT
#define NRF_BLE_SCAN_UUID_CNT 0
#endif

// &amp;lt;o&amp;gt; NRF_BLE_SCAN_NAME_CNT - Number of name filters. 
#ifndef NRF_BLE_SCAN_NAME_CNT
#define NRF_BLE_SCAN_NAME_CNT 0
#endif

// &amp;lt;o&amp;gt; NRF_BLE_SCAN_SHORT_NAME_CNT - Number of short name filters. 
#ifndef NRF_BLE_SCAN_SHORT_NAME_CNT
#define NRF_BLE_SCAN_SHORT_NAME_CNT 0
#endif

// &amp;lt;o&amp;gt; NRF_BLE_SCAN_ADDRESS_CNT - Number of address filters. 
#ifndef NRF_BLE_SCAN_ADDRESS_CNT
#define NRF_BLE_SCAN_ADDRESS_CNT 20
#endif

// &amp;lt;o&amp;gt; NRF_BLE_SCAN_APPEARANCE_CNT - Number of appearance filters. 
#ifndef NRF_BLE_SCAN_APPEARANCE_CNT
#define NRF_BLE_SCAN_APPEARANCE_CNT 0
#endif&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;but only the beacon 1 and beacons 2 trigger the NRF_BLE_SCAN_EVT_FILTER_MATCH. However, the beacons 3 I can see it int he NRF_BLE_SCAN_EVT_NOT_FOUND, with the same ADDRESS (but flip) that I set in the filter&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;any idea what is the problem with beacon 3?&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="HwtZe" lang="en"&gt;&lt;span class="jCAhz ChMk0b"&gt;&lt;span class="ryNqvb"&gt;Eudaldo&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/395379?ContentTypeID=1</link><pubDate>Fri, 11 Nov 2022 15:29:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cacb9e68-171a-4bff-b16b-d92567970832</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;I just replicated your setup on my end, and it works just fine. I can see both my&amp;nbsp;nRF52 DK and my headset, which most probably doesn&amp;#39;t use a Nordic chip.&lt;/p&gt;
&lt;p&gt;One possibility is that the other devices are advertising with random addresses, which could change between when you recorded it into your filter code and&amp;nbsp;when you run the test.&lt;/p&gt;
&lt;p&gt;If you force the advertising address of the nRF52 and nRF51 into one of the&amp;nbsp;non-Nordic addresses you are expecting, does the filter work?&lt;/p&gt;
&lt;p&gt;If all fails,&amp;nbsp;could you please get us a sniffer trace? We can try to see what is wrong.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/394952?ContentTypeID=1</link><pubDate>Wed, 09 Nov 2022 14:46:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6c875ad6-0679-4611-9810-7fee3dfe2d2a</guid><dc:creator>eudaldo</dc:creator><description>&lt;p&gt;i do not place them, It is only a example of how I Set the ADDRESS filters. But, If I code the ADDRESS of the two beacons from the&amp;nbsp; images in the same formant, they does not work.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/394848?ContentTypeID=1</link><pubDate>Wed, 09 Nov 2022 09:04:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:edf703b3-58b6-482f-aed3-58d4b58b06ee</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Not sure I understood this correctly, but I don&amp;#39;t see the addresses of the beacons in your filter list?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/394811?ContentTypeID=1</link><pubDate>Tue, 08 Nov 2022 21:39:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:062c91a2-d629-4711-9f66-a38feb0294a2</guid><dc:creator>eudaldo</dc:creator><description>&lt;p&gt;I store the MAC ADDRESS in array of char, I put them in reverse (LSB&amp;nbsp; --&amp;gt; MSB) attach an example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;char target_device[][6] = {
{0x96, 0xEA, 0x57, 0x6E, 0x91, 0xDF},
{0x13, 0x48, 0x35, 0x79, 0xBE, 0xEB},
{0x68, 0xDA, 0xFC, 0x71, 0x77, 0x60},
{0xBF, 0x92, 0xD9, 0x70, 0xAF, 0xFD},
{0x8C, 0x4B, 0x7A, 0xD6, 0xAB, 0xFE},
{0x0E, 0x2B, 0xE6, 0x5A, 0xA8, 0xE7},
{0xC3, 0x6B, 0xD2, 0x56, 0x79, 0xEB}
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I have try put the MAC ADDRESS in the normal form (MSB---&amp;gt;LSB), but it does not work.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;For set the filter I use the following code:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; //Setting filters for scanning.


    int rows =  sizeof (target_device) / 6;

    for (int t=0 ; t&amp;lt;rows; t++)
    {
          char td[] = { target_device[t][0],target_device[t][1]  ,target_device[t][2]  ,target_device[t][3] ,target_device[t][4]  ,target_device[t][5]};
          
          err_code = nrf_ble_scan_filter_set(&amp;amp;m_scan, SCAN_ADDR_FILTER, td);
          
          APP_ERROR_CHECK(err_code);    
    }

   
     err_code = nrf_ble_scan_filters_enable(&amp;amp;m_scan, NRF_BLE_SCAN_ADDR_FILTER, false);
     APP_ERROR_CHECK(err_code);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I attach the devices that I want to scan:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/fob.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/ds.jpg" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 can not filter by MAC Address other BLE devices that are from other manufacturers.</title><link>https://devzone.nordicsemi.com/thread/394684?ContentTypeID=1</link><pubDate>Tue, 08 Nov 2022 12:43:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ca574847-e96c-4f19-9930-3fe188bc81e1</guid><dc:creator>Hieu</dc:creator><description>&lt;p&gt;Hi eudaldo!&lt;/p&gt;
&lt;p&gt;That should not happen at all. May I ask how you set up the other company device? Are you certain it is advertising? Can you see it on your phone, for example, with the nRF Connect app?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Hieu&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>