<?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>NRF51822 sleep modes and ESB</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/9386/nrf51822-sleep-modes-and-esb</link><description>Hi 
 I am making some low-power wireless sensors powered by coin cells, which will sleep for long intervals between readings/transmits. I am using the micro ESB libraries without a softdevice. Because I want the sensor to wake up without external input</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 28 Sep 2015 09:51:11 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/9386/nrf51822-sleep-modes-and-esb" /><item><title>RE: NRF51822 sleep modes and ESB</title><link>https://devzone.nordicsemi.com/thread/34640?ContentTypeID=1</link><pubDate>Mon, 28 Sep 2015 09:51:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bd29ff23-eee8-45de-b51b-c8aae9444c27</guid><dc:creator>Stefan Birnir Sverrisson</dc:creator><description>&lt;p&gt;Hi Gavin&lt;/p&gt;
&lt;p&gt;I think the solution is to use the 32kHz RTC timer in order to wake up again. The RTC timer requires a 32kHz clock source in order to operate. The clock source can be either the internal 32kHz RC or the 32kHz external crysal. If you have an external crystal, that is most accurate and consumes the least power. If you use the RC you need to calibrate it.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The current consumption of RTC + 32kHz crystal is typically &amp;lt;1uA&lt;/li&gt;
&lt;li&gt;The current consumption of RTC + 32kHz RC is typically &amp;lt;10uA&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You must manually start the 32kHz clock source before using the RTC, which is either RTC0 or RTC1. You can see a code example e.g. &lt;a href="https://github.com/NordicSemiconductor/nrf51-ADC-examples/blob/master/rtc0-triggering-adc-sample/main.c"&gt;here&lt;/a&gt;.  Look at the lfclk_config() and rtc_config() functions.&lt;/p&gt;
&lt;p&gt;You can set a CC compare register to get an event after a certain time. You can set up the RTC interrupt so that the CPU wakes up, then start the HFCLK before starting the radio.&lt;/p&gt;
&lt;p&gt;You can also set up a PPI channel to start the HFCLK on the RTC CC compare event, similar to what is done in the linked example.&lt;/p&gt;
&lt;p&gt;More on LFCLK &lt;a href="https://devzone.nordicsemi.com/question/953/what-low-frequency-clock-sources-can-i-use/"&gt;here&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>