<?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>OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/55089/ota-over-serial-failure-sdk-15-2</link><description>Hello Everyone, 
 I am using nrf52832 and sdk 15.2 for ota over serial. I have made bootloader for OTA over UART and tested same with nrfutil using my dfu package file. firmware is upgraded successfully and working fine. 
 Now I need to upgrade firmware</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 19 May 2020 06:24:27 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/55089/ota-over-serial-failure-sdk-15-2" /><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/250571?ContentTypeID=1</link><pubDate>Tue, 19 May 2020 06:24:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b1455d92-21f4-479f-9060-779cdb2b4fb7</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Ok. I&amp;#39;ll try with reducing size.&lt;/p&gt;
[quote userid="26071" url="~/f/nordic-q-a/55089/ota-over-serial-failure-sdk-15-2/249103"]It works independently, but you don&amp;#39;t want to do DFU over Serial&amp;nbsp;&lt;strong&gt;and&lt;/strong&gt; BLE at the same time. If you start with serial, then you finish that DFU with Serial. Don&amp;#39;t to BLE simultaneously. But it is possible to support both protocols.[/quote]
&lt;p&gt;Nice.&lt;/p&gt;
&lt;p&gt;Thanks for your support.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m closing this now.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/249103?ContentTypeID=1</link><pubDate>Mon, 11 May 2020 08:01:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:156b0caa-da61-4ce6-9f85-b95661e7247c</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Make sure to decide whether you want to go down this way as well, and maybe it is easier to create a new ticket? This is no longer related to &amp;quot;OTA over serial failure&amp;quot;, which the title reads on this ticket.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="Somesh Burkule"]I am downloading dfu files from server. so if speed is slow ota will fail or I&amp;#39;ll need to get file saved in 4Kb packets.[/quote]
&lt;p&gt;&amp;nbsp;Ok. Set it to 1kB then. Does it change the behavior? Do you run into any issues? I don&amp;#39;t see why it shouldn&amp;#39;t work, but I don&amp;#39;t know what your bootloader project looks like, so perhaps you have made some changes that would affect this.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="Somesh Burkule"]does it work independently? or need some other setting while DFU over Serial or BLE? or need to only enter in boot mode?[/quote]
&lt;p&gt;&amp;nbsp;It works independently, but you don&amp;#39;t want to do DFU over Serial&amp;nbsp;&lt;strong&gt;and&lt;/strong&gt; BLE at the same time. If you start with serial, then you finish that DFU with Serial. Don&amp;#39;t to BLE simultaneously. But it is possible to support both protocols.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The only thing to keep in mind while using BLE is that your application must always use the same softdevice version as your bootloader uses. Because your bootloader needs to use the same SD api as the softdevice that is programmed. So if you update the softdevice version, you must update the bootloader as well.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/249035?ContentTypeID=1</link><pubDate>Sat, 09 May 2020 05:34:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:283a5bec-e2a5-47b1-a2cd-2b70efd04cc0</guid><dc:creator>Somesh Burkule</dc:creator><description>[quote userid="26071" url="~/f/nordic-q-a/55089/ota-over-serial-failure-sdk-15-2/248976"]&amp;nbsp;Why?[/quote]
&lt;p&gt;I am downloading dfu files from server. so if speed is slow ota will fail or I&amp;#39;ll need to get file saved in 4Kb packets.&lt;/p&gt;
&lt;p&gt;Is it possible 2048? any impact?&lt;/p&gt;
[quote userid="26071" url="~/f/nordic-q-a/55089/ota-over-serial-failure-sdk-15-2/248976"]It is possible.[/quote]
&lt;p&gt;does it work independently? or need some other setting while DFU over Serial or BLE? or need to only enter in boot mode?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/248977?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 13:29:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9c698f3b-47c4-4bdc-b992-689ce956c33d</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;NB: I manually changed the status of the ticket, so it will pop up when you write something again.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/248976?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 13:29:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9d36781d-1c58-4aa5-a8bd-413989ed5f1c</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Sorry for the late reply. When a ticket has a verified answer, it falls out of the system, because the issue is solved.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-8fb97dea95ec4ce89331670a6b8c1d4f/pastedimage1588944151553v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="Somesh Burkule"]can we use this to 2048 or 1024?[/quote]
&lt;p&gt;&amp;nbsp;Why?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;[quote user="Somesh Burkule"][/quote]&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;one more question... As I saw in sdkconfig of uart secure bootloader, there is option to use DFU over BLE.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Can we use single bootloader for DFU over Serial and BLE both?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;It is possible. You have to add the other transport layer. It is usually done by just including the .c and .h files to the project, as the transport layers are registered through some macros from those. Then, from main() -&amp;gt;&amp;nbsp;nrf_bootloader_init() -&amp;gt;&amp;nbsp;nrf_dfu_init() -&amp;gt;&amp;nbsp;nrf_dfu_transports_init() it will fetch the list of registered transport layers.&lt;/p&gt;
&lt;p&gt;In the BLE bootloader, the BLE transport layer is included by the following define in nrf_dfu_ble.c:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;DFU_TRANSPORT_REGISTER(nrf_dfu_transport_t const ble_dfu_transport) =
{
    .init_func  = ble_dfu_transport_init,
    .close_func = ble_dfu_transport_close,
};&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;And it is done similarly in the serial bootloader. Search for &amp;quot;DFU_TRANSPORT_REGISTER&amp;quot; in the project.&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/248932?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 12:11:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:006068f2-2294-4299-8e7d-adbb60119e8b</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Awaiting your reply.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/248540?ContentTypeID=1</link><pubDate>Wed, 06 May 2020 16:40:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8cb5bfaf-a65c-414b-9dfc-08eaf7c7006f</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;&lt;strong&gt;Hello&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/edvin-holmseth"&gt;Edvin&lt;/a&gt;,&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MAX_OBJECT_SIZE = 4096bytes.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;If code size is 28kB. we send MAX_OBJECT_SIZE&lt;span&gt;&amp;nbsp;&lt;/span&gt;&amp;nbsp;x 7 over serial.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;can we use this to 2048 or 1024?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;one more question... As I saw in sdkconfig of uart secure bootloader, there is option to use DFU over BLE.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Can we use single bootloader for DFU over Serial and BLE both?&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/248496?ContentTypeID=1</link><pubDate>Wed, 06 May 2020 13:43:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d6f4bc45-e87a-47e3-8cb3-89a2740a6bcc</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;What parameter are you talking about, exactly? What is it called?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/248473?ContentTypeID=1</link><pubDate>Wed, 06 May 2020 13:03:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2852552d-38a9-4f28-b74d-c67797c28e06</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/edvin-holmseth"&gt;Edvin&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;What is the minimum MBR size we can use for OTA?&lt;/p&gt;
&lt;p&gt;I am using 4096 for now. I want to reduce it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/247129?ContentTypeID=1</link><pubDate>Tue, 28 Apr 2020 13:55:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3a908a12-b501-4a2b-a1b5-623309eeb92b</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hi &lt;a href="https://devzone.nordicsemi.com/members/edvin-holmseth"&gt;Edvin&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;Resolved. actually I was checking third byte in response is 0x01 or not(04&lt;span&gt;&amp;nbsp;01 01&lt;/span&gt;) for init packet. if not gives an error. As I removed this code and tried OTA again it gets successfull.&lt;/p&gt;
&lt;p&gt;Thank you for your help.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237673?ContentTypeID=1</link><pubDate>Tue, 03 Mar 2020 10:00:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0dee5140-0c61-42e5-987b-b0c9a35b20a4</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Can you check the logging information in your bootloader and see if you can determine why the packet is not executed? You probably need to use the pca10040_uart_debug project in order to activate logging.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237654?ContentTypeID=1</link><pubDate>Tue, 03 Mar 2020 09:25:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b362ab05-2136-4d07-85fb-08e233450a75</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;How to check init packet is present? is there any Command? and how to delete init packet?&lt;/p&gt;
&lt;p&gt;Actually I am generating zip package and using app.bin and app.dat file for ota.&lt;/p&gt;
&lt;p&gt;so app.bin -&amp;gt; application image&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;app.dat -&amp;gt; init packet&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237643?ContentTypeID=1</link><pubDate>Tue, 03 Mar 2020 09:12:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:613e4c6e-b285-4b69-8304-ccf8b62dc957</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;If the init packet is already transmitted, you can start directly on the application image. Wouldn&amp;#39;t that be a better approach?&lt;/p&gt;
&lt;p&gt;You can probably delete the init packet as well, If you want that, the sequence on the bootloader would be:&lt;/p&gt;
&lt;p&gt;startup -&amp;gt; check if the init packet is present -&amp;gt; check if a valid application is present -&amp;gt; delete the init packet if the application is invalid.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Exactly why it is rejected if it doesn&amp;#39;t work on first try I am not sure.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Out of curiousity, is it an image containing bootloader or application?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237596?ContentTypeID=1</link><pubDate>Tue, 03 Mar 2020 04:57:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d53e3aeb-fa29-4871-a69d-1a72a3134932</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;I think that is not the issue.&lt;/p&gt;
&lt;p&gt;I have used 10ms of delay when sending packet.&lt;/p&gt;
&lt;p&gt;As per my observation, nrf is not executing second init packet if first one is executed successfully and stored in flash. so that I was asking to erase flash in boot mode.&lt;/p&gt;
&lt;p&gt;Is it correct?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237478?ContentTypeID=1</link><pubDate>Mon, 02 Mar 2020 14:00:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:66949559-1579-4862-977b-0af8994790fe</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;If you do not use HWFC then the issue may be that it doesn&amp;#39;t have time to write the packets to flash with the speed you are sending them. Try to add some delay between each packet, and see if the issue remains. Alternatively, try to enable HWFC and see whether that may be the issue. If the nRF Has no way of holding back the UART packets, and they are received too fast, I&amp;nbsp;am not sure how the bootloader would react.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237425?ContentTypeID=1</link><pubDate>Mon, 02 Mar 2020 12:16:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a67adf3b-fd12-4938-a8fa-7cdc5c40b0a8</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Let me explain in briefly.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;I first sent two files( Baud:115200, HWFC Disabled )&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Init packet&lt;/strong&gt; -&amp;gt; executes successfully&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;application file&lt;/strong&gt; -&amp;gt; does not executes( I am downloading file from server then sending file to nrf through serially so if network failor occurs it fails)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;then I send two files again( Baud:115200, HWFC Disabled )&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Init packet&lt;/strong&gt; -&amp;gt; does not executes&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;application file&lt;/strong&gt; -&amp;gt; does not executes&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237380?ContentTypeID=1</link><pubDate>Mon, 02 Mar 2020 10:29:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d313ecde-3501-44d7-88a7-087c4f0721b7</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;One way to reset the device is to call a systemreset from the sourcecode if the second init (application image) fails. Depending on whether you have a valid application or not you may have to set the correct reset register (the way that you set it to get it to run DFU mode instead of the application) in the first place.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The way this is typically done is to write to the NRF_POWER-&amp;gt;GPREGRET register.&lt;/p&gt;
&lt;p&gt;Please see how this register is checked in&amp;nbsp;dfu_enter_check() in nrf_bootloader.c:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;    if (NRF_BL_DFU_ENTER_METHOD_GPREGRET &amp;amp;&amp;amp;
       (nrf_power_gpregret_get() &amp;amp; BOOTLOADER_DFU_START))
    {
        NRF_LOG_DEBUG(&amp;quot;DFU mode requested via GPREGRET.&amp;quot;);
        return true;
    }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So this register has to be written before the reset (you can use&amp;nbsp;bootloader_reset() to reset the bootloader).&lt;/p&gt;
&lt;p&gt;But perhaps it would be more interresting to know why the execute command doesn&amp;#39;t work? Do you use HWFC? At what rate are you sending the packets?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237361?ContentTypeID=1</link><pubDate>Mon, 02 Mar 2020 09:43:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0955dbf6-801c-4b43-876e-54c06db51200</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I have generated init packet.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I tried sending init packet and app file. that time init packet executes successfully but app file not due to some reason.now want to send again init packet and app file but init packet does not executes&amp;nbsp;because it was done before. I need to execute this init packet from crash now again. is there any command to set bootloader to recieve init packet from crash again.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237354?ContentTypeID=1</link><pubDate>Mon, 02 Mar 2020 09:32:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ba026b48-0e9d-4c44-b2d9-d957832f9982</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I am sorry. I didn&amp;#39;t see this until now. When a message is marked as a &amp;quot;verified answer&amp;quot;, it no longer pops up in the queue. Did you manage to generate the init packet?&lt;/p&gt;
&lt;p&gt;Do you know why the init execute command fails? Where was it &amp;quot;done before&amp;quot;? I didn&amp;#39;t understand that part.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Could the problem be that you don&amp;#39;t use Flow Control on the UART? Or do you use flow control?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR,&lt;br /&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/237311?ContentTypeID=1</link><pubDate>Mon, 02 Mar 2020 05:33:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:928de94f-d77a-4dbf-aeba-904a0f4fb5f9</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Please help me for this as soon as possible.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/236412?ContentTypeID=1</link><pubDate>Wed, 26 Feb 2020 06:22:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b82a350d-e1fc-4391-a06c-2eacae92d542</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hello &lt;a href="https://devzone.nordicsemi.com/members/edvin-holmseth"&gt;Edvin&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;I have a problem while upgrading firmware. I am upgrading firmware by sending init packet and then app file serially. In some condition init packet is sent successfull and executed using ( 0x04 ) command but while sending app file due to some reason not executed successfully and OTa over serial fails.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;after that I tried again to do the same but init packet is not getting executed successfully becuase it was done before. so my question is, Is there any way to reset nrf bootloader so that after if ota fails then&amp;nbsp;second time bootloader should start again( erase all files) from init packet.&lt;/p&gt;
&lt;p&gt;Please help me to handle this.&lt;/p&gt;
&lt;p&gt;Awaiting your quick response.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;With warm regards,&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Somesh Burkule&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/228707?ContentTypeID=1</link><pubDate>Mon, 13 Jan 2020 05:07:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f2437e4a-7fb1-4c13-b98a-1a0707765a76</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hello&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/edvin-holmseth"&gt;Edvin&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;Thank you very much for your support. OTA over serial is sucessfull.&amp;nbsp;&lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/263a.svg" title="Relaxed"&gt;&amp;#x263a;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The problem was in the init packet. I had used softdevice.dat file for init packet. I converted this file into hex by online hex converter. now I used application.dat file for the init packet and sent over serial and after that sent app file and OTA worked.&lt;/p&gt;
&lt;p&gt;Can you please tell me how to make init packet. please share init packet structure. I checked nrfutil code but its quit confusing for me. I have sent following packet.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;uint8_t init_packet1[] = {8, 10, 67, 8, 1, 18, 63, 8, 3, 16, 2, 26, 2, 175, 1, 32, 0, 40, 0, 48, 0, 56, 196, 93, 66, 36, 8, 3, 18, 32, 14, 112, 16, 50, 29, 176, 115, 77, 235, 99, 214, 61, 143, 198, 237, 176, 123, 34, 183, 203, 209, 236, 252, 234, 62, 106, 216, 241, 146, 51, 178, 154, 72, 0, 82};
uint32_t init_packet1_len = 65;
uint8_t init_packet2[] = {8, 4, 8, 1, 18, 0};
uint32_t init_packet2_len = 6;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks a lot again!!&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Somesh&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/228497?ContentTypeID=1</link><pubDate>Fri, 10 Jan 2020 08:54:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7c6eb99b-f816-44d7-9ec0-97abb5891b52</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;Hi @&lt;a class="internal-link view-user-profile" href="https://devzone.nordicsemi.com/members/edvin-holmseth"&gt;Edvin&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;As you said, by default this settings are enabled.&lt;/p&gt;
&lt;p&gt;I have compiled the code in SES and flashed in DK board to check whether it is working or not.&lt;/p&gt;
&lt;p&gt;I have opened RTT viewer and connected to board.&lt;/p&gt;
&lt;p&gt;Now I want to start dfu using nrfutil. right? and I&amp;#39;ll get backend logs on rtt viewer.&lt;/p&gt;
&lt;p&gt;Please tell me how?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/228486?ContentTypeID=1</link><pubDate>Fri, 10 Jan 2020 08:23:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ab5e3c51-c922-485e-8a7c-0a59d6f98a6b</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;In order to see the logs, you must download Segger RTT Viewer (link in an earlier reply). Then open up your bootloader project, open sdk_config.h, and change the define:&lt;/p&gt;
&lt;p&gt;#define NRF_LOG_ENABLED 0&lt;br /&gt;to&lt;br /&gt;&lt;span&gt;#define NRF_LOG_ENABLED 1&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;You can also change&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define NRF_LOG_DEFAULT_LOG_LEVEL 3&lt;br /&gt;to&lt;br /&gt;#define NRF_LOG_DEFAULT_LOG_LEVEL 4&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;to increase the amount of logging.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Now, if you don&amp;#39;t change the default flash settings,&amp;nbsp;the compiler&amp;nbsp;will say something like there is not enough flash to fit the project in the chip, so change the flash start and size to ensure there is enough space for the logging module. Change it to something like the _debug bootloader project.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Then open RTT Viewer, and select the debugger that is connected to the nRF. You should see the log there.&lt;/p&gt;
&lt;p&gt;If you still can&amp;#39;t see the log, please let me know where you are stuck. Are you able to compile with NRF_LOG_ENABLED set to 1? Are you able to flash the bootloader? Are you able to open the Segger RTT VIewer?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OTA over serial failure| sdk 15.2</title><link>https://devzone.nordicsemi.com/thread/228473?ContentTypeID=1</link><pubDate>Fri, 10 Jan 2020 06:44:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c146e68d-c402-480c-8be7-0f2a4214f629</guid><dc:creator>Somesh Burkule</dc:creator><description>&lt;p&gt;I tried with the delay&amp;#39;s but still same issue.&lt;/p&gt;
&lt;p&gt;I referred&amp;nbsp;&lt;span&gt;&amp;quot;DFU Master code&amp;quot; and implemented same.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;please see follwing code to send app.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void uart_send_application_image(uint8_t *data, uint32_t length)
{

	uint8_t CRC[] = {3};
	uint32_t CRC_len = 1;
	uint8_t execute[] = {4};
	uint32_t exe_len = 1;
	uint8_t create_obj[10];
	uint32_t create_obj_len= 6;
	uint32_t enc_data_len = 0;
	size_t read_len =0;
	uint8_t  RespData[100];
	uint8_t enc_data[100];

	//Create Object
	create_obj[0]=0x01;
	create_obj[1]=0x02;//Command Object
	create_obj[2]=length;
	create_obj[3]=length&amp;gt;&amp;gt;8;
	create_obj[4]=length&amp;gt;&amp;gt;16;
	create_obj[5]=length&amp;gt;&amp;gt;24;

	memset(enc_data,0,sizeof(enc_data));
	//CREATE COMMAND OBJECT
	encode_slip(enc_data,&amp;amp;enc_data_len,create_obj,create_obj_len);
	uart_flush(UART_NUM_1);
	uart_write_bytes(UART_NUM_1,(char*) enc_data, enc_data_len);
	uart_wait_tx_done(UART_NUM_1, 5);

	vTaskDelay(10);         //100ms
	ESP_ERROR_CHECK(uart_get_buffered_data_len(UART_NUM_1,&amp;amp;read_len));
	int readBytes = uart_read_bytes(UART_NUM_1, RespData,(uint32_t)read_len, 0);

    uint32_t encoded_slip_packet_length;

    while(length&amp;gt;0)
    {
        encoded_slip_packet[0]=0x08;//Write object opcode

        if (length&amp;gt;=MAX_ACTUAL_PAYLOAD)
        {
        	encode_slip( &amp;amp;encoded_slip_packet[1], &amp;amp;encoded_slip_packet_length, data, MAX_ACTUAL_PAYLOAD);
            length= length-MAX_ACTUAL_PAYLOAD;
            data = data+MAX_ACTUAL_PAYLOAD;
        }else
        {
        	encode_slip( &amp;amp;encoded_slip_packet[1], &amp;amp;encoded_slip_packet_length, data, length);
            length=0;
        }

        // send

        uart_flush(UART_NUM_1);
		uart_write_bytes(UART_NUM_1,(char*) encoded_slip_packet, encoded_slip_packet_length+1);
		uart_wait_tx_done(UART_NUM_1, 5);
    }

	vTaskDelay(1);              //10ms
	//CRC
	encode_slip(enc_data,&amp;amp;enc_data_len,CRC,CRC_len);
	uart_flush(UART_NUM_1);
	uart_write_bytes(UART_NUM_1,(char*) enc_data, enc_data_len);
	uart_wait_tx_done(UART_NUM_1, 5);

	vTaskDelay(10);             //100ms
	ESP_ERROR_CHECK(uart_get_buffered_data_len(UART_NUM_1,&amp;amp;read_len));
	readBytes = uart_read_bytes(UART_NUM_1, RespData,(uint32_t)read_len, 0);

	memset(enc_data,0,sizeof(enc_data));
	//EXECUTE
	encode_slip(enc_data,&amp;amp;enc_data_len,execute,exe_len);
	uart_flush(UART_NUM_1);
	uart_write_bytes(UART_NUM_1,(char*) enc_data, enc_data_len);
	uart_wait_tx_done(UART_NUM_1, 5);

	vTaskDelay(20);             //200ms
	ESP_ERROR_CHECK(uart_get_buffered_data_len(UART_NUM_1,&amp;amp;read_len));
	readBytes = uart_read_bytes(UART_NUM_1, RespData,(uint32_t)read_len, 0);
}
&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Can you please explain in brief how to see logs on RTT viewer. not getting logs yet.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>