<?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>nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/43301/nrf_mesh_disable-function-changed-since-sdk-for-mesh-v3-1-0</link><description>Hi, 
 I was wanting to know if this function has been changed since mesh SDK v2.2.1? It appears to not behave quite the same. When I call it, I think the mesh does not entirely get disabled as there is still something like ~8mA of current draw, when before</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 16 Sep 2020 13:39:55 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/43301/nrf_mesh_disable-function-changed-since-sdk-for-mesh-v3-1-0" /><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/269898?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2020 13:39:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:87a5f4d2-48c8-4251-9b81-595dd8dfafb5</guid><dc:creator>ValentinL</dc:creator><description>&lt;p&gt;here is the link to the new post ! Waiting for your answer :)&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/65997/low-power-mesh-node-based-on-lightswitch-example-by-using-proxy_stop-and-mesh_disable"&gt;devzone.nordicsemi.com/.../low-power-mesh-node-based-on-lightswitch-example-by-using-proxy_stop-and-mesh_disable&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/269894?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2020 13:30:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7175f3b4-5d9c-49bf-9c9c-b04c1f7da307</guid><dc:creator>ValentinL</dc:creator><description>&lt;p&gt;Ok ty I am creating a new post therefore ! thx&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/269885?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2020 13:05:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c8c28b66-eff7-433c-8def-5b0fe6d3f1bc</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi ValentinL,&amp;nbsp;&lt;br /&gt;Please create a new case for your question. This is a very old thread.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Btw, in your screenshot it looks like the radio is still running, doing some advertising. Please zoom in and double check if it&amp;#39;s advertising packet (sending on 3 channels)&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/269859?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2020 12:12:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d000471f-3c99-4ad7-bf98-26f55f4b461b</guid><dc:creator>ValentinL</dc:creator><description>&lt;p&gt;I think I have an error when I do ythe NRF_CLOCK-&amp;gt;TASKS_HFCLKSTOP=1; That&amp;#39;s probably why I have a wrong consumption. Where do I have to add this line in my code to don&amp;#39;t get this error (assert) ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/269819?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2020 10:30:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b5965f4f-e4d9-41a0-8c14-056332676eea</guid><dc:creator>ValentinL</dc:creator><description>&lt;p&gt;I don&amp;#39;t use the LPN code (experimental). I use the &amp;quot;Lightswitch server&amp;quot; instead. Is it not possible to get very low mesh sleep power with this code as starting point ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/269817?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2020 10:27:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7d72046d-b035-4bcf-993a-f612b0fe36e5</guid><dc:creator>ValentinL</dc:creator><description>&lt;p&gt;Hello, &lt;/p&gt;
&lt;p&gt;I work with SDK for mesh 4.0.0. I use the example code &amp;quot;light switch server&amp;quot;. I just want to disable the Mesh stack and enable it when I want. When the mesh is disable I want sleep current so approx 4uA.&lt;br /&gt;I measure the current with the PPK on a DK.&lt;br /&gt;As you can see in the attached code. I made as recommended to disable the mesh. but I still get average +- 110 uA due to some peaks (see image attached, first image)).&lt;br /&gt;If I add&amp;nbsp; NRF_CLOCK-&amp;gt;TASKS_HFCLKSTOP=1; NRF_UART0-&amp;gt;TASKS_STOPRX= 1;&lt;br /&gt;I get no peaks but the average current increase to +- 400uA ... (see attached, second image).&lt;/p&gt;
&lt;p&gt;Can someone help me please !? I don&amp;#39;t know what to do and this is very critical for my low power application !!&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;int main(void)
{
    initialize();
    start();
    //nrf_delay_ms(3000);
    uint32_t retval;
    retval = proxy_stop();
    //SEGGER_RTT_printf(0, &amp;quot;retval_stopproxy %d\n&amp;quot;,retval);
    if (retval == NRF_SUCCESS)
    {
        retval = nrf_mesh_disable();
        //NRF_CLOCK-&amp;gt;TASKS_HFCLKSTOP=1;
        //NRF_UART0-&amp;gt;TASKS_STOPRX= 1;
    }
    //SEGGER_RTT_printf(0, &amp;quot;mesh_disable %d\n&amp;quot;,retval);
    //scanner_radio_stop();

    for (;;)
    {
        (void)sd_app_evt_wait();
        //__WFE();
    }
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/image_5F00_consumption.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1600252027263v1.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/184952?ContentTypeID=1</link><pubDate>Thu, 02 May 2019 14:27:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b5a947da-b5b8-48c5-a3ff-829b4cb3d9c9</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gordie,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Yes it&amp;#39;s correct.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/184655?ContentTypeID=1</link><pubDate>Wed, 01 May 2019 00:43:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7089336e-cd5a-4b1b-8693-b459ec82156c</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;Hi Hung, so just to confirm, after applying the suggested patch to bearer_handler.c, the correct way of enabling and disabling the mesh is now:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;// The proper sequence to disable mesh (immediately) is: 

uint32_t retval = proxy_stop();

if (retval == NRF_SUCCESS)
{
	//scanner_disable(); // not needed
	retval = nrf_mesh_disable();
}
__LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;Disabling mesh: status: %d\n&amp;quot;, retval);



// And to enable: 

//scanner_enable(); // not needed

uint32_t retval = proxy_enable();

if (retval == NRF_SUCCESS)
{
	retval = proxy_start();
}

if (retval == NRF_SUCCESS)
{
	retval = nrf_mesh_enable();
}

__LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;Enabling  mesh: status: %d\n&amp;quot;, retval);&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/181689?ContentTypeID=1</link><pubDate>Thu, 11 Apr 2019 15:32:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aaf9a8bb-c5b6-4a88-9c7a-7da3b4b31c2d</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Thanks for verifying. UART needs to be turned off by the bootloader before switching to application.&lt;/p&gt;
&lt;p&gt;I guess we didn&amp;#39;t really&amp;nbsp;pay much attention on power consumption when making the bootloader as it&amp;#39;s a mesh application and usually main powered. I have reported this issue internally.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/181429?ContentTypeID=1</link><pubDate>Thu, 11 Apr 2019 00:10:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:39365f43-0773-4a31-8734-3a11e70d68b8</guid><dc:creator>Justin</dc:creator><description>&lt;p&gt;i added the&amp;nbsp;code into the bootloader, at the start of&amp;nbsp;&lt;em&gt;bootloader_util_app_start().&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;this appears to fix the issue, as the device goes to ~15uA as expected.&lt;/p&gt;
&lt;p&gt;DFU was still functional.&lt;/p&gt;
&lt;p&gt;we have a sensor on our board that&amp;nbsp;draws a bit of current, so that is why&amp;nbsp;the current might be&amp;nbsp;higher than you expect.&lt;/p&gt;
&lt;p&gt;thanks!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/181326?ContentTypeID=1</link><pubDate>Wed, 10 Apr 2019 12:36:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dab69f09-4af7-4953-8cea-c8629006f7e1</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;It seems that we forgot to turn off some of the peripheral inside the bootloader before switching to the application.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Could you try adding&amp;nbsp;&lt;/p&gt;
&lt;p&gt;NRF_CLOCK-&amp;gt;TASKS_HFCLKSTOP=1;&lt;br /&gt;NRF_UART0-&amp;gt;TASKS_STOPRX= 1;&lt;/p&gt;
&lt;p&gt;after you disable mesh and check if the current is dropped down to few uA.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Please also check if you still can do DFU after you wake up.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;15uA is still high, I&amp;#39;m not sure why your board has that number. Please try to test put CPU to sleep without initialize mesh or&amp;nbsp; before doing anything in main().&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/181192?ContentTypeID=1</link><pubDate>Tue, 09 Apr 2019 23:56:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6b29fcc5-34da-41b4-97f0-dabc1ac40d19</guid><dc:creator>Justin</dc:creator><description>&lt;p&gt;the code provided works.&lt;/p&gt;
&lt;p&gt;however, it seems that that our issue is coming from the mesh bootloader.&lt;/p&gt;
&lt;p&gt;when our device is programmed to use the mesh bootloader (and SD and application), sleep current is ~450uA.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;when our device is programmed with only SD and application, sleep current is ~15uA, as expected/desired.&lt;/p&gt;
&lt;p&gt;i commented out `nrf_mesh_dfu_init` to see if that was causing the extra current consumption, but even without initializing dfu, the device still measured 450uA.&lt;br /&gt;&lt;br /&gt;Do you have an explanation or suggestion for the bootloader current consumption?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I can make this into a new post if you would prefer.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/180865?ContentTypeID=1</link><pubDate>Mon, 08 Apr 2019 20:32:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f3ffb5ba-f4a8-421e-81d1-af8388fa8ec3</guid><dc:creator>Justin</dc:creator><description>&lt;p&gt;thanks, i will give this a try and report back!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/180061?ContentTypeID=1</link><pubDate>Wed, 03 Apr 2019 14:51:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ca377161-4a5d-4e86-a7ee-1aa5760915d8</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi guys,&amp;nbsp;&lt;br /&gt;Strange that calling &lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; scanner_disable() &lt;/em&gt;didn&amp;#39;t help for you.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;We have a new patch that solves the issue more thoroughly that you can try.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Apply this patch for bearer_handler.c:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;--- a/mesh/bearer/src/bearer_handler.c
+++ b/mesh/bearer/src/bearer_handler.c
@@ -319,10 +319,14 @@ uint32_t bearer_handler_stop(bearer_handler_stopped_cb_t cb)
         /* Will stop the timeslot when the current action ends. */
         m_stopped_callback = cb;
         m_stopped = true;
-        if (timeslot_session_is_active())
+        if (timeslot_is_in_ts())
         {
             timeslot_trigger();
         }
+        else if (timeslot_session_is_active())
+        {
+            timeslot_stop();
+        }
         else
         {
             notify_stop();&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;And in&amp;nbsp;bearer_handler_timer_irq_handler() replace&amp;nbsp;action_switch(); with&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt; if (m_stopped)
        {
            timeslot_stop();
        }
        else
        {
            action_switch();
        }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Calling&amp;nbsp;timeslot_stop(); is not suggested as it may cause an assertion if the bearer has not been stopped before that. So it&amp;#39;s the other way around.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;(This should not be combined with scanner_disable()workaround )&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/179841?ContentTypeID=1</link><pubDate>Tue, 02 Apr 2019 17:01:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:79e49b21-09ba-47bb-b2bc-133de3b27fc4</guid><dc:creator>Justin</dc:creator><description>&lt;p&gt;what is your current draw when &amp;quot;sleeping&amp;quot;?&lt;br /&gt;even with your example code implemented, i&amp;#39;m still seeing ~&lt;strong&gt;450uA.&amp;nbsp;&amp;nbsp;&lt;/strong&gt;there must be some other module keeping part of the mesh awake.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/179615?ContentTypeID=1</link><pubDate>Mon, 01 Apr 2019 22:33:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3669491a-24ba-4ab4-8167-2eb813630098</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;This is how I do it in Mesh SDK v 3.1, and it works reliably for me. I have not received confirmation from Nordic if this is how it is supposed to be done.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/179614?ContentTypeID=1</link><pubDate>Mon, 01 Apr 2019 22:32:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fab526d7-a524-4968-ac53-fca4332469c8</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;The code posted above does not work for me either, the way I do it is (psuedo code):&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;// Entering &amp;quot;Sleep&amp;quot; mode

//stop all active app timers here (if used)
timeslot_stop(); // Stop the current timeslot (Work around to enter the low power state much faster).
while(!nrf_mesh_disable());


// Exiting &amp;quot;Sleep&amp;quot; mode

// start app timers here (if used)
timeslot_restart(TIMESLOT_PRIORITY_LOW);
while(!nrf_mesh_enable());

&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Another thing to check is the SAADC, if you use it. Make sure you are disabling/sleeping it correctly.&amp;nbsp;This can&amp;nbsp;have a large effect on current draw.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/179613?ContentTypeID=1</link><pubDate>Mon, 01 Apr 2019 22:21:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:95f698ae-154e-42c0-bc96-8846ff15a956</guid><dc:creator>Justin</dc:creator><description>&lt;p&gt;I am also experiencing this issue.&lt;br /&gt;I have a device in which mesh is completely disabled to save power.&lt;br /&gt;It wakes up at a specified interval to transmit data, then goes back to sleep.&lt;/p&gt;
&lt;p&gt;In the old (2.x) mesh SDK, when calling&amp;nbsp;&lt;em&gt;nrf_mesh_disable()&amp;nbsp;&lt;/em&gt;to put the device to &amp;quot;sleep&amp;quot;, I measured around &lt;strong&gt;15uA&lt;/strong&gt;.&amp;nbsp; This is comparable to our BLE code version of the device (same hardware).&lt;/p&gt;
&lt;p&gt;Current draw measures around &lt;strong&gt;450uA&lt;/strong&gt; with the new (3.1) mesh SDK.&lt;br /&gt;The code&amp;nbsp;posted above does not reduce the current consumption.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Are there other modules enabled that need to be turned off?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/172655?ContentTypeID=1</link><pubDate>Sun, 24 Feb 2019 22:14:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9660a896-971a-4481-ab38-dd4f2bb00366</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;Okay, I will try that and then post the code here.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/172505?ContentTypeID=1</link><pubDate>Fri, 22 Feb 2019 12:58:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e74ad141-9989-4f02-9c56-d71f141169d7</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;It&amp;#39;s pretty strange you received this issue. Could you try to reproduce it with one of our example, for example the lightswitch server ?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/171997?ContentTypeID=1</link><pubDate>Wed, 20 Feb 2019 01:01:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:06d2c846-f382-4831-a59c-dae2f7723545</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Thanks for the reply. I tried this, but when I try and disable the mesh in this fashion, I get an assert in timer_scheduler.c, line 205:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;void timer_sch_abort(timer_event_t* p_timer_evt)
{
    NRF_MESH_ASSERT_DEBUG(bearer_event_in_correct_irq_priority()); //assert here
    NRF_MESH_ASSERT(p_timer_evt != NULL);
    remove_evt(p_timer_evt);
    p_timer_evt-&amp;gt;p_next = NULL;
    setup_timeout(timer_now());
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve come across this assert in the past before, and the only way of fixing it was to call the function causing it&amp;nbsp;from a different context (not ie:main). Is this more or less correct? Is it safe to call from a timer handler?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/170818?ContentTypeID=1</link><pubDate>Wed, 13 Feb 2019 10:16:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d0b84ac4-bd9d-4a7f-b99c-0c0ae8d2ef6f</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gordie,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Sorry for late response, I was checking with our expert. The proper sequence to disable mesh (immediately) is:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;uint32_t retval = proxy_stop();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (retval == NRF_SUCCESS)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; scanner_disable();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;retval = nrf_mesh_disable();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;Disabling mesh: status: %d\n&amp;quot;, retval);&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;And to enable:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; scanner_enable();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t retval = proxy_enable();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (retval == NRF_SUCCESS)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retval = proxy_start();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (retval == NRF_SUCCESS)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retval = nrf_mesh_enable();&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;Enabling&amp;nbsp; mesh: status: %d\n&amp;quot;, retval);&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/169387?ContentTypeID=1</link><pubDate>Mon, 04 Feb 2019 22:54:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aca9dbd2-341b-43eb-b7ce-14c1e208e954</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;Hmm, calling timeslot_stop() straight after nrf_mesh_disable() seems to achieve what I want (entering low power state much faster). I can then call nrf_mesh_enable() and everything works as normal again. Is it safe-ish to use timeslot_stop() in this manner?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/169386?ContentTypeID=1</link><pubDate>Mon, 04 Feb 2019 22:46:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e908d81-83a7-49bd-8890-2b34c80e424b</guid><dc:creator>gordie</dc:creator><description>&lt;p&gt;Is there anyway to end the timeslot earlier than 10s? Its just that in mesh sdk 2.2.0, the nrf_mesh_disable() function caused the device to enter the lower power state much faster (less than one second)?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf_mesh_disable() function changed since SDK for Mesh V3.1.0?</title><link>https://devzone.nordicsemi.com/thread/169293?ContentTypeID=1</link><pubDate>Mon, 04 Feb 2019 12:38:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d1615592-5293-4e0f-95f2-6bda33cfb741</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Gordie,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;As far as I can tell, the scanner will be automatically disabled after the timeslot has been ended (that what the&amp;nbsp;&lt;span&gt;nrf_mesh_disable() does) . So when testing here I can see that after I call&amp;nbsp;nrf_mesh_disable() the device stayed in high current draw for a little while (about 10s before dropping the current down to the range of uA. This matches with the timeslot being stopped.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>