<?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>what kind of reasons make software reset(0x04)?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/112703/what-kind-of-reasons-make-software-reset-0x04</link><description>We created a product using nrf52840. the product is operating well, but it has been confirmed that software reset (0x04) operates in very few times (2weeks per 1time). In this case, I want to know software reset due to low power or external physical interference</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 16 Jul 2024 15:32:13 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/112703/what-kind-of-reasons-make-software-reset-0x04" /><item><title>RE: what kind of reasons make software reset(0x04)?</title><link>https://devzone.nordicsemi.com/thread/494213?ContentTypeID=1</link><pubDate>Tue, 16 Jul 2024 15:32:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c59a3317-3ad5-4391-aceb-a43947408ec1</guid><dc:creator>Naeem Maroof</dc:creator><description>&lt;p&gt;Can you use addr2line to locate where it is breaking?&lt;/p&gt;
&lt;p&gt;like:&amp;nbsp;&lt;pre class="ui-code" data-mode="text"&gt;addr2line -e filename.elf 0x00060290&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/25886/70-mesh-assert-at-0x00023680/101949"&gt;using addr2line&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
[quote user="bilas77"]In our device, the LED blinks using PWM, flashing every 3 seconds, and also blinks when a button is pressed. &lt;br /&gt;Accordingly, we tested whether the operation of the LED, controlled by 300ms and 500ms timers, affects the reset.[/quote]
&lt;p&gt;Is this reproducible? Can you provide a minimal project to test this?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You application seems to be highly customized. I am not sure what more I could provide here.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: what kind of reasons make software reset(0x04)?</title><link>https://devzone.nordicsemi.com/thread/493543?ContentTypeID=1</link><pubDate>Fri, 12 Jul 2024 04:48:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:934594ae-6992-4d95-b167-dedc557e5d60</guid><dc:creator>bilas77</dc:creator><description>&lt;p&gt;Today, we ran the Segger tool for approximately 2 hours, and it stopped in the following state. Below are the&lt;/p&gt;
&lt;p&gt;screenshots of each stack.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/stack1.png" /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/stack2.png" /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/stack3.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: what kind of reasons make software reset(0x04)?</title><link>https://devzone.nordicsemi.com/thread/493355?ContentTypeID=1</link><pubDate>Thu, 11 Jul 2024 09:51:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:078ad5c1-31a7-43df-aca8-2a49e78d6dc0</guid><dc:creator>bilas77</dc:creator><description>&lt;p&gt;Q. Did you test your fault handler by intentionally causing a fault and verifying if it worked as intended?&lt;/p&gt;
&lt;p&gt;A. We created a BLE command to test the app error handler (APP_ERROR_HANDLER(NRF_ERROR_TIMEOUT)). Additionally, we implemented a function to store reset markers in external memory within the __WEAK void app_error_fault_handler(uint32_t id, uint32_t pc, uint32_t info) function. We verified that it was functioning correctly.&lt;/p&gt;
&lt;p&gt;But, We observed that the NVIC_SystemReset function is also within the HardFault_c_handler function.&lt;/p&gt;
&lt;p&gt;So we realized that if the reset occurred outside of the `app_error_fault_handler` function, the reset mark would not have been stored in external memory.&lt;/p&gt;
&lt;p&gt;Recently, we focused on LED blinking as the cause of resets and modified our code to reproduce the reset issue. &lt;br /&gt;In our device, the LED blinks using PWM, flashing every 3 seconds, and also blinks when a button is pressed. &lt;br /&gt;Accordingly, we tested whether the operation of the LED, controlled by 300ms and 500ms timers, affects the reset.&lt;/p&gt;
&lt;p&gt;And we confirmed that the following log appeared twice on one device.&lt;/p&gt;
&lt;p&gt;[01:29:07.243,164] &amp;lt;error&amp;gt; hardfault: HARD FAULT at 0x00060290&lt;br /&gt;[01:29:07.249,023] &amp;lt;error&amp;gt; hardfault: R0: 0x00000000 R1: 0x200321BC R2: 0x200348DC R3: 0x10000000&lt;br /&gt;[01:29:07.258,789] &amp;lt;error&amp;gt; hardfault: R12: 0x00000000 LR: 0x0005FA9B PSR: 0x61000000&lt;br /&gt;[01:29:07.266,601] &amp;lt;error&amp;gt; hardfault: Cause: The processor has attempted an illegal load of EXC_RETURN to the PC, due to an invalid context, or an invalid EXC_RETURN value.&lt;/p&gt;
&lt;p&gt;--after reset--&lt;br /&gt;[00:00:00.000,000] &amp;lt;info&amp;gt; app: reset_reason: 0x00000004.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;What information can we gather from the above log?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: what kind of reasons make software reset(0x04)?</title><link>https://devzone.nordicsemi.com/thread/492417?ContentTypeID=1</link><pubDate>Fri, 05 Jul 2024 10:26:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:31451e68-4ca9-4f42-be97-9ca3cc7933c5</guid><dc:creator>Naeem Maroof</dc:creator><description>&lt;p&gt;A soft reset could be generated when the SYSRESETREQ bit of the application interrupt and reset control register (AIRCR) in the ARM core is set.&amp;nbsp;A soft reset can also be generated via the RESET register of CTRL-AP.&lt;/p&gt;
&lt;p&gt;Did you test your fault handler by intentionally making a fault and checking if it is working as intended?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>