<?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>nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/89408/nrf5-calendar-example-softdevice-invalid-memory-access</link><description>I try to integrate https://github.com/NordicPlayground/nrf5-calendar-example into Keil project. But the following error messages shown when accessing NRF_CLOCK. 
 error messages 
 nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS 
 source code </description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 29 Jun 2022 01:30:29 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/89408/nrf5-calendar-example-softdevice-invalid-memory-access" /><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374647?ContentTypeID=1</link><pubDate>Wed, 29 Jun 2022 01:30:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1ea7bc0b-e468-48f2-bd6b-82dd7f4726d4</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;Thanks for your great support! Time is correct after changing nrf_cal_set_time() as follows.&lt;/p&gt;
&lt;p&gt;void nrf_cal_set_time(uint32_t year, uint32_t month, uint32_t day, uint32_t hour, uint32_t minute, uint32_t second) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_LOG_DEBUG(&amp;quot;nrf_cal_set_time(%u, %u, %u, %u, %u, %u) e\n&amp;quot;, year, month, day, hour, minute, second);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static time_t uncal_difftime, difftime, newtime;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_struct.tm_year = year - 1900;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_struct.tm_mon&amp;nbsp; = month - 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_struct.tm_mday = day;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_struct.tm_hour = hour;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_struct.tm_min&amp;nbsp; = minute;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; time_struct.tm_sec&amp;nbsp; = second;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; newtime = mktime(&amp;amp;time_struct);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;TASKS_CLEAR = 1; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Calculate the calibration offset &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (m_last_calibrate_time != 0) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; difftime = newtime - m_last_calibrate_time;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uncal_difftime = m_time - m_last_calibrate_time;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_calibrate_factor = (float)difftime / (float)uncal_difftime;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Assign the new time to the local time variables&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_time = m_last_calibrate_time = newtime;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //_nrf_cal_print_time_t(newtime);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gCalTimeSet = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_LOG_DEBUG(&amp;quot;nrf_cal_set_time(%u, %u, %u, %u, %u, %u) x\n&amp;quot;, year, month, day, hour, minute, second);&lt;br /&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Log messages.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;lt;debug&amp;gt; app: nrf_cal_set_time(2022, 6, 29, 9, 24, 49) x&lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;info&amp;gt; app: &lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;debug&amp;gt; app: Uncalibrated time:&amp;nbsp;&amp;nbsp; &amp;nbsp;06/29/22 - 09:24:49&lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;debug&amp;gt; app: Calibrated time:&amp;nbsp;&amp;nbsp; &amp;nbsp;06/29/22 - 09:24:49&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374503?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 10:45:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:829cfe2a-b857-4bad-b1cd-67d97c330d59</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;The month is off by one because time.h counts the first month from zero.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374495?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 10:06:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:10dc9b99-3542-48b5-b828-0076ba4b034c</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;After I modified nrf_cal_init() as follows. Time is almost correct except month.&lt;/p&gt;
&lt;p&gt;void nrf_cal_init(void) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; gCalTimeSet&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;// Configure the RTC for 1 minute wakeup (default)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;PRESCALER&amp;nbsp;&amp;nbsp; = 0xFFF;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;EVTENSET&amp;nbsp;&amp;nbsp;&amp;nbsp; = RTC_EVTENSET_COMPARE0_Msk;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;INTENSET&amp;nbsp;&amp;nbsp;&amp;nbsp; = RTC_INTENSET_COMPARE0_Msk;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;CC[0]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = m_rtc_increment * 8;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;TASKS_START = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NVIC_SetPriority(CAL_RTC_IRQn, CAL_RTC_IRQ_Priority);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NVIC_EnableIRQ(CAL_RTC_IRQn);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nrf_cal_set_callback(nrf_cal_updated, 4);&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;Log messages.&lt;/p&gt;
&lt;p&gt;&amp;lt;debug&amp;gt; app: nrf_cal_set_time(2022, 6, 28, 18, 0, 14)&lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;info&amp;gt; app: &lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;debug&amp;gt; app: Uncalibrated time:&amp;nbsp;&amp;nbsp; &amp;nbsp;07/28/22 - 18:00:14&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374489?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 09:56:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:eb185432-7b0f-4697-bc2d-84ad96807e7a</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/53380.sdk_5F00_config.h"&gt;devzone.nordicsemi.com/.../53380.sdk_5F00_config.h&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374486?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 09:30:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ab673d1d-1e61-4604-a9f8-a633043da972</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/4657.nrf_5F00_calendar.h"&gt;devzone.nordicsemi.com/.../4657.nrf_5F00_calendar.h&lt;/a&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/6888.nrf_5F00_calendar.c"&gt;devzone.nordicsemi.com/.../6888.nrf_5F00_calendar.c&lt;/a&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nrf_5F00_calendar_5F00_time_5F00_incorrect.txt"&gt;devzone.nordicsemi.com/.../nrf_5F00_calendar_5F00_time_5F00_incorrect.txt&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374485?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 09:28:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e65e5305-6a4b-440b-9e42-0aa9dd077f33</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;No assert now. But time is not correct after calling nrf_cal_set_time(). The log message is as follows.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;lt;debug&amp;gt; app: 2022-6-28 17:24:45&lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;debug&amp;gt; app: nrf_cal_set_time(2022, 6, 28, 17, 24, 45&lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;info&amp;gt; app: &lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;debug&amp;gt; app: Uncalibrated time:&amp;nbsp;&amp;nbsp; &amp;nbsp;07/28/22 - 17:39:40&lt;br /&gt;&amp;nbsp;0&amp;gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374484?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 09:22:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b10049da-c478-475b-964c-b49957f42fee</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Are you still getting the assert, or does it work now?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374471?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 08:22:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1d647d37-1237-489e-863d-13f846f060fa</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;Thanks for your suggetion. I have changed&amp;nbsp;nrf_calendar.h as follows.&lt;/p&gt;
&lt;p&gt;// Change the following defines to change the RTC timer used or the interrupt priority&lt;br /&gt;#define CAL_RTC&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;&amp;nbsp; NRF_RTC2&lt;br /&gt;#define CAL_RTC_IRQn&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RTC2_IRQn&lt;br /&gt;#define CAL_RTC_IRQHandler&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RTC2_IRQHandler&lt;br /&gt;#define CAL_RTC_IRQ_Priority&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374467?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 08:03:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3fbdbea2-932c-4bec-b900-7c1eebba27d7</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Yes, RTC0 is reserved to the Softdevice as well, so you need to select another RTC instance.&lt;/p&gt;
&lt;p&gt;In nrf_calendar.h, change:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;// Change the following defines to change the RTC timer used or the interrupt priority
#define CAL_RTC                 NRF_RTC0
#define CAL_RTC_IRQn            RTC0_IRQn
#define CAL_RTC_IRQHandler      RTC0_IRQHandler
#define CAL_RTC_IRQ_Priority    3&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;To:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;// Change the following defines to change the RTC timer used or the interrupt priority
#define CAL_RTC                 NRF_RTC2
#define CAL_RTC_IRQn            RTC2_IRQn
#define CAL_RTC_IRQHandler      RTC2_IRQHandler
#define CAL_RTC_IRQ_Priority    6&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374465?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 07:58:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:66e67ee1-d27d-4ba8-87a7-b0cb6277d426</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;I have removed NRF_CLOCK related code from nrf_cal_init().Do you have any suggestion about how to change CAL_RTC related code to Softdevice APIs?&lt;/p&gt;
&lt;p&gt;void nrf_cal_init(void) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_LOG_DEBUG(&amp;quot;nrf_cal_init() e\n&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Configure the RTC for 1 minute wakeup (default)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;PRESCALER = 0xFFF;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;EVTENSET = RTC_EVTENSET_COMPARE0_Msk;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;INTENSET = RTC_INTENSET_COMPARE0_Msk;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;CC[0] = m_rtc_increment * 8;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;TASKS_START = 1;&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374458?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 07:37:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:99059f21-eafb-4f7e-a8d8-11cbb4fd31e5</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;You don&amp;#39;t need to start the LF clock either as the Softdevice does it when you enable it. So uou can remove this from cal_init():&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;    NRF_CLOCK-&amp;gt;LFCLKSRC = CLOCK_LFCLKSRC_SRC_Xtal &amp;lt;&amp;lt; CLOCK_LFCLKSRC_SRC_Pos;
    NRF_CLOCK-&amp;gt;EVENTS_LFCLKSTARTED = 0;
    NRF_CLOCK-&amp;gt;TASKS_LFCLKSTART = 1;
    while(NRF_CLOCK-&amp;gt;EVENTS_LFCLKSTARTED == 0);&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374454?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 07:19:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4cf0bd52-40ed-490e-b51d-1453a90f361a</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;Do you have any suggestion about how to change NRF_CLOCK and CAL_RTC related code to Softdevice APIs?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374452?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 07:16:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6cecce0a-7a4b-40b2-ae9d-7230a54ee993</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;Thanks for your reply! I have changed above code to the following code.&lt;/p&gt;
&lt;p&gt;const ret_code_t errCode = sd_clock_hfclk_request();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (errCode != NRF_SUCCESS) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_LOG_WARNING(&amp;quot;sd_clock_hfclk_request() failed\n&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t hfclkIsRunning = 0;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (!hfclkIsRunning) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; APP_ERROR_CHECK(sd_clock_hfclk_is_running(&amp;amp;hfclkIsRunning) );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p&gt;Now it hangs at nrf_cal_init() as the following error messages.&lt;/p&gt;
&lt;p&gt;&amp;lt;debug&amp;gt; app: nrf_cal_init() e&lt;br /&gt;&amp;nbsp;0&amp;gt; &lt;br /&gt;&amp;nbsp;0&amp;gt; &amp;lt;error&amp;gt; app: SOFTDEVICE: INVALID MEMORY ACCESS&lt;/p&gt;
&lt;p&gt;void nrf_cal_init(void) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_LOG_DEBUG(&amp;quot;nrf_cal_init() e\n&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Select the 32 kHz crystal and start the 32 kHz clock&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_CLOCK-&amp;gt;LFCLKSRC = CLOCK_LFCLKSRC_SRC_Xtal &amp;lt;&amp;lt; CLOCK_LFCLKSRC_SRC_Pos;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_CLOCK-&amp;gt;EVENTS_LFCLKSTARTED = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_CLOCK-&amp;gt;TASKS_LFCLKSTART = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(NRF_CLOCK-&amp;gt;EVENTS_LFCLKSTARTED == 0);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NRF_LOG_DEBUG(&amp;quot;1\n&amp;quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Configure the RTC for 1 minute wakeup (default)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;PRESCALER = 0xFFF;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;EVTENSET = RTC_EVTENSET_COMPARE0_Msk;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;INTENSET = RTC_INTENSET_COMPARE0_Msk;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;CC[0] = m_rtc_increment * 8;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CAL_RTC-&amp;gt;TASKS_START = 1;&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374444?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 06:46:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d0d399da-8ceb-4f74-94a9-9d2b43bea846</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;The app does not have write access to the CLOCK peripheral when the Softdevice is enabled, hence the assert (See &lt;span&gt;&lt;a title="Hardware peripherals" href="https://infocenter.nordicsemi.com/topic/sds_s132/SDS/s1xx/sd_resource_reqs/hw_block_interrupt_vector.html?cp=4_7_3_0_6_0"&gt;Hardware peripherals)&lt;/a&gt;&lt;/span&gt;. Instead you have to access it via the provided Softdevice APIs such as &lt;span&gt;&lt;a title="sd_clock_hfclk_request" href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v7.3.0/group___n_r_f___s_o_c___f_u_n_c_t_i_o_n_s.html?cp=4_7_3_1_2_7_2_3#ga3e5afb495a1b0307c749cc268df94a74"&gt;sd_clock_hfclk_request&lt;/a&gt;&lt;/span&gt;(). &lt;/p&gt;
&lt;p&gt;However, it should not be necessary to start HF crystal oscillator for the calendar library, so my suggestion would be to simply not include this code:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;    NRF_CLOCK-&amp;gt;EVENTS_HFCLKSTARTED = 0;
    NRF_CLOCK-&amp;gt;TASKS_HFCLKSTART = 1;
    while(NRF_CLOCK-&amp;gt;EVENTS_HFCLKSTARTED == 0);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374434?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 04:06:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:207ec097-3a80-485d-8051-6332f474e785</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/1805.sdk_5F00_config.h"&gt;devzone.nordicsemi.com/.../1805.sdk_5F00_config.h&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nrf5-calendar-example SOFTDEVICE: INVALID MEMORY ACCESS</title><link>https://devzone.nordicsemi.com/thread/374433?ContentTypeID=1</link><pubDate>Tue, 28 Jun 2022 03:59:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e51ddf86-531e-4c26-9a34-940ee9e1697d</guid><dc:creator>snowuyl</dc:creator><description>&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nrf_5F00_calendar.h"&gt;devzone.nordicsemi.com/.../nrf_5F00_calendar.h&lt;/a&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/nrf_5F00_calendar.c"&gt;devzone.nordicsemi.com/.../nrf_5F00_calendar.c&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>