<?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>Unknown function at &amp;lt;address&amp;gt; starts executing during the ISR&amp;#39;s execution&amp;lt;/address&amp;gt;</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/75739/unknown-function-at-address-starts-executing-during-the-isr-s-execution-address</link><description>So...I have an idle task running then a UART interrupt fires upon a character being sent over the serial, and somewhere during the execution of the ISR, it attempts to execute an &amp;quot;unknown&amp;quot; function as shown in the call stack here 
 
 And here&amp;#39;s the corresponding</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 03 Jun 2021 07:08:53 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/75739/unknown-function-at-address-starts-executing-during-the-isr-s-execution-address" /><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313270?ContentTypeID=1</link><pubDate>Thu, 03 Jun 2021 07:08:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b73486b8-6e12-4d3c-9166-e9f3333b46a4</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="morpho"]Mind elaborating on what your initial request was then? Doesn&amp;#39;t MSP tell you the start address?[/quote]
&lt;p&gt;I was referring to the start address of the application in flash as a simple way to know if you use a SoftDevice. If you application starts at 0x0, you do not. If it starts at 0x1000 you are probably using the MBR only. If it start at something higher than that you are probably using a SoftDevice (which includes the MBR).&lt;/p&gt;
[quote user="morpho"]Is 0x774 the SVC number?[/quote]
&lt;p&gt;No, it is within the interrupt forwarding table. It seems to be for UART0/UARTE0 (UART0_UARTE0_IRQHandler), which is enabled by default in the example project for UART logging.&lt;/p&gt;
[quote user="morpho"]where&amp;#39;s&amp;nbsp;&lt;span&gt;&lt;strong&gt;sd_softdevice_enable&lt;/strong&gt; located? i can&amp;#39;t seem to find it in my application&lt;/span&gt;[/quote]
&lt;p&gt;If you are still using&amp;nbsp;ble_app_hrs_freertos() and have not removed large parts of the code, then you call&amp;nbsp;sd_softdevice_enable() indirectly from&amp;nbsp;ble_stack_init() by calling nrf_sdh_enable_request() (see implementation in &amp;lt;SDK&amp;gt;\components\softdevice\common\nrf_sdh.c).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313221?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 21:12:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:669e6071-6e13-4724-a5a2-00532390921a</guid><dc:creator>morpho</dc:creator><description>[quote userid="7377" url="~/f/nordic-q-a/75739/unknown-function-at-address-starts-executing-during-the-isr-s-execution-address/313204#313204"]&lt;blockquote class="quote"&gt;&lt;div class="quote-content"&gt;MSP, as mentioned earlier, at the start of the application is&amp;nbsp;&lt;span&gt;0x20040000, which according to your description, means I&amp;#39;m using a SoftDevice?&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div class="quote-footer"&gt;&lt;/div&gt;
&lt;p&gt;No.&lt;/p&gt;[/quote]
&lt;p&gt;Mind elaborating on what your initial request was then? Doesn&amp;#39;t MSP tell you the start address?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;gt;&amp;nbsp;&lt;span&gt;The SoftDevice inspects the&amp;nbsp;&lt;/span&gt;&lt;a title="Generates a software exception in which access to system resources or privileged operations can be provided." href="https://infocenter.nordicsemi.com/topic/sds_s140/dita_common/glossary/glossary.html#svc"&gt;&lt;dfn class="term abbreviated-form"&gt;SVC&lt;/dfn&gt;&lt;/a&gt;&lt;span&gt;&amp;nbsp;number, and if it is equal or greater than 0x10, the interrupt is processed by the SoftDevice.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Is 0x774 the SVC number?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;gt;&amp;nbsp;The SoftDevice uses the first eight bytes of RAM when not enabled. Once enabled, the RAM usage of the SoftDevice increases. With the exception of the call stack, the RAM usage for the SoftDevice is always isolated from the application usage. Therefore, the application is required to not access the RAM region below&amp;nbsp;&lt;code class="ph codeph"&gt;APP_RAM_BASE&lt;/code&gt;. The value of&amp;nbsp;&lt;code class="ph codeph"&gt;APP_RAM_BASE&lt;/code&gt;&amp;nbsp;is obtained by calling&amp;nbsp;&lt;code class="ph codeph"&gt;sd_softdevice_enable&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;where&amp;#39;s&amp;nbsp;&lt;span&gt;&lt;strong&gt;sd_softdevice_enable&lt;/strong&gt; located? i can&amp;#39;t seem to find it in my application&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;code class="ph codeph"&gt;&lt;/code&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313204?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 18:25:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:930814b3-8a2e-48f9-96dd-bb78770eb34b</guid><dc:creator>Einar Thorsrud</dc:creator><description>[quote user="morpho"]MSP, as mentioned earlier, at the start of the application is&amp;nbsp;&lt;span&gt;0x20040000, which according to your description, means I&amp;#39;m using a SoftDevice?&lt;/span&gt;[/quote]
&lt;p&gt;No.&lt;/p&gt;
[quote user="morpho"]I&amp;#39;m building stuff on top of&amp;nbsp;&lt;strong&gt;ble_app_hrs_freertos&lt;/strong&gt;[/quote]
&lt;p&gt;That project uses the SoftDevice, and thus MBR. Then we can conclude that 0x774 is from the interrupt forwarding code in the MBR, so all seems good.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313198?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 16:50:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bd69189f-2759-43b8-921f-303c45e2ac82</guid><dc:creator>morpho</dc:creator><description>&lt;p&gt;MSP, as mentioned earlier, at the start of the application is&amp;nbsp;&lt;span&gt;0x20040000, which according to your description, means I&amp;#39;m using a SoftDevice?&lt;br /&gt;I&amp;#39;m building stuff on top of&amp;nbsp;&lt;strong&gt;ble_app_hrs_freertos&lt;/strong&gt; project. And I agree with you on learning about the softdevice architecture itself.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313018?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 07:35:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:913ba65b-6c3a-4919-8e66-a59a14658b8e</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="morpho"]Sorry, you didn&amp;#39;t seem to answer my dumb question: how do you verify if the softdevice is being used on my device?[/quote]
&lt;p&gt;What is the start address of your application? If it is at 0x0, then you are not using MBR or SoftDevice. If it is higher than that, you are typically using the SoftDevice (even if it is not enabled, it will forward interrupts to your application). If you let me know which example project you have based your app on I can check for you. To be frank I think you need to read up a bit on the overall architecture before digging into such details as it seems to me you may be missing the over all understanding that should be in place first.&lt;/p&gt;
&lt;p&gt;Update: I see i referred to 0x744 instead of 0x774 and that typo stuck in this thread. However, both are within the interrupt forwarding code of the MBR, so that is certainly what is going on.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313016?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 07:14:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1492818d-5e56-48ba-978d-dab8fa9a738b</guid><dc:creator>morpho</dc:creator><description>[quote userid="7377" url="~/f/nordic-q-a/75739/unknown-function-at-address-starts-executing-during-the-isr-s-execution-address/313015#313015"]It is only &amp;quot;reset&amp;quot; when the first task starts. After that, it behaves just as normal stack. I am not sure what you want to verify, but you can check the stack pointer from the debugger.[/quote]
&lt;p&gt;Yeah but that&amp;#39;s what I&amp;#39;m trying to do: to figure out how to actually see this behavior by navigating MSP. As described, the initial value is `&lt;span&gt;0x20040000` at the start of main. Is it supposed to reset back to `0x20040000` once the task starts?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;br /&gt;Sorry, you didn&amp;#39;t seem to answer my dumb question: how do you verify if the softdevice is being used on my device?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/313015?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 07:05:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:908be36a-c1eb-4d66-a921-2c7da60a7f30</guid><dc:creator>Einar Thorsrud</dc:creator><description>[quote user="morpho"]Do you know how to verify the resetting of MSP? Initially when I run the program, it&amp;#39;s set to `0x20040000` and when the IRQ is fired, it doesn&amp;#39;t reset back to the same address[/quote]
&lt;p&gt;It is only &amp;quot;reset&amp;quot; when the first task starts. After that, it behaves just as normal stack. I am not sure what you want to verify, but you can check the stack pointer from the debugger.&lt;/p&gt;
[quote user="morpho"]Is this is the .hex file located under&amp;nbsp;components\softdevice\&lt;em&gt;SoftDevice&lt;/em&gt;\hex?[/quote]
&lt;p&gt;Yes (though the path is a bit different with different variants). All BLE projects use the SoftDevice.&lt;/p&gt;
[quote user="morpho"]I&amp;#39;m using Segger IDE and this&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Fgetting_started_softdevice.html"&gt;link&lt;/a&gt;&amp;nbsp;only has info on other IDEs.[/quote]
&lt;p&gt;This is independent of which IDE / toolchain you use.&lt;/p&gt;
[quote user="morpho"]But all i&amp;#39;m doing is using one of the freertos apps and making changes on top of it, and running/debugging it[/quote]
&lt;p&gt;There are several example apps in the SDK, both using a SoftDevice and not using it. Please check if you are using a SoftDevice (and thus MBR) or not, as that is key to know if 0x744 is within something we provide (the MBR) or the app you built yourself. If it is in the MBR as I assumed, it is in the interrupt vector table, so related to interrupt forwarding. See &lt;a href="https://infocenter.nordicsemi.com/topic/sds_s140/SDS/s1xx/processor_avail_interrupt_latency/exception_model.html"&gt;Exception model&lt;/a&gt;&amp;nbsp;in the SoftDevice specification.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312985?ContentTypeID=1</link><pubDate>Wed, 02 Jun 2021 00:00:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5cfa5a44-c8d7-4dc6-828c-7b6a59dea406</guid><dc:creator>morpho</dc:creator><description>&lt;p&gt;&amp;gt;&amp;nbsp;&lt;span&gt;That is how this is typically done in FreeRTOS (see&amp;nbsp;&lt;/span&gt;&lt;a href="https://www.freertos.org/FreeRTOS_Support_Forum_Archive/January_2015/freertos_Main_stack_pointer_reset_when_starting_the_scheduler_e5a776c1j.html"&gt;this thread&lt;/a&gt;&lt;span&gt;).&amp;nbsp;You can modify&amp;nbsp;vPortStartFirstTask() in port.c to not reset the stack pointer if you want to avoid this, or simply make sure to not put any data you will rely on after starting the scheduler on the stack.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;fair. So it&amp;#39;s more of a design thing to reset the MSP once the scheduler runs. Do you know how to verify the resetting of MSP? Initially when I run the program, it&amp;#39;s set to `0x20040000` and when the IRQ is fired, it doesn&amp;#39;t reset back to the same address&lt;/span&gt;&lt;/p&gt;
[quote userid="7377" url="~/f/nordic-q-a/75739/unknown-function-at-address-starts-executing-during-the-isr-s-execution-address/312982#312982"]I have assumed that you are using the MBR (implicitly if you are using the SoftDevice), but I did not get that confirmed. Do you use the SoftDevice? If so 0x744 is within the MBR and I will check tomorrow and get back to you. (If not, then 0x744 is within your application and I cannot say what is located there).[/quote]
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Is this is the .hex file located under&amp;nbsp;components\softdevice\&lt;em&gt;SoftDevice&lt;/em&gt;\hex? I&amp;#39;m using Segger IDE and this&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v15.0.0%2Fgetting_started_softdevice.html"&gt;link&lt;/a&gt;&amp;nbsp;only has info on other IDEs. But all i&amp;#39;m doing is using one of the freertos apps and making changes on top of it, and running/debugging it&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312982?ContentTypeID=1</link><pubDate>Tue, 01 Jun 2021 21:24:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:650dead6-334e-4c13-a6ee-7f903ba48a70</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="morpho"]That&amp;#39;s all I&amp;#39;m trying to clarify - how come does scheduler &amp;quot;wipe out&amp;quot; the stuff on the main stack as soon as it runs that those instances aren&amp;#39;t accessible elsewhere be it in the ISR?[/quote]
&lt;p&gt;I see. That is how this is typically done in FreeRTOS (see &lt;a href="https://www.freertos.org/FreeRTOS_Support_Forum_Archive/January_2015/freertos_Main_stack_pointer_reset_when_starting_the_scheduler_e5a776c1j.html"&gt;this thread&lt;/a&gt;).&amp;nbsp;You can modify&amp;nbsp;vPortStartFirstTask() in port.c to not reset the stack pointer if you want to avoid this, or simply make sure to not put any data you will rely on after starting the scheduler on the stack.&lt;/p&gt;
[quote user="morpho"]In addition to what&amp;#39;s asked above, I&amp;#39;m curious to see how to actually know what is&amp;nbsp;causing the issue by understanding what does unknown function at 0x744 refer to[/quote]
&lt;p&gt;I have assumed that you are using the MBR (implicitly if you are using the SoftDevice), but I did not get that confirmed. Do you use the SoftDevice? If so 0x744 is within the MBR and I will check tomorrow and get back to you. (If not, then 0x744 is within your application and I cannot say what is located there).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312960?ContentTypeID=1</link><pubDate>Tue, 01 Jun 2021 17:32:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:77cd517d-49d4-49e1-9ccc-256b32a689bb</guid><dc:creator>morpho</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Sorry for the confusion. If you have something like the following, the stuff on the stack won&amp;#39;t get cleared or overwritten though...whereas if you had a scheduler running before the while loop, according to you and what i&amp;#39;ve read, the main stack will get overwritten by, say, ISR if it were to fire.&lt;br /&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;int main(void) {

   Uart uartObj;
   int variable = 5;
   
   while(1);
}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;That&amp;#39;s all I&amp;#39;m trying to clarify - how come does scheduler &amp;quot;wipe out&amp;quot; the stuff on the main stack as soon as it runs that those instances aren&amp;#39;t accessible elsewhere be it in the ISR? That&amp;#39;s probably what&amp;#39;s causing my issue because I&amp;#39;m accessing a Uart instance inside an ISR whereas the instance itself is defined in main.&lt;/p&gt;
&lt;p&gt;- In addition to what&amp;#39;s asked above, I&amp;#39;m curious to see how to actually know what is&amp;nbsp;causing the issue by understanding what does unknown function at 0x744 refer to&lt;/p&gt;
&lt;p&gt;-&amp;nbsp;nRF5_SDK_17.0.2_d674dde&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312747?ContentTypeID=1</link><pubDate>Tue, 01 Jun 2021 06:59:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4fd0572e-fcb8-4583-8893-743dbec2d3a0</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am not sure I understand the question. Just to be clear data in the stack is overwritten after it is no longer used and the same region can be used again (think of the stack pointer going up and down, up and down etc. depending on the stack usage).&amp;nbsp;You will note corrupt anything on stack by using more stack, other than things that have gone out of scope.&amp;nbsp;There is no difference here compared to other use cases where you do not use FreeRTOS (when we look at the system stack and ignore each tasks stack).&lt;/p&gt;
&lt;p&gt;I have a few question:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Do you ask about what is at 0x744 because there is an issue or because of curiosity? If the former please elaborate on the issue.&lt;/li&gt;
&lt;li&gt;Which SDK and SoftDevice version are you using?&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312714?ContentTypeID=1</link><pubDate>Mon, 31 May 2021 17:49:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fc306d1c-1306-4ecf-b169-66dc95b538bd</guid><dc:creator>morpho</dc:creator><description>&lt;p&gt;So ISR uses the same&amp;nbsp;kernel/main stack so it starts overwriting as soon as it&amp;#39;s called. How do you verify this behavior? Do you see if MSP, when the interrupt is fired, starts at the base address of the kernel stack?&lt;br /&gt;Clarifying because I have some instances of the peripheral defined inside main before the scheduler is called&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312713?ContentTypeID=1</link><pubDate>Mon, 31 May 2021 17:41:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dfc6815c-7064-4726-b4bb-c47467bee1fc</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Looking at your screenshot I assume you refer to the FreeRTOS scheduler. The stack will not be explicitly wiped out, no. However I believe the main stack is used for ISRs etc, so part of the data will be overwritten at some point.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312709?ContentTypeID=1</link><pubDate>Mon, 31 May 2021 16:47:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:37e5cc4f-c3aa-4a98-8e46-0984a86ac9b2</guid><dc:creator>morpho</dc:creator><description>&lt;p&gt;Can you confirm if the scheduler wipes out the stuff allocated on the stack inside main once it runs?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312466?ContentTypeID=1</link><pubDate>Fri, 28 May 2021 17:15:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d96946dc-6c01-4453-8763-0a493e201e0a</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;The MBR is the master boot record. It is the first page of the SoftDevice. Execution should not get &amp;quot;stuck there&amp;quot;. How did you end up here when debugging? As interrupts are forwarded by the SoftDevice I wonder if it could be simply that you are stepping through code execution also when it is outside your application binary, but that is just a guess.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312447?ContentTypeID=1</link><pubDate>Fri, 28 May 2021 16:04:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:08e9095c-5634-44ef-a763-fe5972674787</guid><dc:creator>morpho</dc:creator><description>&lt;p&gt;What&amp;#39;s exactly MBR? Why is it getting &amp;quot;stuck&amp;quot; on here then once the interrupt is fired?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Unknown function at &lt;address&gt; starts executing during the ISR's execution&lt;/address&gt;</title><link>https://devzone.nordicsemi.com/thread/312354?ContentTypeID=1</link><pubDate>Fri, 28 May 2021 12:03:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:018065ef-2f8a-4e19-914b-4326a5331391</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This is within the MBR. The MBR forwards interrupts to the SoftDevice, which forwards them to your application. I am not sure what you mean by sleep mode? (If the CPU is executing code, it is not in sleep at that instant).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>