<?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>Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/30765/softdevice-assert-id-0x1-pc-1089e-info-0x0</link><description>Our product uses non-connectable/undirected advertising, where advertisement packets are sent every 1 minute for 500ms time. For that we are using FreeRTOS timers to start/stop advertisement.The problem is that randomly either right after the advertisement</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 20 Apr 2020 04:43:11 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/30765/softdevice-assert-id-0x1-pc-1089e-info-0x0" /><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/245413?ContentTypeID=1</link><pubDate>Mon, 20 Apr 2020 04:43:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dd5a05ab-b7b5-4897-8d93-31d32cb32495</guid><dc:creator>jake.yoon</dc:creator><description>&lt;p&gt;Any progress here?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/245106?ContentTypeID=1</link><pubDate>Fri, 17 Apr 2020 01:35:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1027e578-ac53-4c1e-bc5e-cd2856773670</guid><dc:creator>jake.yoon</dc:creator><description>&lt;p&gt;@Sigurd&lt;/p&gt;
&lt;p&gt;So, Could you please let me know how the LFCLK source is affecting the timing assertion of SD?&lt;/p&gt;
&lt;p&gt;We should know the mechanism between LFCLK source and SD scheduler to find a way to use LFXO and avoid the assertion.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/123055?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 12:19:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ad227ed2-656e-40ff-9ddb-e6b2fd758e3a</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;That is correct. All I did was that I changed the clock configuration given when initializing SD from&amp;nbsp;NRF_CLOCK_LF_SRC_XTAL to&amp;nbsp;NRF_CLOCK_LF_SRC_RC. So far, after ~30mins or so, no assert.&lt;/p&gt;
&lt;p&gt;Edit: After 17 hours of testing, no assert seen. As summary, in the end this was fixed by changing used clock configuration used to initialize soft device in ble_stack_init().&lt;/p&gt;
&lt;p&gt;static void ble_stack_init(void)&lt;br /&gt;{&lt;br /&gt; uint32_t err_code;&lt;/p&gt;
&lt;p&gt;nrf_clock_lf_cfg_t clock_lf_cfg = NRF_CLOCK_LFCLKSRC_RC;&lt;/p&gt;
&lt;p&gt;// Initialize the SoftDevice handler module.&lt;br /&gt; SOFTDEVICE_HANDLER_INIT(&amp;amp;clock_lf_cfg, ble_new_event_handler);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;where NRF_CLOCK_LFCLKSRC_RC is:&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define NRF_CLOCK_LFCLKSRC_RC {.source = NRF_CLOCK_LF_SRC_RC, \&lt;/span&gt;&lt;br /&gt;&lt;span&gt;.rc_ctiv = 16, \&lt;/span&gt;&lt;br /&gt;&lt;span&gt;.rc_temp_ctiv = 2, \&lt;/span&gt;&lt;br /&gt;&lt;span&gt;.xtal_accuracy = NRF_CLOCK_LF_XTAL_ACCURACY_20_PPM}&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/123041?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 11:49:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:140fbb2f-f05c-4899-a9ab-3655b16cecc0</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Great, let me know how it goes. Note that on the nRF52 the&amp;nbsp;&lt;span&gt;HFXO is&amp;nbsp;controlled by a 32 MHz external crystal.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Just so I understand this, d&lt;/span&gt;&lt;span&gt;id you use&amp;nbsp;32.768 kHz crystal oscillator(LFXO) when you had the asssert before ? and now you are testing with the&amp;nbsp;32.768 kHz RC oscillator&amp;nbsp;instead(LFRC)? correct?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If not, what changes did you try now?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/123037?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 11:42:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4170674c-0ae3-464a-85f0-fe10ba0d1d98</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;We indeed have a custom board and I checked that we initialize 16 MHz like this in main.c:&lt;/p&gt;
&lt;p&gt;/* Start 16 MHz crystal oscillator */&lt;br /&gt; NRF_CLOCK-&amp;gt;EVENTS_HFCLKSTARTED = 0;&lt;br /&gt; NRF_CLOCK-&amp;gt;TASKS_HFCLKSTART = 1;&lt;/p&gt;
&lt;p&gt;/* Wait for the external oscillator to start up */&lt;br /&gt; while (NRF_CLOCK-&amp;gt;EVENTS_HFCLKSTARTED == 0)&lt;br /&gt; {&lt;br /&gt; }&lt;/p&gt;
&lt;p&gt;I added following configuration and used it in&amp;nbsp;SOFTDEVICE_HANDLER_INIT:&lt;/p&gt;
&lt;p&gt;#define NRF_CLOCK_LFCLKSRC_RC {.source = NRF_CLOCK_LF_SRC_RC, \&lt;br /&gt; .rc_ctiv = 16, \&lt;br /&gt; .rc_temp_ctiv = 2, \&lt;br /&gt; .xtal_accuracy = NRF_CLOCK_LF_XTAL_ACCURACY_20_PPM}&lt;/p&gt;
&lt;p&gt;static void ble_stack_init(void)&lt;br /&gt;{&lt;br /&gt; uint32_t err_code;&lt;/p&gt;
&lt;p&gt;nrf_clock_lf_cfg_t clock_lf_cfg = NRF_CLOCK_LFCLKSRC_RC;&lt;/p&gt;
&lt;p&gt;// Initialize the SoftDevice handler module.&lt;br /&gt; SOFTDEVICE_HANDLER_INIT(&amp;amp;clock_lf_cfg, ble_new_event_handler);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;I haven&amp;#39;t seen any asserts yet after testing a good amount of time but just to be sure I need to test this few hours. I&amp;#39;ll let you know how it goes.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122996?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 09:43:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d392ad77-e9ed-48ce-a8bf-9fb4aa0dc44b</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Is this on a custom board? Could you try it on a nRF52-DK?&lt;/p&gt;
&lt;p&gt;It could be some issue with the xtal clock not being accurate enough.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122991?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 09:30:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d08e74fe-449a-4afb-b422-e0188752154e</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Ok, unfortunately, we are still running into the same assert.&amp;nbsp;&lt;span&gt;pc: 0x1117C on&amp;nbsp;4.0.5&amp;nbsp;is the same as&amp;nbsp;pc: 0x1089e on v.3.0.0. We will look more into this.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122985?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 09:12:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0fba6722-efc8-44f0-b9af-74a770b931ea</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;Hey,&lt;/p&gt;
&lt;p&gt;Yes, I made changes so that instead of starting and stopping with FreeRTOS timers, I have set advertising timeout to 1 second. When on_adv_evt(BLE_ADV_EVT_IDLE) gets called after timeout, timer using nrf_drv_timer_*() is started. Once that timer timeouts, advertising is started again. It works for a while but then SD asserts.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;0&amp;gt; SDH:INFO:sd_ble_enable: RAM START at 0x20001fd0&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; :DEBUG:Advertising idle.&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; :DEBUG:Advertising idle.&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; :DEBUG:Advertising idle.&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; :DEBUG:Advertising idle.&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; :DEBUG:Advertising idle.&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; :DEBUG:Advertising idle.&lt;br /&gt; 0&amp;gt; :DEBUG:Fast advertising.&lt;br /&gt; 0&amp;gt; APP_ERROR:ERROR:app_error_fault_handler, id: 0x1 pc: 0x1117C info: 0&lt;/p&gt;
&lt;p&gt;static void on_adv_evt(ble_adv_evt_t ble_adv_evt)&lt;br /&gt;{&lt;br /&gt; switch (ble_adv_evt)&lt;br /&gt; {&lt;br /&gt; case BLE_ADV_EVT_FAST:&lt;br /&gt; {&lt;br /&gt; NRF_LOG_DEBUG(&amp;quot;Fast advertising.\r\n&amp;quot;);&lt;br /&gt; break;&lt;br /&gt; }&lt;br /&gt; case BLE_ADV_EVT_IDLE:&lt;br /&gt; {&lt;br /&gt; NRF_LOG_DEBUG(&amp;quot;Advertising idle.\r\n&amp;quot;);&lt;br /&gt; m_advertising = false;&lt;br /&gt;timer_extended_compare(APP_IDLE_TIME_MS);&lt;br /&gt;timer_start();&lt;br /&gt; break;&lt;br /&gt; }&lt;br /&gt; default:&lt;br /&gt; {&lt;br /&gt; break;&lt;br /&gt; }&lt;br /&gt; }&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;To start the advertising when idle timer timeout happens:&lt;/p&gt;
&lt;p&gt;static void timer_event_handler(nrf_timer_event_t event_type, void *p_context)&lt;/p&gt;
&lt;p&gt;{&lt;br /&gt; BaseType_t yield_req = pdFALSE;&lt;br /&gt; xTimerPendFunctionCallFromISR(timer_pend_func, NULL, (uint32_t)event_type, &amp;amp;yield_req);&lt;br /&gt; portYIELD_FROM_ISR(yield_req);&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;static void timer_pend_func(void *param1, uint32_t param2)&lt;br /&gt;{&lt;br /&gt; if((nrf_timer_event_t)param2 == NRF_TIMER_EVENT_COMPARE0)&lt;br /&gt; {&lt;br /&gt; uint32_t ret;&lt;br /&gt; if(!m_advertising)&lt;br /&gt; {&lt;br /&gt; ret = ble_control_adv_start();&lt;br /&gt; if(ret != NRF_SUCCESS)&lt;br /&gt; {&lt;br /&gt; // Failed to start advertising, retry again after configured time.&lt;br /&gt;timer_extended_compare(APP_RETRY_TIME_MS);&lt;br /&gt;timer_start();&lt;br /&gt; }&lt;br /&gt; }&lt;br /&gt; }&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;timer_extended_compare() and timer_start() are just wrappers that use&amp;nbsp;nrf_drv_timer_extended_compare() and&amp;nbsp;nrf_drv_timer_enable() functions.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122982?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 09:02:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:992cd4c1-6588-4bcb-9a56-216ff5baf1bc</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Are you still getting assert with&amp;nbsp;&lt;span&gt;pc: 0x1117C on&amp;nbsp;4.0.5 ?&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122981?ContentTypeID=1</link><pubDate>Tue, 06 Mar 2018 09:01:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2ccb6d63-b3c6-4c08-bd68-e64456c440f7</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;Update: I have done some changes to our implementation regarding timers etc. Assert is still happening but with different program counter. Since the original pc has changed and to keep this thread minimal I will create another ticket with updated info and verify the suggestion to update SD from 3.0.0 to 4.0.5 as answer to original problem.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122344?ContentTypeID=1</link><pubDate>Wed, 28 Feb 2018 16:22:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:25dd0acc-8f9e-411a-a588-0f46ad5c1a54</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;Hey,&lt;/p&gt;
&lt;p&gt;Ok, I just wanted to be sure that I&amp;#39;m not doing something wrong by changing advertising data without stopping advertisement first.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I enabled logs and seems that the program counter that I&amp;#39;m seeing now has changed to 0x1117C.Further debugging is not an option as we build our project with Eclipse and not with Keil.&lt;/p&gt;
&lt;p&gt;id: 0x1 pc: 0x1117C info: 0&lt;/p&gt;
&lt;p&gt;To be noted that assert is no longer as easy to reproduce as originally.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122321?ContentTypeID=1</link><pubDate>Wed, 28 Feb 2018 14:29:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:69c4c3e1-a2f6-48cf-96de-0622cf6cb897</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote user="SamiPM"]I had my device on testing overnight and there were lots of resets still. [/quote]
&lt;p&gt;Are you still getting the assert with&amp;nbsp;&lt;span&gt;pc: 0x1089e ? or is this a new issue?&amp;nbsp;&lt;/span&gt;Generally, a reset indicates that you are running into the error handler (APP_ERROR_CHECK), where the default behavior is to do a reset. You should then debug in order to find the reason for the reset, and you should have the preprocessor symbol DEBUG defined when debugging. See e.g. &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/10729/my-device-is-freezing-and-restarting"&gt;this post&lt;/a&gt; about debugging.&lt;/p&gt;
&lt;p&gt;You should be able to change the&amp;nbsp;manufacturing data like you are doing without stopping the advertising. The SD will not get flooded. But, you could of course try to stop the advertising before you change it, and see if it makes any difference.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122233?ContentTypeID=1</link><pubDate>Wed, 28 Feb 2018 08:42:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b69ee36d-08b0-4cea-b57c-84e9d095bc63</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;Hey,&lt;/p&gt;
&lt;p&gt;Thank you for all the help. I was able to make it so that from now on we will update all BL + SD + APP as one. This is actually required in case we need to update BL to all existing devices which customers have.&lt;/p&gt;
&lt;p&gt;I had my device on testing overnight and there were lots of resets still. We are not using time slots so its either some irq priority issue we are doing something incorrectly from the app side. One thing that I&amp;#39;ve been wondering is that as said earlier, we advertise every 1 minute for 500 ms. Advertising interval is set to 100 ms. Advertising type is non-connectable/non-scannable and mode is set to fast. I have created own function to update the manufacturing data on the fly:&lt;/p&gt;
&lt;p&gt;uint32_t ble_advertising_set_adv_manuf_data(ble_advdata_manuf_data_t *manuf_data)&lt;br /&gt;{&lt;br /&gt; m_advdata.p_manuf_specific_data = &amp;amp;m_manuf_specific_data;&lt;br /&gt; m_manuf_specific_data.data.p_data = m_manuf_data_array;&lt;br /&gt; m_advdata.p_manuf_specific_data-&amp;gt;company_identifier = manuf_data-&amp;gt;company_identifier;&lt;br /&gt; m_advdata.p_manuf_specific_data-&amp;gt;data.size = manuf_data-&amp;gt;data.size;&lt;/p&gt;
&lt;p&gt;for (uint32_t i = 0; i &amp;lt; manuf_data-&amp;gt;data.size; i++)&lt;br /&gt; {&lt;br /&gt; m_manuf_data_array[i] = manuf_data-&amp;gt;data.p_data[i];&lt;br /&gt; }&lt;/p&gt;
&lt;p&gt;return ble_advdata_set(&amp;amp;m_advdata, NULL);&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;This function is called whenever the data has been changed and it&amp;#39;s needed to be updated. Is it ok to update manufacturing data like this considering that if the data changes a lot&amp;nbsp;SD might get flooded or do we need&amp;nbsp;for example stop the advertising before setting it?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Edit:&lt;/strong&gt; The function above has been added to ble_advertising.c&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122146?ContentTypeID=1</link><pubDate>Tue, 27 Feb 2018 14:03:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:eb80a90c-e945-4f1d-afcb-a7fe550c68e6</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;When updating to a new major SD number, it is required to update the bootloader also. You should do a BL + SD + APP update. See the combination table, and &amp;ldquo;Note 2&amp;rdquo; on this page:&amp;nbsp;&lt;a href="https://github.com/NordicSemiconductor/pc-nrfutil#generate"&gt;https://github.com/NordicSemiconductor/pc-nrfutil#generate&lt;/a&gt;.&amp;nbsp;&lt;span style="text-decoration:line-through;"&gt;Also note that there is bug in the bootloader copy routine, so you need to add an offset based on the SoftDevice version. &lt;/span&gt;&lt;span style="text-decoration:line-through;"&gt;See&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/27862/update-sd-bl-app-from-sdk-v13-to-v14-via-dfu-fails/109831#109831"&gt;this page&lt;/a&gt;&lt;/span&gt;&lt;span style="text-decoration:line-through;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Edit:&lt;/strong&gt; You will not run into the bug in the&amp;nbsp;&lt;span&gt;bootloader copy routine since S132 v.3.0.0 and v.4.0.5 is the same size (124 kB)&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/122000?ContentTypeID=1</link><pubDate>Mon, 26 Feb 2018 17:11:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b7142370-eac5-46de-a58a-49093fc2d338</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;Hey,&lt;/p&gt;
&lt;p&gt;One issue that came up when upgrading from S132 3.0.0 to 4.0.5 is that DFU fails&amp;nbsp;at dfu_req_handling.c when post validation is done. Current SD major (3) and new SD major (4) do not match. Do you see any&amp;nbsp;issue&amp;nbsp;there? We generate zip-package containing both SD and application which is then flashed by using serial DFU based on&amp;nbsp;nRF SDK 13.0.0. Otherwise migration was successful but to be sure that it fixes the problem requires more extensive testing.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/121942?ContentTypeID=1</link><pubDate>Mon, 26 Feb 2018 09:44:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:098834de-813e-4f0b-8408-f42a4fa603bb</guid><dc:creator>Sami-Pekka M&amp;#228;h&amp;#246;nen</dc:creator><description>&lt;p&gt;Hey,&lt;/p&gt;
&lt;p&gt;Thanks for the fast reply. I&amp;#39;ll try by updating softdevice to the version 4.0.5. I&amp;#39;ll let you know how it goes once the migrating is done and I&amp;#39;ve done some testing with it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice assert (id:0x1 pc:1089e info:0x0)</title><link>https://devzone.nordicsemi.com/thread/121825?ContentTypeID=1</link><pubDate>Fri, 23 Feb 2018 16:08:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:47a1bec1-4a9a-407b-b740-d094c6dba84e</guid><dc:creator>Sigurd</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This assert could happen if you are using timeslots, and&amp;nbsp;exhaust your time slot.&amp;nbsp;In other words, it might help if you could reduce whatever code you have going in the slot. Maybe it is possible to move some of the code to a different context. Also make sure that you are not disabling&amp;nbsp;interrupts globally. It could also be caused by some &lt;span&gt;irq priority issue with FreeRTOS, and&amp;nbsp;it&amp;nbsp;&lt;/span&gt;could also be that you are running into a bug in the SoftDevice that was fixed in version 4.0.5. In the release notes the bug fix is&amp;nbsp;described as &amp;quot;Fixed an issue which could cause an assert while running advertiser or scanner&amp;quot;. I will ask our FreeRTOS expert at Nordic for input on this, but&amp;nbsp;&lt;span&gt;you might need to&amp;nbsp;&lt;/span&gt;&lt;span&gt;migrate&amp;nbsp;&lt;/span&gt;&lt;span&gt;to S132 4.0.5 to&amp;nbsp;&lt;/span&gt;&lt;span&gt;solve&amp;nbsp;&lt;/span&gt;&lt;span&gt;this.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>