<?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 Update Procedure</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/27362/softdevice-update-procedure</link><description>Hello, 
 For the softdevice update, is it the responsibility of the bootloader to make sure, that the softdevice was copied correctly? 
 If for example the bootloader calls sd_mbr_command() and the device powers down during that copy operations. Is</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 20 Nov 2017 13:14:45 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/27362/softdevice-update-procedure" /><item><title>RE: Softdevice Update Procedure</title><link>https://devzone.nordicsemi.com/thread/108056?ContentTypeID=1</link><pubDate>Mon, 20 Nov 2017 13:14:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3f92deac-e157-4889-a335-262a338fd8b0</guid><dc:creator>Torsten Robitzki</dc:creator><description>&lt;p&gt;Thanks a lot; that makes perfect sense!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Softdevice Update Procedure</title><link>https://devzone.nordicsemi.com/thread/108055?ContentTypeID=1</link><pubDate>Mon, 20 Nov 2017 13:10:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ec788587-08b9-4b66-8506-1d30466a6f3f</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi Torsten,&lt;/p&gt;
&lt;p&gt;We use the MBR to copy the softdevice because the softdevice +MBR area can be protected and requires the flash operation to be called from inside the protected area, not from the bootloader.&lt;/p&gt;
&lt;p&gt;The SD_MBR_COMMAND_COPY_SD will do an erase, then write the new softdevice and then do a memcmp() to check, before returning NRF_SUCCESS or NRF_ERROR_INTERNAL.&lt;/p&gt;
&lt;p&gt;So it&amp;#39;s the responsibility of the bootloader to check if the call with SD_MBR_COMMAND_COPY_SD return with NRF_SUCCESS or not before moving to the next step.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>