<?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>Extend Serial DFU</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/54613/extend-serial-dfu</link><description>Hi, 
 as i mention in https://devzone.nordicsemi.com/f/nordic-q-a/44924/dfu-serial-failed i have f ramming error now and then when i do DFU over serial. 
 My idea was to write some code in nrf_dfu_serial_uart .c to make a better validation of data that</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 25 Nov 2019 12:50:02 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/54613/extend-serial-dfu" /><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221846?ContentTypeID=1</link><pubDate>Mon, 25 Nov 2019 12:50:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:09fd113a-73f1-420a-af95-6f275891f951</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;This was it. Thnx.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221827?ContentTypeID=1</link><pubDate>Mon, 25 Nov 2019 12:00:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:883915bd-5e01-4e2d-91e5-26e41d103ba7</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v16.0.0/service_dfu.html?cp=6_1_3_3_5_4_1#secure_dfu_buttonless_operations_name"&gt;nrf_dfu_set_adv_name_init&lt;/a&gt;&lt;span&gt;() should only&amp;nbsp;&lt;/span&gt;&lt;span&gt;be called if the bootloader supports DFU over BLE.&amp;nbsp;&lt;/span&gt;&lt;span&gt;For serial DFU you don&amp;#39;t have to set up the SVC interface with the Bootloader.&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221316?ContentTypeID=1</link><pubDate>Thu, 21 Nov 2019 12:34:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cfe8f72a-c139-405f-bcf1-f53e14c8e2ef</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;So i guess it hangs here:&lt;pre class="ui-code" data-mode="text"&gt;Program received signal SIGTRAP, Trace/breakpoint trap.
0x000ea3f6 in ?? ()
(gdb) bt
#0  0x000ea3f6 in ?? ()
#1  &amp;lt;signal handler called&amp;gt;
#2  0x0003ec6a in svci_nrf_dfu_set_adv_name_svci_async_init (p_async=0x2000ba34 &amp;lt;nrf_dfu_set_adv_name_svci_async_def&amp;gt;) at ../../../../submodules/firmware_nrf52_sdk_15_2/src/nRF5_SDK_15.2.0_9412b96/components/ble/ble_services/ble_dfu/ble_dfu_unbonded.c:61
#3  0x0003ec7e in nrf_dfu_set_adv_name_svci_async_init (p_async=0x2000ba34 &amp;lt;nrf_dfu_set_adv_name_svci_async_def&amp;gt;) at ../../../../submodules/firmware_nrf52_sdk_15_2/src/nRF5_SDK_15.2.0_9412b96/components/ble/ble_services/ble_dfu/ble_dfu_unbonded.c:61
#4  0x0003ec92 in nrf_dfu_set_adv_name_init () at ../../../../submodules/firmware_nrf52_sdk_15_2/src/nRF5_SDK_15.2.0_9412b96/components/ble/ble_services/ble_dfu/ble_dfu_unbonded.c:61
#5  0x0003ee22 in ble_dfu_buttonless_async_svci_init () at ../../../../submodules/firmware_nrf52_sdk_15_2/src/nRF5_SDK_15.2.0_9412b96/components/ble/ble_services/ble_dfu/ble_dfu_unbonded.c:151
#6  0x0003c016 in nordic_ble_dfu_buttonless_async_svci_init () at ../../../../submodules/firmware_nrf52_sdk_15_2_extended/src/nordic_ble_dfu.c:25
#7  0x000310cc in BleCommon::BleCommon (this=0x20011628) at ../../../../submodules/firmware_nrf52_lib_ble/src/ble_common/ble_common.cpp:28
#8  0x0003108c in BleCommon::getInstance () at ../../../../submodules/firmware_nrf52_lib_ble/src/ble_common/ble_common.cpp:16
#9  0x0002d478 in main () at ../../../main.cpp:52
(gdb) &lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;IIt looks like &lt;strong&gt;NRF_SVCI_ASYNC_FUNC_DEFINE(NRF_DFU_SVCI_SET_ADV_NAME, nrf_dfu_set_adv_name, nrf_dfu_adv_name_t)&lt;/strong&gt; never returned.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221284?ContentTypeID=1</link><pubDate>Thu, 21 Nov 2019 10:48:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8727c3ed-4462-4f9c-9056-d9610e5707c8</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;The issue you linked to doesn&amp;#39;t make sense to me, I think it has to be something else.&amp;nbsp;Could you try to attach the debugger and debug the app after DFU to find out where it hangs?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221280?ContentTypeID=1</link><pubDate>Thu, 21 Nov 2019 10:23:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8f608448-e0f8-43dc-86bb-4afc345ad7e8</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;Could it be connected with &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/52916/nrf_sdh_clock_lf_src-changes-break-app-and-dfu-in-15-3-from-15-2/214427#214427"&gt;devzone.nordicsemi.com/.../214427&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221272?ContentTypeID=1</link><pubDate>Thu, 21 Nov 2019 10:09:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f6f43915-8e91-4e23-9236-3d2ec64b054d</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;Yes, this part works. But i have another issue. I was using &lt;strong&gt;pca10056_uart_debug &lt;/strong&gt;and FOTA successfuly passed but the main application hangs on boot (i just got few lines from the main application in log). But when i use &lt;strong&gt;pca10056_ble_uart_debug &lt;/strong&gt;the bootloader is to big and it didn&amp;#39;t fit into the FLASH. So i turned off the LOG and then i could compile and flash the bootloader and the main application works. But i&amp;#39;m not happy that i have no logs. So i tried to turn off &lt;strong&gt;pca10056_ble_uart_debug&lt;/strong&gt; &lt;strong&gt;&lt;/strong&gt;becase i don&amp;#39;t use ble in this project so i had to remove &lt;strong&gt;nrf_dfu_ble.c&lt;/strong&gt; and &lt;strong&gt;nrf_dfu_settings_svci.c&lt;/strong&gt; and set &lt;strong&gt;NRF_DFU_TRANSPORT_BLE&lt;/strong&gt; to &lt;strong&gt;0&lt;/strong&gt; i &lt;strong&gt;sdk_config.h &lt;/strong&gt;but then i got the same result as with &lt;strong&gt;pca10056_uart_debug&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;, the main application after few lines hangs. Any suggestions?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221255?ContentTypeID=1</link><pubDate>Thu, 21 Nov 2019 09:32:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dc171053-c32e-48ee-82f8-5681fa50658c</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Thanks for the update. It sounds like you may have found a solution to this. I also think the&amp;nbsp;&lt;a title="Libuarte - advanced UARTE driver" href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v16.0.0/lib_libuarte.html?cp=6_1_3_27"&gt;Libuarte - advanced UARTE driver&lt;/a&gt;&amp;nbsp;might&amp;nbsp;be an alternative to consider. I haven&amp;#39;t tried it with the bootloader, but&amp;nbsp;you can use larger DMA buffers if it works.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Extend Serial DFU</title><link>https://devzone.nordicsemi.com/thread/221063?ContentTypeID=1</link><pubDate>Wed, 20 Nov 2019 12:26:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2b5255fb-a681-460d-a177-416c59554d9c</guid><dc:creator>schef</dc:creator><description>&lt;p&gt;I found a possible solution. I added &lt;strong&gt;app_timer&lt;/strong&gt; and was feeding all TX bytes to a buffer and in a separate callback which was triggered from timer emptying the same buffer using &lt;strong&gt;nrf_drv_uart_tx&lt;/strong&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>