<?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>NRF52840 zigbee router&amp;#39;s neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/70780/nrf52840-zigbee-router-s-neighbour-table-management-lqi-is-not-updating-even-if-the-end-device-is-disconnected</link><description>I have created zigbee network using nordic dk board, i am trying to fetch all the active nodes in the network using zdo mgmt_lqi cli and i am getting those details but when i power off any device and then if i fetch the neighbour table i am getting that</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 21 Oct 2021 12:46:50 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/70780/nrf52840-zigbee-router-s-neighbour-table-management-lqi-is-not-updating-even-if-the-end-device-is-disconnected" /><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/335315?ContentTypeID=1</link><pubDate>Thu, 21 Oct 2021 12:46:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ee53a37c-b3ed-4c0e-86d8-2bd983e53356</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I just wanted to update you that in nRF Connect SDK v1.7.0 there is a dedicated API to get active neighbour table entries now,&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/zboss/3.8.0.1/group__nwk__management__service.html#ga9614febdf2ad20a6b94397a733a2a6dd"&gt;zb_nwk_nbr_iterator_next()&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/301934?ContentTypeID=1</link><pubDate>Thu, 25 Mar 2021 14:06:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37bda99f-487c-4384-8c49-483020437e31</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;That you are getting&amp;nbsp;response timeout error makes sense, since it is expecting to get a mgmt_leave_rsp command back. I have asked our developers if they know of any ways to remove the stale entry, so I will come back to you when I hear from them.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/301415?ContentTypeID=1</link><pubDate>Tue, 23 Mar 2021 12:10:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7245b552-d4b0-4efc-aac6-f5caaae1b3bf</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;I have already tried&amp;nbsp;&lt;span&gt;zdo mgmt_leave command, this command is not working on node which has already left the network, getting response timeout error.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/301411?ContentTypeID=1</link><pubDate>Tue, 23 Mar 2021 12:03:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a8f6a61d-c6ba-4937-9656-e8c731d6dcb6</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am not aware of any functions available to the user that delete stale nodes. In the case of end device keep alive, this happens as part of the stack when an end device, using end device keep alive, timeouts, resulting in the parent deleting it.&lt;/p&gt;
&lt;p&gt;However, you can try sending a mgmt_leave_req command. This command is used by a local device to request another device to leave the network. I do not know how this will work with a device that has already left, as the device that is requested to leave is supposed to process the request and report back to the local device via the mgmt_leave_rsp command. The easiest way to test this would be to use CLI and send the command &lt;span&gt;zdo mgmt_leave:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;zdo mgmt_leave &amp;lt;h:16-bit dst_addr&amp;gt; [h:device_address eui64] [--children] [--rejoin]&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;You can see examples of how this command is used in the CLI example&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fsdk_tz_v4.1.0%2Fzigbee_example_cli_reference.html&amp;amp;anchor=mgmt_leave"&gt;here&lt;/a&gt;.&amp;nbsp;You can also find more information about the mgmt_leave_req command in the Zigbee specification (chapter&amp;nbsp;2.4.3.3.5 in revision 21 found&amp;nbsp;&lt;a href="https://zigbeealliance.org/wp-content/uploads/2019/12/docs-05-3474-21-0csg-zigbee-specification.pdf"&gt;here&lt;/a&gt;), and&amp;nbsp;the&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/structzb__zdo__mgmt__leave__req__s.html"&gt;zb_zdo_mgmt_leave_req_s struct reference&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I have not tested the mgmt_leave_req command in the case of a stale node myself, so I can not guarantee that it will work. Please let me know if it does not, and I will see if I can find&amp;nbsp;other solutions for this.&lt;/p&gt;
&lt;p&gt;As far as I know, it is not possible&amp;nbsp;to force the device to update its neighbor table or routes, so the solution might be to leave and reconnect as you said. If the above solution does not work, I will ask about this internally.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/301167?ContentTypeID=1</link><pubDate>Mon, 22 Mar 2021 11:03:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:17441695-ea00-4531-b55b-f21027f15ef8</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Thanks for the function.&lt;/p&gt;
&lt;p&gt;I have used as you mentioned and it is working as you told, so I am getting stale entry but can I delete that&amp;nbsp;node from the stack&amp;nbsp;so neighbor table will get that update?&lt;/p&gt;
&lt;p&gt;If above is not possible then&amp;nbsp;when I&amp;#39;ll got any stale entry then in order to update neighbor table should that node has to leave and then re-connect the network?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/300595?ContentTypeID=1</link><pubDate>Thu, 18 Mar 2021 08:36:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6ba5357e-9c4d-4761-9111-940d01408c61</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;They were referring to the software/protocol stack instead of the hardware/memory region.&lt;/p&gt;
&lt;p&gt;To have created a code snippet that you can plug into the&amp;nbsp;&lt;em&gt;zigbee_cli_cmd_zdo.c&lt;/em&gt; file, to make things clearer. Afterwards you can read the internal neighbor table through the&amp;nbsp;&lt;em&gt;zdo neighbors&lt;/em&gt; command:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/**
 * @brief Prints all entries of the neighbor table.
 *
 * @code
 * zdo neighbors
 * @endcode
 *
 * Example:
 * @code
 * zdo neighbors
 * @endcode
 */
static void cmd_zb_neighbors(nrf_cli_t const * p_cli, size_t argc, char **argv)
{
    uint32_t i;
    zb_ieee_addr_t ieee_addr;
    zb_uint16_t addr;
 
    if ((argc &amp;gt; 1) || (nrf_cli_help_requested(p_cli)))
    {
        print_usage(p_cli, argv[0], &amp;quot;&amp;quot;);
        return;
    }
 
    nrf_cli_fprintf(p_cli,
                    NRF_CLI_NORMAL,
                    &amp;quot;\r\n[idx] &amp;quot;
                    &amp;quot;ext_addr         &amp;quot;
                    &amp;quot;short_addr &amp;quot;
                    &amp;quot;type &amp;quot;
                    &amp;quot;sleepy &amp;quot;
                    &amp;quot;lqi &amp;quot;
                    &amp;quot;age &amp;quot;
                    &amp;quot;timeout &amp;quot;
                    &amp;quot;relationship\r\n&amp;quot;);
 
    for (i = 0; i &amp;lt; gc_neighbor_table_size; i++)
    {
        if ((gc_neighbor[i].used == 0) ||
            (gc_neighbor[i].ext_neighbor != 0))
        {
            continue;
        }
 
        nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot;[%3u] &amp;quot;, i);
 
        zb_address_ieee_by_ref(ieee_addr, gc_neighbor[i].u.base.addr_ref);
        print_eui64(p_cli, ieee_addr);
 
        zb_address_short_by_ref(&amp;amp;addr, gc_neighbor[i].u.base.addr_ref);
        nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; 0x%04x    &amp;quot;, addr);
 
        switch (gc_neighbor[i].device_type) {
            case ZB_NWK_DEVICE_TYPE_COORDINATOR:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; ZC  &amp;quot;);
                break;
 
            case ZB_NWK_DEVICE_TYPE_ROUTER:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; ZR  &amp;quot;);
                break;
 
            case ZB_NWK_DEVICE_TYPE_ED:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; ZED &amp;quot;);
                break;
 
            default:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; ??? &amp;quot;);
                break;
        }
 
        if (gc_neighbor[i].rx_on_when_idle)
        {
            nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; false &amp;quot;);
        }
        else
        {
            nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; true  &amp;quot;);
        }
 
        nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; %03u&amp;quot;, gc_neighbor[i].lqi);
 
        if (gc_neighbor[i].device_type != ZB_NWK_DEVICE_TYPE_ED)
        {
            nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; %03u  ---   &amp;quot;, gc_neighbor[i].u.base.age);
        }
        else
        {
            zb_time_t exp_time = ZB_TIME_SUBTRACT(gc_neighbor[i].u.base.time_to_expire, ZB_TIMER_GET());
            nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; --- %07u&amp;quot;, ZB_TIME_BEACON_INTERVAL_TO_MSEC(exp_time) / 1000);
        }
 
        switch (gc_neighbor[i].relationship) {
            case 0x00:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; parent&amp;quot;);
                break;
 
            case 0x01:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; child&amp;quot;);
                break;
 
            case 0x02:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; sibling&amp;quot;);
                break;
 
            case 0x03:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; none&amp;quot;);
                break;
 
            case 0x04:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; previous child&amp;quot;);
                break;
 
            case 0x05:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; unauthenticated child&amp;quot;);
                break;
 
            default:
                nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; unknown&amp;quot;);
                break;
        }
 
        if ((gc_neighbor[i].device_type != ZB_NWK_DEVICE_TYPE_ED) &amp;amp;&amp;amp;
            (gc_neighbor[i].u.base.outgoing_cost == 0))
        {
            nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot; [STALE]\r\n&amp;quot;);
        }
        else
        {
            nrf_cli_fprintf(p_cli, NRF_CLI_NORMAL, &amp;quot;\r\n&amp;quot;);
        }
    }
 
    print_done(p_cli, ZB_TRUE);
}
...
    NRF_CLI_CMD(neighbors, NULL, &amp;quot;lists all entries from the neighbor table&amp;quot;, cmd_zb_neighbors),
    NRF_CLI_SUBCMD_SET_END
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Example output for an aged-out router (Zigbee coordinator in this case):&lt;/p&gt;
&lt;pre&gt;&lt;span&gt;&amp;gt; zdo neighbors&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;[idx] ext_addr         short_addr type sleepy lqi age timeout relationship&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;[  0] f4ce36aaaaaaaaaa 0x0000     ZC   false  255 003  ---    parent [STALE]&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;They also tested end device aging. The entry for the end device was simply removed after the timeout.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/300190?ContentTypeID=1</link><pubDate>Tue, 16 Mar 2021 14:56:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e1474301-0266-439b-bb26-b5b960dcee11</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Thanks for the update.&lt;/p&gt;
&lt;p&gt;Can you please explain 1st point, because what I understood from this point is that I can&amp;nbsp;move neighbor table from stack to memory, and then I have to fetch &amp;quot;outgoing_cost&amp;quot; for every node?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/300136?ContentTypeID=1</link><pubDate>Tue, 16 Mar 2021 13:04:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:afde3036-9c94-4f69-923b-56db1d89c97f</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I have a few updates from the Zigbee team, which I copied here:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;There is no public API to get the &amp;quot;stale&amp;quot;status from the neighbor table. You can try to use the dynamic memory configuration feature, that will move the table from the stack to the application memory and include definitions from zboss_api_internal.h to iterate through it, but this is rather a hack than a solution.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;Unfortunately we were unable to find clear statements inside the Zigbee specification, whether stale entries should or should not be included in the MGMT LQI Response. That said, it seems to be valid to include them. Unfortunately - this prevents you from using this responses as the input for applications such as Zigbee topology monitors.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span&gt;As a potential, future solution, I have asked if it would be valid to change the LQI values to something very low, if the device is marked as stale. Again - I was not able to find something inside the specification, that will require this change inside the stack, but I do see a value in having some sort of indication for external nodes, that the entry has been marked as stale, that&amp;#39;s why I proposed it. It has not been decided yet, if it will happen - currently it is being discussed.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Marte&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/297858?ContentTypeID=1</link><pubDate>Thu, 04 Mar 2021 14:31:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:56e1db5d-9b35-43f5-92d3-64125f10968c</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Thanks for the update, I&amp;#39;ll keep waiting for your further response.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/297847?ContentTypeID=1</link><pubDate>Thu, 04 Mar 2021 14:19:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8699909b-9f74-451a-9ca6-37a6d44abfe3</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m sorry for the late reply, I just want to inform you that we are still working on this.&lt;/p&gt;
&lt;p&gt;The Zigbee team confirmed that what is described in the excerpt from the Zigbee specification that I added earlier has happened. After 45 seconds (3*15 seconds) the Outgoing cost in Link Statuses, sent by the coordinator, were set to zero, indicating that this entry is &amp;quot;stale&amp;quot; and may be reused. However, distinguishing between stale and active neighbor table entries is not straightforward, as you must read the outgoing cost of&amp;nbsp;zb_neighbor_tbl_ent_t, and there is no public API to get those, but they are instead a part of the stack. However, our Zigbee team will keep working on this and try to find a solution. I will keep you updated when I hear more from them.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/293810?ContentTypeID=1</link><pubDate>Wed, 10 Feb 2021 14:49:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6f0f6f11-d68e-4fe2-9a40-e1e6b76ba2b5</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m afraid I haven&amp;#39;t heard back from the Zigbee team yet, as they have a lot to do right now. I&amp;#39;ll let you know as soon as I hear from them.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/293554?ContentTypeID=1</link><pubDate>Tue, 09 Feb 2021 12:54:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9be87fa6-ac6d-47c1-a412-6caaf00dfa38</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Any update regarding this&amp;nbsp;issue?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/292386?ContentTypeID=1</link><pubDate>Tue, 02 Feb 2021 08:19:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e667c964-5adc-4916-bcfe-d3a393b2a96f</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I see that the last Link Status from your router is packet 45. After that it stops sending, and the only Link Status messages sent are by the coordinator (source address 0x0000 indicates that the coordinator is sending the packet). Since the router stops sending Link Status, it should be removed from the neighbor table of the coordinator. I&amp;#39;m not sure why that doesn&amp;#39;t happen,&amp;nbsp;but I&amp;#39;ve asked the Zigbee team internally and will come back to you when I get a response from them.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/292361?ContentTypeID=1</link><pubDate>Tue, 02 Feb 2021 06:20:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:abe69017-4f88-4d01-a654-354701ec5504</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;In this sniffer log after frame No. 46, I have turned of nordic router but in the Link status you can see 1 link which is indicating that router.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/292196?ContentTypeID=1</link><pubDate>Mon, 01 Feb 2021 11:51:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e541ba95-116e-417e-b425-1a9b588744eb</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nordic2nordic_5F00_nwk_5F00_log.pcap"&gt;devzone.nordicsemi.com/.../nordic2nordic_5F00_nwk_5F00_log.pcap&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Kindly find the attached sniffer log of Nordic coordinator and router.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/292031?ContentTypeID=1</link><pubDate>Fri, 29 Jan 2021 15:11:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:977cfbb0-2d70-484c-a1ed-0091da29b66d</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;You&amp;#39;re correct that the router should&amp;#39;ve been removed from the neighbor table in that case, according to what&amp;#39;s stated in the specification. I will ask internally about this and come back to you.&lt;/p&gt;
&lt;p&gt;In the mean time, could you collect a&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/nrf802154_sniffer.html"&gt;sniffer log&lt;/a&gt;&amp;nbsp;and check for link status packets from your router? Please make sure to start the sniffer before the network is created, to avoid that the payload is encrypted. In order to filter for link status you can use the following filter in Wireshark: &amp;quot;zbee_nwk.cmd.id == 0x08&amp;quot;. You can also attach the sniffer log here as a pcap file so that I can look at it.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/291977?ContentTypeID=1</link><pubDate>Fri, 29 Jan 2021 11:55:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:526fb870-4bc1-49a2-9a14-0dc649f7329b</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Ok I understood your point, but can you explain why am I getting following behavior?&lt;/p&gt;
&lt;p&gt;I have configured 1 Nordic Dk as Coordinator and 2nd as router, so when router is&amp;nbsp;ON and I fetch neighbor table of coordinator then I got table with datils of router&amp;nbsp;which is working fine, but my problem is when I turned off router and then fetch the table then again I am getting that router&amp;#39;s detail in table, even after 15 minute I am getting that router in the table.&lt;/p&gt;
&lt;p&gt;My question is why am I getting that turned off router&amp;#39;s details? it should be gone from the neighbor table details, that is not happening.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/291780?ContentTypeID=1</link><pubDate>Thu, 28 Jan 2021 12:39:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2a178c9d-4d7f-4d57-8737-06121c7a965c</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This will not work&amp;nbsp;for the router, as it doesn&amp;#39;t have the availability for the same keep alive functionality as the end device does. However, this should be handled by default by the Zigbee stack.&lt;/p&gt;
&lt;p&gt;This is done by using link status command in order to keep track of route symmetry. Every so often a router will send out a broadcast with a radius of 1. This broadcast indicates the link status, and the neighboring routers will keep track of these messages to determine which routers can hear them, and which they can hear in return.&lt;/p&gt;
&lt;p&gt;You can also find more information about neighbor tables and this in the&amp;nbsp;&lt;a href="https://zigbeealliance.org/wp-content/uploads/2019/11/docs-05-3474-21-0csg-zigbee-specification.pdf"&gt;Zigbee specification&lt;/a&gt;, in chapter 3.6.1.5:&lt;/p&gt;
&lt;div&gt;
&lt;blockquote&gt;
&lt;div&gt;For devices using link status messages, the age fields for routers in the neighbor table are incremented every nwkLinkStatusPeriod. If the value exceeds nwkRouterAgeLimit, the outgoing cost field of the neighbor table entry is set to 0. In other words, if a device fails to receive nwkRouterAgeLimit link status messages from a router neighbor in a row, the old outgoing cost information is discarded. In this case, the neighbor entry is considered stale and may be reused if necessary to make room for a new neighbor. End devices do not issue link status messages and therefore should never be considered stale.&lt;/div&gt;
&lt;/blockquote&gt;
&lt;/div&gt;
&lt;p&gt;In the SDK, the number of missed link status command frames before resetting the link costs to zero (nwkRouterAgeLimit in the Zigbee spec) is defined by&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/group___z_b___c_o_n_f_i_g.html#gae2a4e5615be2b7a63bfbac88e532c3a3"&gt;ZB_NWK_ROUTER_AGE_LIMIT&lt;/a&gt;, and the time in seconds between link status command frames (nwkLinkStatusPeriod in the Zigbee spec) is defined by&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/group___z_b___c_o_n_f_i_g.html#ga65fb5572618fe8c5be27f629b3a6fb52"&gt;ZB_NWK_LINK_STATUS_PERIOD&lt;/a&gt;. These are by default 3 and 0xf, but they can be changed.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/291637?ContentTypeID=1</link><pubDate>Thu, 28 Jan 2021 04:44:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:983e7146-9164-46c7-9679-4e98b6bdddc0</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Can you please confirm ? Is it going to work with router too?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/290755?ContentTypeID=1</link><pubDate>Fri, 22 Jan 2021 13:07:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:26f333d4-917a-4e91-aedf-25810689811d</guid><dc:creator>Bhavit Rajput</dc:creator><description>&lt;p&gt;Ok, this will work for end device but what for Router, will it work for Router too?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: NRF52840 zigbee router's neighbour table (management lqi) is not updating even if the end device is disconnected</title><link>https://devzone.nordicsemi.com/thread/290752?ContentTypeID=1</link><pubDate>Fri, 22 Jan 2021 13:03:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d5f13334-8885-4746-ba06-501f19926821</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;If you&amp;#39;re using end device keep alive, then the router parent should delete a child from it&amp;#39;s neighbor table if it doesn&amp;#39;t receive a keep alive message during the timeout period. The end device timeout period can be configured with&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/group__zb__general__set.html#gaf8e3a6e219eba542ddd1ef8dc361149d"&gt;zb_set_ed_timeout&lt;/a&gt;, and how often the keep alive message is sent can be configured by&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/group__zb__general__set.html#gafb20d6f762d98096ab34e3c98f772584"&gt;zb_set_keepalive_timeout&lt;/a&gt;. Please note that you should set this period in such a way that the end device sends at least 3 keep alive messages during the end device timeout period. You can read more about&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/zigbee_prog_principles.html?cp=7_3_3_3_3#zigbee_keep_alive_mechanism"&gt;end device keep alive here&lt;/a&gt;. There are also several examples that use this that you can take a look at to see how it&amp;#39;s used, like the light control example, where you can find it at line 534 in main.c in the light switch code in v4.1.0 of the SDK.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>