<?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>1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/19511/1-4ma-in-sleep-on-custom-board</link><description>We have a custom board using the ISP130301 BLE module (containing a nRF51822, 16MHz xtal, 32kHz xtal). Our apps work fine (gcc, SDK6, S110v7) except for high system on idle power. We are measuring about 1.4mA in sleep using a variation of the system_on_wakeup_on_gpio</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Sat, 18 Feb 2017 02:00:30 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/19511/1-4ma-in-sleep-on-custom-board" /><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75817?ContentTypeID=1</link><pubDate>Sat, 18 Feb 2017 02:00:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:93236f75-1a9e-49a5-ba8e-74f2128a3646</guid><dc:creator>pbljung</dc:creator><description>&lt;p&gt;We found and fixed the problem. Pin U9.25 VDD_PA is an output on the BLE module and should be floating, but the schematics and layout tie it to VDD_BAR. Board re-work to isolate that pin reduces the idle current from 1.3mA to 20uA when running ble_app_hrs.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75813?ContentTypeID=1</link><pubDate>Tue, 14 Feb 2017 12:08:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bc891c5a-989b-49c8-a66f-518afcc86fce</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;It&amp;#39;s really hard to say what could be wrong here. If the same components consume a lot less current on a solderless breadboard than on the pcb, I guess we have to figure out what the difference is. If you want you can send us some samples so we can do measurements here. Maybe the best thing now is to open up a case in the Mypage support portal, so you can share your code, pcb layout and we can give you information on how to send samples here for further investigation. &lt;a href="http://www.nordicsemi.com/eng/Support-Community/Contact-Support-Team"&gt;www.nordicsemi.com/.../Contact-Support-Team&lt;/a&gt;. Please link to this Devzone thread.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75816?ContentTypeID=1</link><pubDate>Fri, 10 Feb 2017 23:06:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a295630c-2bb2-45c4-b2ce-9190611b514d</guid><dc:creator>pbljung</dc:creator><description>&lt;p&gt;Hi Stian, I ran&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;int main(void){
    for(;;) __WFE();
} 
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;and still measure 1.4mA current on our rigid-flex PCB. I measure the same idle current on multiple rigid-flex boards so it is a systemic problem.&lt;/p&gt;
&lt;p&gt;I physically cut the flex to remove other circuitry to try to identify what part of the board was pulling current but the idle current does not change. The attached schematic contains the BLE module, regulator, charger, flash memory which uses 1.4mA in idle. Other GPIO goes to the now removed circuitry.&lt;/p&gt;
&lt;p&gt;A solderless breadboard with the same components (but no Segger) measures 11.6uA in idle. Current for individual components in idle: BLE module 3.3uA, regulator 1.6uA, charger ~0, flash 8uA.&lt;/p&gt;
&lt;p&gt;Our app and Nordic example apps run fine on the rigid-flex board, except that idle current is very high for all apps.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75815?ContentTypeID=1</link><pubDate>Fri, 10 Feb 2017 12:18:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b0587b88-047b-4b11-bc2a-f0110d7ef7c6</guid><dc:creator>butch</dc:creator><description>&lt;p&gt;This is after POR so the radio should be in a reset configuration and state.  But let me test some more, I discovered another issue that might be the cause of my symptoms.  In other words, once I fix that issue, I will try to reproduce whether clearing NRF_RADIO-&amp;gt;POWER really has any effect.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75814?ContentTypeID=1</link><pubDate>Fri, 10 Feb 2017 12:00:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5b83c94f-2f80-4e4e-9e22-a4e5d6c103a1</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;Okay, seems like resetting the radio with the POWER register before you go to sleep is a good idea then. Are you able to send me any code so I can try to figure out what state the radio is in when it is draining current?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75811?ContentTypeID=1</link><pubDate>Thu, 09 Feb 2017 15:34:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6bd15243-7001-4c1a-a0e8-8c37199f5262</guid><dc:creator>butch</dc:creator><description>&lt;p&gt;Yes, the radio state is distinct from the NRF_RADIO-&amp;gt;POWER register.  Yes, what you say about the NRF_RADIO-&amp;gt;POWER seems to correspond to the solar beacon example code (using that register to reset the radio configuration.  And my earlier statement was wrong, that code does NOT clear the bit before sleeping, but leaves it set permanently.)  Re my reported symptoms after clearing the bit early in the boot sequence on the nrf52, I did not experience the same on the nrf51.  Re Vcc rise time, my app is like the solar beacon, a load switch switches power to the nrf52 at 1.9V (with a quick rise time) but thereafter Vccswitched continues to rise slowly as the nrf52 sleeps and the solar cell provides current.  Before I changed the code to clear the POWER bit early, something was draining the current.  I definitely need to retest, but don&amp;#39;t have an oscilloscope.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75808?ContentTypeID=1</link><pubDate>Thu, 09 Feb 2017 13:35:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d35d9a7-ef58-4610-8123-20732b7859a2</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;The POR state for the radio is DISABLED. If you then start the radio it is important to disable the radio before going to sleep through the TASKS_DISABLE (the SoftDevice will handle this). This is however not the same as the POWER register, although you could use the POWER register to reset the radio peripheral. Despite its name, the POWER register does not &amp;quot;power&amp;quot; up anything on the radio peripheral, it is more like an enable function, if that makes sense. But please keep me updated on what you figure out, if you find something that contradicts what I&amp;#39;m saying we need to investigate that further.&lt;/p&gt;
&lt;p&gt;You say something about VCC is climbing towards 3.6V. The maximum specified rise time (t_R_VDD, Chapter 7 in nRF51822 PS) is 100ms. If the rise time is greater than this the chip will end up in an undefined state.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75812?ContentTypeID=1</link><pubDate>Thu, 09 Feb 2017 12:30:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b8be6aa2-878f-4c7f-be6b-e3da82ff9b8f</guid><dc:creator>butch</dc:creator><description>&lt;p&gt;It seemed to make a difference if I cleared that bit the first thing in main.  My power supply is ultra low, i.e. solar and a capacitor.  Before, Vcc stopped climbing at say 2V (not as designed) and after Vcc climbed towards 3.6V (as designed.) But I not certain yet.  I looked in the Nordic docs for power consumption for the condition: radio is enabled and not active (RX or TX), but I could not find any spec, just something like &amp;quot;doesn&amp;#39;t consume much&amp;quot;.  I also read the source for the Nordic solar beacon on GitHub, and the code does disable the radio before sleeping (but not first thing in main boot sequence.) Surely it is important for power saving to disable the radio using that register?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75810?ContentTypeID=1</link><pubDate>Thu, 09 Feb 2017 11:48:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:36c0fc59-10ff-4512-82f5-84c630640289</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;Did you see any difference in current consumption? The POWER register set to 1 shouldn&amp;#39;t have an impact on this.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75809?ContentTypeID=1</link><pubDate>Wed, 08 Feb 2017 17:16:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1b221d04-8974-4b0c-96e6-f07089b223dd</guid><dc:creator>butch</dc:creator><description>&lt;p&gt;I just discovered that the radio is powered on after POR reset on both the 51 and 52.  I always assumed most bits were reset to 0, but the docs show NRF_RADIO-&amp;gt;POWER bit 0 resets to 1, i.e. power enabled to the radio.  I haven&amp;#39;t examined the docs re the idle current of the radio.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75807?ContentTypeID=1</link><pubDate>Wed, 08 Feb 2017 11:56:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:affbb06a-6a41-4088-8aef-15d6b3067763</guid><dc:creator>Stian R&amp;#248;ed Hafskjold</dc:creator><description>&lt;p&gt;I doubt that it is debug mode if you tie SWDCLK to ground and reset. Make sure that the chip is reset completely, i.e. that no decoupling caps keeps it on. Could you try to run just the following code to see if that changes anything?&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;int main(void){
    for(;;) __WFE();
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Or even System OFF:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;int main(void){
    NRF_POWER-&amp;gt;SYSTEMOFF = 1;
    for(;;){}
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If I understand you correctly the current consumption seems fine on the pca10028, so then I would guess that it is some issues with any of the external components on your custom board. Could you please post the schematic so we can have a look?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: 1.4mA in sleep on custom board</title><link>https://devzone.nordicsemi.com/thread/75806?ContentTypeID=1</link><pubDate>Tue, 07 Feb 2017 16:40:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dcd2e473-e768-42d3-a1b8-e4bbaf542288</guid><dc:creator>butch</dc:creator><description>&lt;p&gt;I have similar issue on nrf52.  Just some ideas: are you sure you sleep (you could turn on led after the sleep?)  Someone might know what peripheral that current corresponds to.  Have you discharged the bypass caps when unpowering to reset?  Do any of the errata apply?  Can you assert(peripherals off) just before you sleep?  Maybe cut all traces to your external peripherals?  Try another module instance?  I empathize, its a hard problem to debug.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>