<?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>Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/35386/application-with-freertos---lowest-possible-current-in-idle</link><description>I am about to start new quite complex project with nRF52 and I thought that maybe it is high time to use freeRTOS port from SDK. As the device is going to be powered with a CR2032 battery I wanted to check how the current consumption looks like. There</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 07 Dec 2018 23:28:20 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/35386/application-with-freertos---lowest-possible-current-in-idle" /><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/160818?ContentTypeID=1</link><pubDate>Fri, 07 Dec 2018 23:28:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f7d0bf89-9d9e-41d6-89c2-b037fabeecd9</guid><dc:creator>grzegorz</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/aryan"&gt;Susheel Nuguru&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;With this modification I have much worse results. Current increased on my board from 1 mA to 7 mA. I think Nordic should&amp;nbsp; really look into current consumption of FreeRTOS apps. Especially ble_app_hrs_freertos which is expected to be an example to follow. But now current consumption is quite high. A lot could be improved. I know that you have seen &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/24733/nrf52840-sdk-14-0-0-and-tickless-idle-freertos---some-suggestions"&gt;nRF52840, SDK 14.0.0 and tickless idle FreeRTOS - some suggestions&lt;/a&gt; topic. Someone did great job there. Current consumption dropped on my board from 1 mA to 100 uA. I hope Nordic does similar optimization of ble_app_hrs_freertos for nRF52832 and newest SDK. Does Nordic plan to release really power optimized FreeRTOS example?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/150108?ContentTypeID=1</link><pubDate>Mon, 24 Sep 2018 15:57:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:34dacd39-e362-4d38-9d4a-af4c8bfc27e2</guid><dc:creator>WestCoastDaz</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/members/schef"&gt;schef&lt;/a&gt; The current consumption decrease you highlighted here was due to the UART not running since you disabled logging.&amp;nbsp; By the SDK examples have UART based logging enabled by default and in my experience the UART consumes ~ 400uA.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/143224?ContentTypeID=1</link><pubDate>Tue, 07 Aug 2018 12:41:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7f62b9be-5f81-48e9-a6c7-cc77442f8258</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;I have investigated more i have found out that the solution by disabling NRF_LOG_ENABLED solved the current consumption issue. I was trying to find why log was consuming power by enabling NRF_LOG_ENABLED, set the NRF_LOG_DEFERRED to 0 and removing the m_logger_thread and it did decrease but then i got some HARDFAULT. I guess it was related by printing in the interrupt?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here are the results with the NRFFOSDK-11174 set to 1 and NRF_LOG_ENABLED 0:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ble_app_hrs_freertos&lt;/strong&gt;:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - with adv active: 150uA&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - after adv timeout: 9uA&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/143070?ContentTypeID=1</link><pubDate>Mon, 06 Aug 2018 15:20:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:80374c5b-977f-41a9-b300-99770de28a3c</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;Hi guys i have tried the solution you have proposed with commenting out `#if 0` and the result is much worse on my custom nrf52832 board when advertising.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ble_app_hrs_freertos:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- Without modification:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - with adv active: 850uA&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - after adv timeout: 8uA&lt;/p&gt;
&lt;p&gt;&amp;nbsp;- With modification:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - with adv active: 6mA&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - after adv timeout: 8uA&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ble_app_hrs:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - with adv active: 525uA&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - after adv timeout: 8uA&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ble_app_hrs (sdk_14.2):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - with adv active: 534uA&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - after adv timeout: 8uA&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;my_custom_app (sdk_14.2):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - with adv active: 84uA&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - without adv: 54uA&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not sure why my custom app consumes only 84uA and ble_app_hrs more and why the implementation with RTOS consumes double the without.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/136454?ContentTypeID=1</link><pubDate>Sun, 17 Jun 2018 18:57:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:25f89f26-59e7-410a-8eda-20c5e2b7e4c6</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;Yes, sounds about right&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/136204?ContentTypeID=1</link><pubDate>Thu, 14 Jun 2018 14:22:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c0fce2b5-7dee-470b-8585-f442e0fb0cfe</guid><dc:creator>Al Bundy</dc:creator><description>&lt;p&gt;Dear @Aryan,&lt;/p&gt;
&lt;p&gt;I am using Rigol oscilloscope and&amp;nbsp;&lt;a href="https://www.eevblog.com/projects/ucurrent/"&gt;uCurrent GOLD&lt;/a&gt;&amp;nbsp;to measure the actual current consumption.&lt;/p&gt;
&lt;p&gt;I have done your simple test and the result looks really promising. On the range of 1mV/uA I do not see any DC base. To do tests on 1mV/nA I need to do some application adjustments cause there will be 10k resistor in series with battery.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Can you confirm me that what I should measure in idle state is something about 2-3 uA?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Application with FreeRTOS - lowest possible current in idle.</title><link>https://devzone.nordicsemi.com/thread/136183?ContentTypeID=1</link><pubDate>Thu, 14 Jun 2018 13:05:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:01bc8a14-92cb-4a21-aa41-12af5ebd682a</guid><dc:creator>Susheel Nuguru</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Not sure how you are calculating the base current.&lt;/p&gt;
&lt;p&gt;But can you do a simple idle test with the following change in SDK\external\freertos\portable\CMSIS\port_cmsis_systick.c file&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;//#if 0  // With FreeRTOS sd_app_evt_wait increases power consumption with FreeRTOS compared to _WFE (NRFFOSDK-11174)
#ifdef SOFTDEVICE_PRESENT
            if (nrf_sdh_is_enabled())
            {
                uint32_t err_code = sd_app_evt_wait();
                APP_ERROR_CHECK(err_code);
            }
            else
#endif
//#endif // (NRFFOSDK-11174)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Notice that i have commented out now the #if 0 line. If you get better results, then i will remove them and check that in the SDK.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>