<?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 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/76954/the-nrf52840-seems-to-not-receive-response-from-green-power-endpoints</link><description>Hi, 
 
 I am currently using a NRF52840 dongle with the python wrapper for the zigbee library. 
 When I send a Discover Attribute to a Green Power cluster in a Green Power Endpoint, it seems that the dongle does not receive any response from the device</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 04 Oct 2021 18:40:57 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/76954/the-nrf52840-seems-to-not-receive-response-from-green-power-endpoints" /><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/332434?ContentTypeID=1</link><pubDate>Mon, 04 Oct 2021 18:40:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b0a8714f-dbe4-45a1-bdc4-62f6ea88fb45</guid><dc:creator>Marjeris Romero</dc:creator><description>&lt;p&gt;Hi Charles,&lt;/p&gt;
&lt;p&gt;Zigbee Direct is not supported in NCS right now. This is a new feature, which is still under development. The define is not enabled and cannot be enabled by the application code. We will try to ask ZBOSS to remove this piece to avoid further confusion.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marjeris&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/330713?ContentTypeID=1</link><pubDate>Wed, 22 Sep 2021 15:03:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8461ded8-3a73-4f0a-8948-a35c220987d1</guid><dc:creator>c.tessierpiart</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I recently came back to this subject. I tried to mess with the ZGP API from ZBOSS. It is unwieldy compared to the standard ZBOSS API, to say the least, and I found this part :&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;#ifdef ZB_ENABLE_ZGP_DIRECT
/**
   Set ZBOSS to skip all incloming GPDF.

   To be used for testing only.
   Use that function with ZB_TRUE parameter to prevent Combo device from
   receiving GPDFS thus always working thru Proxy device.

   @param skip if ZB_TRUE, skip incoming GP frames

   @snippet doxygen_snippets.dox set_skip_gpdf_snippet_zc_combo_c
  */
void zb_zgp_set_skip_gpfd(zb_bool_t skip);

#endif  /* ZB_ENABLE_ZGP_DIRECT */&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I did not fully understand all the implication of ZIGBEE Direct, can you enlighten me on the subject ?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Charles Tessier-Piart&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/328976?ContentTypeID=1</link><pubDate>Fri, 10 Sep 2021 09:42:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7f25a824-381d-4584-9d19-afb227ba6e84</guid><dc:creator>c.tessierpiart</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thank you for your response.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Yes, I run an application based on the CLI exemple and the output log looks like this :&lt;/p&gt;
&lt;p&gt;TX : zcl cmd -w -d 0004740000A22CDE 242 21 -p A1E0 C -l 0000ff&lt;br /&gt;RX : Error: Request timed out&lt;/p&gt;
&lt;p&gt;(I use the python wrapper)&lt;/p&gt;
&lt;p&gt;The application never run into the else if condition and I don&amp;#39;t find any part of the application that allows me to see the response frame. Making the else if statement did not solve any issues.&lt;/p&gt;
&lt;p&gt;When not using the Green Power profile, the parsing is fine. I don&amp;#39;t see what would change if this bit of the code is modified.&lt;/p&gt;
&lt;p&gt;Thank you,&lt;/p&gt;
&lt;p&gt;Charles&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/328566?ContentTypeID=1</link><pubDate>Wed, 08 Sep 2021 11:09:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:551aa809-84fb-460c-89ac-5c556ca2c751</guid><dc:creator>Marjeris Romero</dc:creator><description>&lt;p&gt;Hi again,&lt;/p&gt;
&lt;p&gt;I am so sorry for the late reply, I see I never managed to answer this. Are you still struggling with this issue?&lt;/p&gt;
&lt;p&gt;Are you running an application based on the CLI example on your dongle? I see that the handler function is very similar to the one on the CLI example. How does the output log you are getting look like?&lt;/p&gt;
&lt;p&gt;Do you know if you are getting inside the &amp;#39;else if&amp;#39; statement for ZB_ZCL_CMD_DISC_ATTRIB_RESP? Perhaps you can start with printing something out if the function get&amp;#39;s inside the statement to debug further.&lt;/p&gt;
&lt;p&gt;You can also try to make your &amp;#39;else if&amp;#39; statement more specific for example:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; else if ((cmd_info-&amp;gt;cmd_direction == ZB_ZCL_FRAME_DIRECTION_TO_CLI) &amp;amp;&amp;amp; \
        (cmd_info-&amp;gt;cmd_id == ZB_ZCL_CMD_DISC_ATTRIB_RESP) &amp;amp;&amp;amp; \
        (cmd_info-&amp;gt;cluster_id == ZB_ZCL_CLUSTER_ID_GREEN_POWER))&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Try to print something here with NRF_LOG to see if you are intercepting the frame.&lt;/p&gt;
&lt;p&gt;Then the incoming frame must be parse as &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/structzb__zcl__disc__attr__res__s.html"&gt;zb_zcl_disc_attr_res_t &lt;/a&gt;not zb_zcl_disc_attr_info_t.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I hope you have managed to move forward and I am very sorry this question got a bit lost in my queue.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marjeris&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/319843?ContentTypeID=1</link><pubDate>Tue, 13 Jul 2021 13:51:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2a71e602-d5dd-4904-a6e6-69ab34a03a11</guid><dc:creator>c.tessierpiart</dc:creator><description>&lt;div&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;/**@brief The Handler to &amp;#39;intercept&amp;#39; every frame coming to the endpoint
 *
 * @param bufid    Reference to a ZBOSS buffer
 */
static zb_uint8_t cli_agent_ep_handler_generic_cmd(zb_bufid_t bufid)
{
    zb_zcl_parsed_hdr_t * p_cmd_info = ZB_BUF_GET_PARAM(bufid, zb_zcl_parsed_hdr_t);
    zb_int8_t             row;
    zb_ret_t              zb_err_code;

    /* Get the row in the requests table according by the sequence number */
    row = get_cmd_table_row_by_sn(p_cmd_info-&amp;gt;seq_number);
    if (row == -1)
    {
        return ZB_FALSE;
    }

    cmd_query_t * p_row = &amp;amp;(m_cmd_data[row]);
    if (!is_response(p_cmd_info, p_row))
    {
        return ZB_FALSE;
    }
    if (p_cmd_info-&amp;gt;cmd_id == ZB_ZCL_CMD_DEFAULT_RESP)
    {
        zb_zcl_default_resp_payload_t * p_def_resp;
        p_def_resp = ZB_ZCL_READ_DEFAULT_RESP(bufid);

        /* Print info received from default response */
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       (p_def_resp-&amp;gt;status == ZB_ZCL_STATUS_SUCCESS) ? NRF_CLI_INFO : NRF_CLI_ERROR,
                       &amp;quot;\r\nDefault Response received: &amp;quot;);
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       (p_def_resp-&amp;gt;status == ZB_ZCL_STATUS_SUCCESS) ? NRF_CLI_INFO : NRF_CLI_ERROR,
                       &amp;quot;Command: %d, Status: %d&amp;quot;,
                        p_def_resp-&amp;gt;command_id, p_def_resp-&amp;gt;status);
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       (p_def_resp-&amp;gt;status == ZB_ZCL_STATUS_SUCCESS) ? NRF_CLI_INFO : NRF_CLI_ERROR,
                       &amp;quot;\r\n&amp;quot;);

        if (p_def_resp-&amp;gt;status != ZB_ZCL_STATUS_SUCCESS)
        {
            print_error(p_row-&amp;gt;p_cli, &amp;quot;Command not successful&amp;quot;, ZB_TRUE);
        }
        else
        {
            print_done(p_row-&amp;gt;p_cli, ZB_FALSE);
        }
    }
    else if (p_cmd_info-&amp;gt;cmd_id == ZB_ZCL_CMD_DISC_ATTRIB_RESP)
    {
        zb_zcl_disc_attr_info_t * p_attr_resp = NULL;
        zb_uint8_t complete = 0;
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       NRF_CLI_INFO,
                       &amp;quot;\r\nList Attribute Response received: \r\n&amp;quot;);
        ZB_ZCL_GENERAL_GET_COMPLETE_DISC_RES(bufid,complete);
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                        NRF_CLI_INFO,
                        &amp;quot;complete:%d\r\n&amp;quot;,
                        complete);
        
        ZB_ZCL_GENERAL_GET_NEXT_DISC_ATTR_RES(bufid,p_attr_resp);
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       NRF_CLI_INFO,
                       &amp;quot;list attr,type: \r\n[&amp;quot;);
        while (p_attr_resp)
        {
            nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                        NRF_CLI_INFO,
                       &amp;quot;(%d,%d),&amp;quot;,
                        p_attr_resp-&amp;gt;attr_id, p_attr_resp-&amp;gt;data_type);
          
            ZB_ZCL_GENERAL_GET_NEXT_DISC_ATTR_RES(bufid,p_attr_resp);
        }       
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       NRF_CLI_INFO,
                       &amp;quot;]\r\n&amp;quot;);
        print_done(p_row-&amp;gt;p_cli, ZB_FALSE);
    }
    else if (p_cmd_info-&amp;gt;cmd_id == (ZB_ZCL_CMD_DISCOVER_COMMANDS_RECEIVED_RES) || 
        (p_cmd_info-&amp;gt;cmd_id ==ZB_ZCL_CMD_DISCOVER_COMMANDS_GENERATED_RES))
    {
        zb_zcl_disc_cmd_info_t * p_cmd_resp = NULL;
        zb_uint8_t complete = 0;
        zb_zcl_parse_status_t status;

        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       NRF_CLI_INFO,
                       &amp;quot;\r\nList Command Response received: \r\n&amp;quot;);
        ZB_ZCL_GENERAL_GET_DISC_COMMAND_RESP(bufid,complete);
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                        NRF_CLI_INFO,
                        &amp;quot;complete:%d\r\n&amp;quot;,
                        complete);
        
        ZB_ZCL_GENERAL_GET_NEXT_CMD_ID_DISC_COMMAND_RESP(bufid,p_cmd_resp);
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       NRF_CLI_INFO,
                       &amp;quot;list cmd: \r\n[&amp;quot;);
        while (p_cmd_resp)
        {
            nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                        NRF_CLI_INFO,
                       &amp;quot;%d,&amp;quot;,
                        p_cmd_resp-&amp;gt;cmd_id);
          
            ZB_ZCL_GENERAL_GET_NEXT_CMD_ID_DISC_COMMAND_RESP(bufid,p_cmd_resp);
        }       
        nrf_cli_fprintf(p_row-&amp;gt;p_cli,
                       NRF_CLI_INFO,
                       &amp;quot;]\r\n&amp;quot;);
        print_done(p_row-&amp;gt;p_cli, ZB_FALSE);
    }
    else /* In case of unknown response */
    {
        print_error(p_row-&amp;gt;p_cli, &amp;quot;Unknown response&amp;quot;, ZB_TRUE);
    }
    /* Cancel the ongoing alarm which was to erase the row... */
    if (m_cmd_data[row].def_resp == ZB_ZCL_ENABLE_DEFAULT_RESPONSE)
    {
        zb_err_code = (ZB_SCHEDULE_APP_ALARM_CANCEL(invalidate_row_cb, row));
        ZB_ERROR_CHECK(zb_err_code);
    }
    /* ...and erase it manually */
    invalidate_row(row);

    zb_buf_free(bufid);
    return ZB_TRUE;
}


/**@brief Endpoint handlers
 */
 NRF_ZIGBEE_EP_HANDLER_REGISTER(generic_cmd, cli_agent_ep_handler_generic_cmd);
/** @} */&lt;/pre&gt;&lt;/div&gt;
&lt;div&gt;&lt;/div&gt;
&lt;div&gt;Every function works with profile Home Automation, but it doesn&amp;#39;t when I try to work with endpoint 242 and Green Power Profile&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/319745?ContentTypeID=1</link><pubDate>Tue, 13 Jul 2021 09:49:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:50ab6555-f76c-4461-8bd3-e4b85e2e678c</guid><dc:creator>Marjeris Romero</dc:creator><description>&lt;p&gt;Can you share with us the code you are using for intercepting these frames?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/319725?ContentTypeID=1</link><pubDate>Tue, 13 Jul 2021 08:43:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b7256bef-d905-4c85-b797-a3d4f4538a16</guid><dc:creator>c.tessierpiart</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The thing is that&amp;nbsp;&lt;span&gt;I can intercept any kind of data frame just fine but I can&amp;#39;t intercept anything when I send any command with the Green Power Profile.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/319609?ContentTypeID=1</link><pubDate>Mon, 12 Jul 2021 13:30:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:442ebb08-c542-4b69-b914-a2e35c346a9a</guid><dc:creator>Marjeris Romero</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;You may need to intercept this command response if you want to do more processing to the discover attribute response. From what I see on the ZCL specification there is not much to expect from the stack handling when the Discover attribute response is received:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1626096548954v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Take a look at the documentation on &amp;quot;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.1.0/using_zigbee__z_c_l.html?cp=8_3_3_4_1_8_0#process_zcl_cmd_executing"&gt;Executing interception mechanism&lt;/a&gt;&amp;quot; on the infocenter for more information on how to intercept ZCL packets.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Marjeris&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/319594?ContentTypeID=1</link><pubDate>Mon, 12 Jul 2021 12:40:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:214848bd-9cd8-4707-9efd-1751fdac1dd2</guid><dc:creator>c.tessierpiart</dc:creator><description>&lt;p&gt;Using Wireshark, the sniffer manage to capture the command frame :&amp;nbsp;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/img1_5F00_Wireshark.png" /&gt;&lt;/p&gt;
&lt;p&gt;Then the selected device send to the dongle this response :&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/img2_5F00_Wireshark.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The frame is here but it seems the dongle doesn&amp;#39;t see it. To be a bit precise, I did not touch the GP feature of the dongle&amp;#39;s firmware.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: The NRF52840 seems to not receive response from Green Power endpoints.</title><link>https://devzone.nordicsemi.com/thread/318743?ContentTypeID=1</link><pubDate>Tue, 06 Jul 2021 09:03:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:41ad3ea2-af25-4aa4-a515-8d4ab0a027ef</guid><dc:creator>Marjeris Romero</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Do you have a sniffer trace you can share? Does the command packet you are sending look correct in the sniffer trace?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>