<?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>Zigbee power consumption</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/98040/zigbee-power-consumption</link><description>Hi, 
 I&amp;#39;m measuring the power consumption on our BLE+Zigbee device. 
 After the zigbee device is commsioned, it uses an average of 600uA of current, which seems pretty high. I already enabled the sleepy behavior like this: 
 
 See below the power usage</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 24 Apr 2023 09:07:07 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/98040/zigbee-power-consumption" /><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421974?ContentTypeID=1</link><pubDate>Mon, 24 Apr 2023 09:07:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d730bc3c-4fee-40c5-af7b-5c382e012b02</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;According to the stack compliance revision in the coordinator&amp;#39;s Node Descriptor Response, the coordinator is a Zigbee 2007 device and not a Zigbee Pro/Zigbee 3.0 device.&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1682325771447v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;In addition to the stack compliance revision, I also see that the commissioning process indicates that the coordinator is a Zigbee 2007 device, as it does not perform the Trust Center link key exchange.&lt;/p&gt;
&lt;p&gt;However, the coordinator responds with an End Device Timeout Response. End device timeout and aging mechanism were added in Zigbee Pro, so a Zigbee 2007 device should not support this and, therefore, not respond to an End Device Timeout Request.&lt;/p&gt;
&lt;p&gt;I believe this is causing the issues with the end device timeout and current consumption. Can you test with a Zigbee Pro coordinator instead? If you have an additional nRF52840 DK or dongle, or nRF52833 DK you can use the coordinator from our light control example or the CLI Agent example.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421957?ContentTypeID=1</link><pubDate>Mon, 24 Apr 2023 08:04:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6969c6cd-a784-4a58-b061-be11495ee26f</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;Please see attached.&lt;br /&gt;Network key is still the same&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/wireshark_5F00_zigbee_5F00_capture5.pcapng"&gt;devzone.nordicsemi.com/.../wireshark_5F00_zigbee_5F00_capture5.pcapng&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421948?ContentTypeID=1</link><pubDate>Mon, 24 Apr 2023 07:42:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:13b949e8-9923-4470-9167-c116cb02a2e3</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Please upload the sniffer log with the packets from both the coordinator and the end device.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421819?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 15:08:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1fee185e-afb3-4996-abec-b7ccfdb21d20</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;By the way, I gave you the filtered data, which I only filtered on a src.&lt;br /&gt;Now, when I look on all the data, I see that the coordinator sends an end device timeout response success to the device:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1682089678165v1.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421794?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 14:05:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9805fb9e-114a-4ec0-a79d-aae1796bacbd</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;So it&amp;#39;s more related to the coordinator that it doesn&amp;#39;t send this response?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421763?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 12:52:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5e26cfb7-1280-419b-91fd-958d73545f67</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;No, End Device Timeout Request is not the polling. The Data Request is the polling.&lt;/p&gt;
&lt;p&gt;End Device Timeout Requests are sent to inform the end device&amp;#39;s parent of the end device&amp;#39;s timeout requirements. This should only be sent once unless the end device does not receive an End Device Timeout Response from the parent. Here you can see the expected behavior when the end device joins the network. I have marked the request and response:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:200px;max-width:500px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/1000x400/__key/communityserver-discussions-components-files/4/pastedimage1682081324174v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421719?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 11:28:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a9cfd8ea-4107-4d7c-b273-d482be3dbd0b</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I think these End Device Timeout Requests is the polling (it&amp;#39;s a sleepy end device) rate right? Because thats set at 500ms and I see that these requests are approx. 500ms delayed.&lt;/p&gt;
&lt;p&gt;But I think this extra traffic is generated by the Data Request packages on the IEEE 802.15.4 protocol. What does that mean?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421708?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 11:12:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:84d2fcd0-7985-4529-b9b4-bc3eee91dd7d</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The end device sends continuous End Device Timeout Requests to the coordinator. There are no packets from the coordinator in the sniffer log, so I cannot see whether it responds to the requests, but I would assume that it does not since the end device continues sending them.&lt;/p&gt;
&lt;p&gt;The request looks correct, so there should not be an issue there.&lt;/p&gt;
&lt;p&gt;What are you using as the coordinator? Can you also get a sniffer log that includes packets from the coordinator? Start the sniffer before the end device joins the network so you get the Node Descriptor Response from the coordinator in the sniffer log.&lt;/p&gt;
&lt;p&gt;Another thing you can try is to use the &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.2.0/zigbee_example_light_control.html?cp=9_3_3_8_5_0"&gt;light coordinator&lt;/a&gt; or &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.2.0/zigbee_example_cli_agent.html?cp=9_3_3_8_5_1"&gt;CLI agent&lt;/a&gt; as the coordinator and see if there is any difference in current consumption on the end device.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421659?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 08:24:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ab0a501-069c-491a-9da4-1ba7c98242ce</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;I just figured out that wireshark is not exporting the decrypted packages.&lt;/p&gt;
&lt;p&gt;The network key is:&lt;/p&gt;
&lt;p&gt;[Key: df159b023ed72c599a7f78dad6dc04d9]&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1682065451842v1.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421647?ContentTypeID=1</link><pubDate>Fri, 21 Apr 2023 07:23:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ac014c5e-8fe4-479e-b89d-eb65db0e3722</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am still not able to see the packets in the sniffer.&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:200px;max-width:400px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/800x400/__key/communityserver-discussions-components-files/4/pastedimage1682059597126v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;If you are able to decrypt and see the content on your side, then you can find the network key in the Zigbee Security Header:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421480?ContentTypeID=1</link><pubDate>Thu, 20 Apr 2023 12:11:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4cce9ffe-2661-4001-b458-71cd50034c37</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;I captured a new log as you said. If I&amp;#39;m right the key should be in there now.&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/0871.wireshark_5F00_zigbee_5F00_capture3.pcapng"&gt;devzone.nordicsemi.com/.../0871.wireshark_5F00_zigbee_5F00_capture3.pcapng&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421457?ContentTypeID=1</link><pubDate>Thu, 20 Apr 2023 11:11:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e35aca85-4937-4f98-b93e-5b1b53dbd0b1</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am not able to decrypt the packets. Please share the network key so I can decrypt them, or capture a new sniffer where you start the sniffer before the coordinator creates the network so the sniffer has the network key.&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: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421327?ContentTypeID=1</link><pubDate>Wed, 19 Apr 2023 19:19:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fb3ce1c0-6d59-4a90-ace9-3bb53908f4ed</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;See pcap attached.&lt;/p&gt;
&lt;p&gt;I tried to capture it a couple of times. One time, I saw after approx. 180seconds that all the traffic started to become &amp;quot;normal&amp;quot;, as in that I saw it polling every 500ms (I set the poll time to 500ms).&lt;/p&gt;
&lt;p&gt;But then after I tried again I couldnt see this, it started to have this traffic for a longer period as you can see in the capture.&lt;/p&gt;
&lt;p&gt;What does this traffic mean? It finished steering by the way and is connected to the coordinator.&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/wireshark_5F00_zigbee_5F00_capture2.pcapng"&gt;devzone.nordicsemi.com/.../wireshark_5F00_zigbee_5F00_capture2.pcapng&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421189?ContentTypeID=1</link><pubDate>Wed, 19 Apr 2023 08:45:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7b384c43-bb6a-43ef-8723-4cd00fff7f5c</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;span style="margin:0;padding:0;text-align:left;"&gt;Can you capture a sniffer log and upload it here as a pcap file using Insert -&amp;gt; Image/video/file? With this, it is possible to see which Zigbee packets are being sent and how often. See &lt;a href="https://infocenter.nordicsemi.com/topic/ug_sniffer_802154/UG/sniffer_802154/intro_802154.html" rel="noopener noreferrer" target="_blank"&gt;nRF Sniffer for 802.15.4&lt;/a&gt; for how to set up and use our 802.15.4 sniffer. &lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="margin:0;padding:0;text-align:left;"&gt;You say that you started with the light switch example but also that you are using BLE. Did you add BLE functionality to the light switch example, or did you start with one of the multiprotocol examples for this?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="margin:0;padding:0;text-align:left;"&gt;I would expect the light bulb example to have higher current consumption than the light bulb, as it is a router and not an end device. Have you tested with the out-of-the-box light switch example, or the multiprotocol BLE and Zigbee light switch example?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="margin:0;padding:0;text-align:left;"&gt;I tested the multiprotocol light switch example in v4.2.0, and I got around 130-140 uA when the device was connected to the Zigbee network and advertising BLE, and around 50 uA after it had connected to the central.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="margin:0;padding:0;text-align:left;"&gt;Best regards,&lt;br /&gt;Marte&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/421106?ContentTypeID=1</link><pubDate>Tue, 18 Apr 2023 17:59:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e1236b6e-31a8-4279-9609-ae411f0afa7f</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;Hi. I updated the SDK version from 4.1.0 to 4.2.0. Now I see an increase again in the power consumption.&lt;br /&gt;&lt;br /&gt;I see a lot of &amp;#39;spikes&amp;#39; from, I expect zigbee traffic. I also see this with the light bulb example. I didnt had this in sdk 4.1.0.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/ppk_2D00_20230418T175802.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Average consumption is now 451uA because of this.&lt;/p&gt;
&lt;p&gt;How can I reduce this traffic?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/418988?ContentTypeID=1</link><pubDate>Tue, 04 Apr 2023 09:10:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1b39aa40-2ccc-4f10-b6cc-54868a3e621b</guid><dc:creator>Marte Myrvold</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am glad to hear that you figured it out.&lt;/p&gt;
&lt;p&gt;You are correct that calling nrf_pwr_mgmt_run() in the main loop will cause issues with the Zigbee scheduler. When using Zigbee in nRF5 SDK, you must use either &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.2.0/group__zb__general__main__loop.html#ga80765ed256180c6452ade57d4545b282"&gt;zboss_main_loop()&lt;/a&gt; or &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_tz_v4.2.0/group__zb__general__main__loop.html#gab9f8bb77c5348ee1dea12ec1026517b1"&gt;zboss_main_loop_iteration()&lt;/a&gt; for the ZBOSS main loop, which will handle stack signals and ZCL callbacks. Calling nrf_pwr_mgmt_run() in the main loop will interfere with the ZBOSS main loop and, therefore, the Zigbee stack. &lt;br /&gt;However, nrf_pwr_mgmt_run() is called by the Zigbee stack when the Zigbee scheduler queue is empty, so there is no need to call this function yourself.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Marte&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/418385?ContentTypeID=1</link><pubDate>Thu, 30 Mar 2023 14:55:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a9ff8a41-abc5-423a-ac4c-e9cb2d9a3b15</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;I finally found the culprit. I had the function nrf_pwr_mgmt_run() in the mainloop running. Which I had in the BLE project. But apparently this is not cooperating with the zigbee scheduler, so I guess they where interfering or something. After removing this, I got a very low power output of around 17uA.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/417148?ContentTypeID=1</link><pubDate>Thu, 23 Mar 2023 14:42:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b3ecddab-256f-4af1-8103-4311513bd4fc</guid><dc:creator>Gueston</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;See answers below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;nRF5_SDK_for_Thread_and_Zigbee_v4.1.0&lt;/li&gt;
&lt;li&gt;I&amp;#39;m using my own code. But I started with the light switch example, because this is a (sleepy) end device&lt;/li&gt;
&lt;li&gt;Yes, it is my own code.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;UART is disabled. For current measurement I disabled all the logging by the way to exclude this factor.&lt;/p&gt;
&lt;p&gt;I understand it&amp;#39;s hard for you to figure this out based on my own code which you didn&amp;#39;t see, but that&amp;#39;s why I tried to isolate the problem to Zigbee only, by disabling en enabling it. Just to make sure it&amp;#39;s nothing else in my code which causes this, but it seems like the Zigbee stack is the problem.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;When I use the light switch example I get much lower values, but as far as I know nothing else is happening there.&lt;/p&gt;
&lt;p&gt;This the code I use for zigbee init:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;static void zigbee_init(void)
{
    uint64_t factoryAddress;

    /* Read long address from FICR. */
    factoryAddress  = (uint64_t)NRF_FICR-&amp;gt;DEVICEID[0] &amp;lt;&amp;lt; 32;
    factoryAddress |= NRF_FICR-&amp;gt;DEVICEID[1];
    memcpy(m_ieee_addr, &amp;amp;factoryAddress, sizeof(factoryAddress));

    /* Set Zigbee stack logging level and traffic dump subsystem. */
    ZB_SET_TRACE_LEVEL(ZIGBEE_TRACE_LEVEL);
    ZB_SET_TRACE_MASK(ZIGBEE_TRACE_MASK);
    ZB_SET_TRAF_DUMP_OFF();
    /* Initialize Zigbee stack. */
    ZB_INIT(&amp;quot;multiprotocol_template&amp;quot;);
    /* Set device address to the value read from FICR registers. */
    zb_osif_get_ieee_eui64(m_ieee_addr);
    zb_set_long_address(m_ieee_addr);
    /* Set static long IEEE address. */
    zb_set_network_ed_role(ZB_TRANSCEIVER_ALL_CHANNELS_MASK);
    //zb_set_network_ed_role(IEEE_CHANNEL_MASK);
    
    zigbee_erase_persistent_storage(ERASE_PERSISTENT_CONFIG);
    zb_set_ed_timeout(ED_AGING_TIMEOUT_64MIN);
    zb_set_keepalive_timeout(ZB_MILLISECONDS_TO_BEACON_INTERVAL(3000));
    sleepy_device_setup();
    UNUSED_RETURN_VALUE(ZB_MEMSET(&amp;amp;m_dev_ctx, 0, sizeof(m_dev_ctx)));

    ZB_AF_REGISTER_DEVICE_CTX(&amp;amp;device_ctx);

    // UNUSED_RETURN_VALUE(ZB_MEMSET(&amp;amp;on_off_switch_ctx, 0, sizeof(on_off_switch_ctx)));

    // ZB_AF_REGISTER_DEVICE_CTX(&amp;amp;on_off_switch_ctx);

    ZB_ZCL_REGISTER_DEVICE_CB(test_device_interface_cb);

    ZB_AF_SET_ENDPOINT_HANDLER(ZB_OUTPUT_ENDPOINT, zcl_specific_cluster_cmd_handler);

    window_covering_clusters_attr_init();
    power_config_battery_attr_init();
    /* Initialize application context structure. */
    //
    /* Register dimmer switch device context (endpoints). */


    /* Register callback for handling ZCL commands. */
    // ZB_ZCL_REGISTER_DEVICE_CB(zcl_device_cb);

    //test_device_attr_init();
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;This is the zboss_signal handler:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;void zboss_signal_handler(zb_bufid_t bufid)
{
    /* Read signal description out of memory buffer. */
    zb_zdo_app_signal_hdr_t * p_sg_p      = NULL;
    zb_zdo_app_signal_type_t  sig         = zb_get_app_signal(bufid, &amp;amp;p_sg_p);
    zb_ret_t                  status      = ZB_GET_APP_SIGNAL_STATUS(bufid);
    zb_ret_t                  zb_err_code;
    zb_bool_t                 comm_status;
    zb_time_t                 timeout_bi;

    switch(sig)
    {
        case ZB_BDB_SIGNAL_DEVICE_REBOOT:
            // BDB initialization completed after device reboot, use NVRAM contents during initialization. Device joined/rejoined and started.
            if (status == RET_OK)
            {
                if (ZIGBEE_MANUAL_STEERING == ZB_FALSE)
                {
                    NRF_LOG_INFO(&amp;quot;Start network steering&amp;quot;);
                    comm_status = bdb_start_top_level_commissioning(ZB_BDB_NETWORK_STEERING);
                    ZB_COMM_STATUS_CHECK(comm_status);
                }
                else
                {
                    NRF_LOG_INFO(&amp;quot;Coordinator restarted successfully&amp;quot;);
                }
            }
            else
            {
                NRF_LOG_ERROR(&amp;quot;Failed to initialize Zigbee stack using NVRAM data (status: %d)&amp;quot;, status);
            }
            break;

        case ZB_BDB_SIGNAL_STEERING:
            if (status == RET_OK)
            {
                if (ZIGBEE_PERMIT_LEGACY_DEVICES == ZB_TRUE)
                {
                    NRF_LOG_INFO(&amp;quot;Allow pre-Zigbee 3.0 devices to join the network&amp;quot;);
                    zb_bdb_set_legacy_device_support(1);
                }

                /* Schedule an alarm to notify about the end of steering period */
                NRF_LOG_INFO(&amp;quot;Network steering started&amp;quot;);
                zb_err_code = ZB_SCHEDULE_APP_ALARM(steering_finished, 0, ZB_TIME_ONE_SECOND * ZB_ZGP_DEFAULT_COMMISSIONING_WINDOW);
                ZB_ERROR_CHECK(zb_err_code);
            }
            break;

        case ZB_ZDO_SIGNAL_DEVICE_ANNCE:
            {
                zb_zdo_signal_device_annce_params_t * dev_annce_params = ZB_ZDO_SIGNAL_GET_PARAMS(p_sg_p, zb_zdo_signal_device_annce_params_t);
                NRF_LOG_INFO(&amp;quot;New device commissioned or rejoined (short: 0x%04hx)&amp;quot;, dev_annce_params-&amp;gt;device_short_addr);

                zb_err_code = ZB_SCHEDULE_APP_ALARM_CANCEL(steering_finished, ZB_ALARM_ANY_PARAM);
                if (zb_err_code == RET_OK)
                {
                    NRF_LOG_INFO(&amp;quot;Joining period extended.&amp;quot;);
                    zb_err_code = ZB_SCHEDULE_APP_ALARM(steering_finished, 0, ZB_TIME_ONE_SECOND * ZB_ZGP_DEFAULT_COMMISSIONING_WINDOW);
                    ZB_ERROR_CHECK(zb_err_code);
                }
        } break;

        case ZB_COMMON_SIGNAL_CAN_SLEEP: {

                // zb_sleep_now();
        } break;

        default:
                /* Call default signal handler. */
                ZB_ERROR_CHECK(zigbee_default_signal_handler(bufid));
                break;
    }

    /* Update network status LED */
    if (ZB_JOINED() &amp;amp;&amp;amp; (ZB_SCHEDULE_GET_ALARM_TIME(steering_finished, ZB_ALARM_ANY_PARAM, &amp;amp;timeout_bi) == RET_OK))
    {
        bsp_board_led_on(ZIGBEE_NETWORK_STATE_LED);
    }
    else
    {
        bsp_board_led_off(ZIGBEE_NETWORK_STATE_LED);
    }

    /* All callbacks should either reuse or free passed buffers. If bufid == 0, the buffer is invalid (not passed) */
    if (bufid)
    {
        zb_buf_free(bufid);
    }
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;To start the zigbee stack:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;err_code = zboss_start_no_autostart();
ZB_ERROR_CHECK(err_code);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;And in my main loop:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;zboss_main_loop_iteration();
UNUSED_RETURN_VALUE(NRF_LOG_PROCESS());&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote userid="14926" url="~/f/nordic-q-a/98040/zigbee-power-consumption/417139"]I would expect 600 uA to typically be caused by the HFCLK running and/or UART.[/quote]
&lt;p&gt;HFCLK could be, but as far as I know I&amp;#39;m not in control of the usage of when the Zigbee stack is used?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Zigbee power consumption</title><link>https://devzone.nordicsemi.com/thread/417139?ContentTypeID=1</link><pubDate>Thu, 23 Mar 2023 14:28:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:608a3e18-a604-443b-adcf-a05257e464db</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Are you using nRF Connect SDK or nRF5 SDK for Thread and Zigbee?&lt;/li&gt;
&lt;li&gt;Which version of the SDK do you use?&lt;/li&gt;
&lt;li&gt;Which example/sample are you basing your code on?&lt;/li&gt;
&lt;li&gt;Have you made modifications to the example?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I would expect 600 uA to typically be caused by the HFCLK running and/or UART.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Jørgen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>