<?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>Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/94594/several-problems-arising-with-ota-dfu</link><description>Hi, I am currently using SDK 15.3.0 with SD 6.1.1 and am playing around with the buttonless DFU. 
 I noticed that after uploading the new firmware via nrf connect, many times the MCU just hardfaults. It happened e.g. after I set NRF_LOG_ENABLE to 0 in</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 10 Jan 2023 03:08:39 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/94594/several-problems-arising-with-ota-dfu" /><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/403961?ContentTypeID=1</link><pubDate>Tue, 10 Jan 2023 03:08:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5419806-ade4-48db-9ca8-b0929884b4ae</guid><dc:creator>lengthnull</dc:creator><description>&lt;p&gt;&lt;span&gt;Same issue here with SDK 14.2.0&lt;/span&gt;&lt;/p&gt;
&lt;p style="padding-left:270px;"&gt;&lt;span style="color:#ffffff;font-size:75%;"&gt;&lt;a style="color:#ffffff;" href="https://krunkerio.io"&gt;krunker&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400338?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 10:13:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4d5e67bf-0a8a-4112-bb43-e72aa537eae9</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;That depends on what you&amp;nbsp;want and how you use it? As mentioned, FDS is a simple file system that handles things like updating data etc in flash, which is a bit of work (due to the nature of flash), and is also easy to mess up (there are many corner cases, for instance if you get a reset while updating data). So I would consider using FDS for all flash storage, but there are special cases where it might not be the best solution. You can read about &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_fds.html"&gt;FDS in the documentation &lt;/a&gt;to get a better understanding of it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400316?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 08:57:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0204edb3-3014-4a72-bdfc-f9ddedc15489</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;very nice, I am using a peer manager indeed but would you say that its generally better to use fds module as opposed to the storage module I am using right now?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400312?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 08:47:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:791f319e-c47d-4669-8a63-23bdfa037265</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;FDS virtual page size is normally the same as a physical page size, so 0x1000 (4 kB). Regarding the value of FDS_VIRTUAL_PAGES_RESERVED, the number of pages here depends on how much data you store in FDS. If you don&amp;#39;t use FDS at all, you can disable FDS by setting FDS_ENABLED to 0 and it will not matter. However, remember that for instance the peer manager library that handles bonding in BLE use FDS, so if that is used you will need FDS. If FDS is enabled, the lowest possible number of pages is 2, as that leaves 1 for swap and 1 for data.&lt;/p&gt;
&lt;p&gt;The FDS pages are always right below the bootloader. So if your bootloader starts at&amp;nbsp;0xec000 (you can just check the bootloader project to verify) and you have 3 FDS pages, that means that FDS starts at&amp;nbsp;0xEC000 - 0x1000 = 0xE9000. So I would suggest that you use the page right below there for your data that is outside of FDS, so starting&amp;nbsp;0xE8000. If you do, that means&amp;nbsp;NRF_DFU_APP_DATA_AREA_SIZE should be 0x4000, as the bootloader needs to know that it should never touch the 4 pages right below it.&lt;/p&gt;
&lt;p&gt;A last point is that FDS can be used for multiple things, so you could also consider to use FDS for your other data. That is a common ting to do, and FDS is a simple file system that allows easy updating of data etc, and it handles the complexities of flash memory for you (things like only being able to flip bits from 1 to 0 except after a page erase, etc).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400304?ContentTypeID=1</link><pubDate>Tue, 13 Dec 2022 08:23:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e162a06f-b6e9-4171-971e-3a487d019dfc</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;thanks for your help, I have one more question because I am confused with this:&lt;/p&gt;
&lt;p&gt;&lt;span&gt;NRF_DFU_APP_DATA_AREA_SIZE i 0x3000 in my bootloader (which actually shouldn&amp;#39;t be enough with my calculations because if my storage starts at 0xec000 that&amp;#39;s far off the 0xf8000 bootloader start address and would actually require more than 0x9000)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;how does&amp;nbsp;NRF_DFU_APP_DATA_AREA_SIZE connect with FDS_RESERVED_VIRTUAL_PAGES and FDS_PAGES?&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If I set&amp;nbsp;FDS_RESERVED_VIRTUAL_PAGES to 3, this should have an impact on my bootloader application right? these 3 defines don&amp;#39;t really make sense to me as in I don&amp;#39;t know which one to change and if all 3 need to be changed at once&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400102?ContentTypeID=1</link><pubDate>Mon, 12 Dec 2022 11:06:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ded58fb-b8b1-40d8-bcb3-af705b1be8d5</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;It is not so much a matter of viewing it, but more drawing it up on a piece of paper or similar, with the addresses you have for the various parts of your project. Some things are given though.&lt;/p&gt;
&lt;p&gt;First, look at the &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_bootloader.html?cp=8_1_3_5_0_7#lib_bootloader_memory"&gt;memory layout from the bootloader documentation&lt;/a&gt;. That has numbers for various ICs so you can use that as a starting point, also the figure you can re-use.&lt;/p&gt;
&lt;p&gt;Then add the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;first page (0x0): MBR&lt;/li&gt;
&lt;li&gt;starting at the second page (0x1000). SoftDevice. This will end at the size of the SoftDevice, which you can see form the SoftDevice specification&amp;nbsp;(0x26000 for S140 6.1.1 if that is what you are using)&lt;/li&gt;
&lt;li&gt;The application starts right after the SoftDevice, so at (0x26000 if using S140 6.1.1). Where it ends depends on how large it is. Look at the build output or check the application hex in &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fug_nc_programmer%2FUG%2Fnrf_connect_programmer%2Fncp_introduction.html"&gt;nRF&amp;nbsp;Connect Programmer&lt;/a&gt;&amp;nbsp;or some other tool&lt;/li&gt;
&lt;li&gt;The bootloader starts wherever the bootloader project you are using is defined to start in the linker configuration. Let&amp;#39;s say the bootloader start at&amp;nbsp;0xf8000 for now as an example (this is a typical value SDK 15.3 based BLE&amp;nbsp; bootloaders in release mode).&lt;/li&gt;
&lt;li&gt;There must be two available flash pages at the end though, one form MBR params (second to last) and one for bootloader settings (the last).&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These are all the things that are easy to locate. And based on this, you can say more. If you use FDS, they are right below (lower address) than the bootloader. The number of pages are configured in the application sdk_config.h.&lt;/p&gt;
&lt;p&gt;If you don&amp;#39;t use FDS at all in your application, you can use a page right below the bootloader for stuff you store directly to flash. If you do, pick a page right below this again. Put all this in a figure so that you see your full flash memory layout.&lt;/p&gt;
&lt;p&gt;And&amp;nbsp;lastly, remember to update&amp;nbsp;NRF_DFU_APP_DATA_AREA_SIZE in the bootloader&amp;#39;s sdk_config.h so that it stays away of any flash you use right below the&amp;nbsp;bootloader (this needs to cover both FDS and anything else). This needs to be a full multiple of 0x1000 which is a flash page, and counts downwards from the bootloader. See the figure linked to earlier in this post.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400085?ContentTypeID=1</link><pubDate>Mon, 12 Dec 2022 10:00:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:67f412f3-27a3-46c4-a4b3-aaeec7d5db4a</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;can you give me a hint on how to view my memory layout? That would probably help us both in the assessment.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400055?ContentTypeID=1</link><pubDate>Mon, 12 Dec 2022 07:37:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3533cee4-170d-48e6-ba52-bff14f578ad3</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This makes sense and is good to hear. I don&amp;#39;t know your exa t memory layout(?), but if you have gotten an overview of that and see that the page starting at&amp;nbsp;0xec000 does not overlap with anything ese and is not used by FDS, and is within the reserved area of the bootloader (that it will never touch), then this is OK.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/400010?ContentTypeID=1</link><pubDate>Sat, 10 Dec 2022 10:58:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:082c8308-7bb8-4d8a-88b1-d16ed7e1b895</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;Hey Einar, so I changed the flash start and end addresses to 0xec000 to 0xeffff after finding out that the dfu always worked if I didn&amp;#39;t use the storage module.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This now seems to work, I did some tests and until now it didn&amp;#39;t fail. My question is now if you think that this is tangible or just a fluke and if I should take a close look to something in my storage usage?&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399987?ContentTypeID=1</link><pubDate>Fri, 09 Dec 2022 16:04:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5dc307d7-b5d7-401a-a6da-6a81e7e73ab0</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;yeah but thats where I am right now, in the hardfault handler and it faults at this nrf_log_final_flush function&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Screenshot-2022_2D00_12_2D00_09-at-17.03.33.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/pastedimage1670601845982v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;my hardfault handler is enabled tho&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399979?ContentTypeID=1</link><pubDate>Fri, 09 Dec 2022 15:16:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4c20b0c7-4e80-4b20-ae6b-d0561955ab48</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;I see, here it is in a hardfault handler. There are several approaches you could use, but I would start by using the &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_hardfault.html"&gt;hardfault handler library&lt;/a&gt;. With that and logging you will get a printout that can be very helpful. Most example projects have the files as part of the project already, so you typically only need to set&amp;nbsp;HARDFAULT_HANDLER_ENABLED to 1 in sdk_config.h.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399968?ContentTypeID=1</link><pubDate>Fri, 09 Dec 2022 14:49:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d9fefd44-2575-4e4c-ae06-d0b4d7375bee</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;I understand what youre saying, I cant tell you more than that here:&amp;nbsp;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Screenshot-2022_2D00_12_2D00_09-at-15.45.59.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;that&amp;#39;s one of the halts I get (p_stack_address is 0 at this point)&lt;/p&gt;
&lt;p&gt;there are some other points where the application fails, but that&amp;#39;s now the last failure I got after doing a DFU&lt;/p&gt;
&lt;p&gt;Do you have another pointer on what I shall look for?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;gt;&amp;nbsp;&lt;span&gt;So you need to get a overview of your memory layout and place the flash region you use for persistent storage at a sensible location as explained in my previous post.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Understood, I will do that!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399879?ContentTypeID=1</link><pubDate>Fri, 09 Dec 2022 10:15:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:586dbe45-be54-4730-ba91-e54f591accfa</guid><dc:creator>Einar Thorsrud</dc:creator><description>[quote user="Juliusc"]I mean it just doesnt work any more and if I attach a debugger I see that it hangs on in that&amp;nbsp;particular state (as shown in the screenshots).&amp;nbsp;[/quote]
&lt;p&gt;I see. The CPU will do something though (either be in sleep waiting for an event, in an eternal loop in an error handler, or something else). It is not just &amp;quot;hanging&amp;quot;. So you should debug more to find what is actually the state (and from there backtrack to find out why).&lt;/p&gt;
[quote user="Juliusc"]that should be enough as far as I can see?[/quote]
&lt;p&gt;It should be enough yes, but the size is not the issue here. This counts from right below the bootloader. So you need to get a overview of your memory layout and place the flash region you use for persistent storage at a sensible location as explained in my previous post.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399867?ContentTypeID=1</link><pubDate>Fri, 09 Dec 2022 09:31:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:afa95358-bff6-4e63-8832-1d3545883d7a</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;I mean it just doesnt work any more and if I attach a debugger I see that it hangs on in that&amp;nbsp;particular state (as shown in the screenshots).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The DATA_AREA_SIZE was set to&amp;nbsp;12288 in the bootloader SDK, that should be enough as far as I can see?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399862?ContentTypeID=1</link><pubDate>Fri, 09 Dec 2022 09:24:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:62cce773-cdba-4c98-9f28-4dbf492622ba</guid><dc:creator>Einar Thorsrud</dc:creator><description>[quote user="Juliusc"]I cant see whats going on in that advertising function, it crashes at this handler:[/quote]
&lt;p&gt;When you write &amp;quot;crashes&amp;quot;, what exactly do that mean? Can you elaborate? What do you find about the state of the device and what happened from debugging? And what do you see form the RTT log?&lt;/p&gt;
[quote user="Juliusc"]07c000 to 7ffff,[/quote]
&lt;p&gt;As long as the flash is not used by anything else it should be OK. However, even if it is not used by anything else when the application is running, it could be that it gets overwritten during a DFU. Generally, you should use flash right below the bootloader (but take into account that the FDS pages are there as well if you use that, and in that case use flash right after the FDS pages again). See &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_bootloader.html?cp=8_1_3_5_0_7#lib_bootloader_memory"&gt;memory layout&lt;/a&gt;. This is because you can configure the bootloader to lay away of this region by adjusting&amp;nbsp;NRF_DFU_APP_DATA_AREA_SIZE in the bootloader&amp;#39;s sdk_config.h.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399599?ContentTypeID=1</link><pubDate>Thu, 08 Dec 2022 09:47:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:87a1b6d3-e42c-4ee7-b203-2ecb61dccbc2</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;Ok so here&amp;#39;s what I did:&lt;/p&gt;
&lt;p&gt;flash initial software to MCU -&amp;gt; test it, works&lt;/p&gt;
&lt;p&gt;make new software (which has basically no changes in sdk_config, mainly business logic) -&amp;gt; test it, works&lt;/p&gt;
&lt;p&gt;DFU (new software replaces old software) -&amp;gt; sensor crashes&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Screenshot-2022_2D00_12_2D00_08-at-10.40.37.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;this is the call stack after attaching a debugger after the DFU&lt;/p&gt;
&lt;p&gt;so I reset the sensor in debug mode, then this crash report appears:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Screenshot-2022_2D00_12_2D00_08-at-10.40.57.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;then I reattached the debugger and this crash report appears&lt;/p&gt;
&lt;p&gt;NRF_LOG is enabled and RTT is enabled on both.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;does this help?&lt;/p&gt;
&lt;p&gt;I cant see whats going on in that advertising function, it crashes at this handler:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/Screenshot-2022_2D00_12_2D00_08-at-10.47.39.png" alt=" " /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399456?ContentTypeID=1</link><pubDate>Wed, 07 Dec 2022 14:01:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4c9f91dc-3cf7-464e-9572-76839e637057</guid><dc:creator>Juliusc</dc:creator><description>&lt;p&gt;okay let me try to narrow it down.&lt;/p&gt;
&lt;p&gt;It happened while performing a DFU, I did that by using the nrf connect app and then the MCU didn&amp;#39;t show up again (no advertising) hence I attached a debugger and noticed that the firmware crashed in some sort of logging process. But this was only one of some issues, it also happened once that advertising failed with an internal error (0x3)&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;gt; but there could be changed in the other parts of the flash in case of a dual bank update. Normally that would not&amp;nbsp;cause problems, but it could potentially trigger a bug in your application.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;yep that&amp;#39;s what I though as well, I am using the internal flash storage module, writing to addresses 07c000 to 7ffff, maybe this helps? How can I see which banks are being written during the dfu process and therefore always keep those clear? Could it also be a problem if the application is too big?&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I will inspect the issue in more detail and come back with more explanation, but that&amp;#39;s it for now.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Several problems arising with OTA DFU.</title><link>https://devzone.nordicsemi.com/thread/399442?ContentTypeID=1</link><pubDate>Wed, 07 Dec 2022 13:50:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d9b43289-d910-4ab3-aa4b-a805b3c3a4f5</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Have you confirmed that you get an actual hardfault, or something else? What have you found out by debugging? How exactly did this happen? (There are very many things that can go wrong, so we need to narrow&amp;nbsp;things down as much as possible as early as possible).&lt;/p&gt;
&lt;p&gt;Is it so that the issue issue happened after adding buttonless DFU to your application, or does it happen after a DFU update?&lt;/p&gt;
&lt;p&gt;The application would be identical after a DFU update as if it was flashed directly (assuming you made no changes), but there could be changed in the other parts of the flash in case of a dual bank update. Normally that would not&amp;nbsp;cause problems, but it could potentially trigger a bug in your application.&lt;/p&gt;
&lt;p&gt;In short, please explain in more detail what you did and what exactly fails and how. If you go back to when this issue did not happen, can you isolate at which point things start to fail and what exactly you do in that case? Then, what can you find from debugging (for instance logging and inspecting after en error handler is run or something else, depending on what actually happened)?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>