<?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>REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process</link><description>DFU is now implemented on ipads and iphones, as well as on Android phones, and the app platform is nRF Connect. The problem is that the firmware upgrade can be achieved normally with an Android phone; The ipad can connect and read data, but it can&amp;#39;t use</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 05 Nov 2024 09:24:36 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process" /><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/509059?ContentTypeID=1</link><pubDate>Tue, 05 Nov 2024 09:24:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:40541098-0f5e-42b8-a7b7-4a8b235c21e0</guid><dc:creator>ANNY-TAO</dc:creator><description>&lt;p&gt;&lt;span&gt;Hi Vidar，&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;As you predicted, I didn&amp;#39;t make an update to the PHY request for the two connected devices in the BLE Handler!The final problem arises at the application layer, and I wasn&amp;#39;t aware of the version issue with Bluetooth before.&lt;/p&gt;
&lt;p&gt;Thank you so much for your reply！&lt;/p&gt;
&lt;p&gt;Anny&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508950?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 12:53:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ffaf7445-bcd8-4ff9-846a-acce84d2df8f</guid><dc:creator>Vidar Berg</dc:creator><description>[quote userid="135216" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508939"]callback determines the update status of the MTU:[/quote]
&lt;p&gt;Thanks, this will not interfere with the MTU exchange, so it must be something else that is handled different in your project, but it&amp;#39;s difficult to say what it is without having seen the project. Have you changed the&amp;nbsp;ble_evt_handler() compared to the ble_app_uart example?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508939?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 12:20:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:627241f2-2985-4f8e-8254-e475789249d2</guid><dc:creator>ANNY-TAO</dc:creator><description>&lt;p&gt;&lt;span&gt;Hi Vidar，&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;1.I use&lt;/span&gt;&lt;span&gt; &amp;ldquo;nrf_ble_gatt_att_mtu_periph_set&amp;rdquo;to set the MTU size of the GATT server.The GATT event callback determines the update status of the MTU:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span&gt;void gatt_evt_handler(nrf_ble_gatt_t * p_gatt,nrf_ble_gatt_evt_t const * p_evt)&lt;br /&gt;{&lt;br /&gt; if ((m_conn_handle == p_evt-&amp;gt;conn_handle) &amp;amp;&amp;amp; (p_evt-&amp;gt;evt_id == NRF_BLE_GATT_EVT_ATT_MTU_UPDATED))&lt;br /&gt; {&lt;br /&gt; NRF_LOG_INFO(&amp;quot;Data len is set to 0x%X(%d)&amp;quot;,&lt;br /&gt; p_evt-&amp;gt;params.att_mtu_effective-OPCODE_LENGTH-HANDLE_LENGTH,&lt;br /&gt; p_evt-&amp;gt;params.att_mtu_effective-OPCODE_LENGTH-HANDLE_LENGTH&lt;br /&gt; );&lt;br /&gt; }&lt;br /&gt;}&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span&gt;2.I&amp;nbsp;only tested with my project,since routine example don&amp;#39;t work on my board&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508934?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 11:50:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4341c34c-062e-47e1-a6d2-8d30b212a3e3</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi Anny,&lt;/p&gt;
[quote user="ANNY-TAO"]I just made a judgment to determine the change in the MTU value.[/quote]
&lt;p&gt;Can you post some code snippets showing how you are handling MTU and Data length extension?&lt;/p&gt;
[quote user="ANNY-TAO"]The original routine works fine on one of the boards used, and the connection works fine. But the program doesn&amp;#39;t work on my PCB board[/quote]
&lt;p&gt;Were you able to run the original ble_app_uart example on your custom board, or have you only tested with your project?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508932?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 11:24:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9955e7cf-769b-414e-ac3c-b659c6f17cba</guid><dc:creator>ANNY-TAO</dc:creator><description>&lt;p&gt;Hi Vidar，&lt;/p&gt;
[quote userid="4240" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508929"]And you have not implemented any handling of these events in your application?[/quote]
&lt;p&gt;I just made a judgment to determine the change in the MTU value.&lt;/p&gt;
[quote userid="4240" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508929"]Do you see the same issue if you&amp;nbsp;attempt to connect with the original ble_app_uart example?[/quote]
&lt;p&gt;The original routine works fine on one of the boards used, and the connection works fine. But the program doesn&amp;#39;t work on my PCB board&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508929?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 11:12:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:58301420-ecd6-49b5-8655-35d671b76fde</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello Anny,&lt;/p&gt;
&lt;p&gt;And you have not implemented any handling of these events in your application? Do you see the same issue if you&amp;nbsp;attempt to connect with the original ble_app_uart example?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508926?ContentTypeID=1</link><pubDate>Mon, 04 Nov 2024 11:11:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5638dbc2-f1da-4fbb-a357-eef6d9da5940</guid><dc:creator>ANNY-TAO</dc:creator><description>&lt;p&gt;Hello Vidar，&lt;/p&gt;
[quote userid="4240" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508790"]Does your&amp;nbsp;application use the &lt;a href="https://docs.nordicsemi.com/bundle/sdk_nrf5_v17.1.0/page/lib_ble_gatt.html"&gt;GATT module&lt;/a&gt;&amp;nbsp;to handle data length update requests? [/quote]
&lt;p&gt;Yes, I added the relevant setting functions according to the example-&amp;quot;ble_app_uart&amp;quot;,&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt; err_code = nrf_ble_gatt_init(&amp;amp;m_gatt,gatt_evt_handler);&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt; APP_ERROR_CHECK(err_code);&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt; &lt;br /&gt;&lt;strong&gt;&lt;em&gt; err_code = nrf_ble_gatt_att_mtu_periph_set(&amp;amp;m_gatt,NRF_SDH_BLE_GATT_MAX_MTU_SIZE);&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt; APP_ERROR_CHECK(err_code);&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;however,it did not work.Somehow, the program went into NRF_FAULT_ID_SD_ASSERT state after receiving a 0X22 error reply.Do I need to do anything extra in the handler？&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m looking forward for your reply!&lt;/p&gt;
&lt;p&gt;Anny&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508790?ContentTypeID=1</link><pubDate>Fri, 01 Nov 2024 11:00:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8716df9d-6b21-491a-aeff-67f0cc4d0efd</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello&amp;nbsp;&lt;span&gt;Anny,&lt;/span&gt;&lt;/p&gt;
[quote userid="135216" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508785"]Based on the return value 0x22, I modified the value of the MTU, with a minimum of 27 and a maximum of 251，It didn&amp;#39;t work out. And when the phone is connected, it will always be in the connecting state。Do I need to switch to any other settings?[/quote]
&lt;p&gt;Does your&amp;nbsp;application use the &lt;a href="https://docs.nordicsemi.com/bundle/sdk_nrf5_v17.1.0/page/lib_ble_gatt.html"&gt;GATT module&lt;/a&gt;&amp;nbsp;to handle data length update requests? The disconnect reason is&amp;nbsp;BLE_HCI_STATUS_CODE_LMP_RESPONSE_TIMEOUT (0x22), which indicates that either the phone or app failed to respond to a link layer control procedure request.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;span&gt;Vidar&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508785?ContentTypeID=1</link><pubDate>Fri, 01 Nov 2024 10:32:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fe20c169-fafe-46c9-bb9e-b384c605c395</guid><dc:creator>ANNY-TAO</dc:creator><description>&lt;p&gt;Hello Vidar,&lt;/p&gt;
[quote userid="4240" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508758"]Do you know what caused the jump address to become invalid?[/quote]
&lt;p&gt;Unfortunately, I&amp;#39;m not very clear about this. However, after I modify the definition symbol __ICFEDIT_region_RAM_start__ address in the icf file, the DFU function can be implemented normally. I haven&amp;#39;t tried more situations yet.&lt;/p&gt;
[quote userid="4240" url="~/f/nordic-q-a/115981/request-an-ios-version-dfu-upgrade-process/508758"]Could you please provide more information&amp;nbsp;about how the connection is failing to establish?[/quote]
&lt;p&gt;If you connect with an iPhone phone, the following reply will appear：&lt;/p&gt;
&lt;p&gt;00&amp;gt; Connected. conn_handle:0x0000&lt;br /&gt;00&amp;gt; Connected. conn_Param:24,24,0,72&lt;br /&gt;00&amp;gt; &amp;lt;info&amp;gt; app: conn_Param Updata : 24,24,0,72&lt;br /&gt;00&amp;gt; &amp;lt;info&amp;gt; app: Disconnected. conn_handle: 0x0, reason: 0x22&lt;/p&gt;
&lt;p&gt;Based on the return value 0x22, I modified the value of the MTU, with a minimum of 27 and a maximum of 251，It didn&amp;#39;t work out. And when the phone is connected, it will always be in the connecting state。Do I need to switch to any other settings?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508758?ContentTypeID=1</link><pubDate>Fri, 01 Nov 2024 08:03:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:db35ea96-effd-41f3-9ad4-dec56045d9a9</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello Anny,&lt;/p&gt;
[quote user="ANNY-TAO"]As you said it&amp;#39;s an issue with the initial jump address, I already found out yesterday.[/quote]
&lt;p&gt;Do you know what caused the jump address to become invalid? The DFU client (iPad or iPhone) does not control the boot sequence.&lt;/p&gt;
[quote user="ANNY-TAO"]One of the more strange problems is found at the moment, because the previous version of the iPad version 16.6.1 was used to implement the Bluetooth connection, but when using the iPhone with the iOS version 18, the Bluetooth connection could not be realized. Will the Bluetooth connection of the NRF52832 be related to the system version? Do I need to set any relevant parameters?[/quote]
&lt;p&gt;Could you please provide more information&amp;nbsp;about how the connection is failing to establish? I haven&amp;#39;t noticed any Bluetooth related changes after updating my phone to iOS 18.0.1. I&amp;#39;ve also&amp;nbsp;performed DFU with the nRF5 SDK without issues.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508742?ContentTypeID=1</link><pubDate>Fri, 01 Nov 2024 01:16:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:20a88b4e-3d80-4534-a7e9-e5178a36e7ae</guid><dc:creator>ANNY-TAO</dc:creator><description>&lt;p&gt;Hello Vidar,thanks a lot for your reply.&lt;/p&gt;
&lt;p&gt;As you said it&amp;#39;s an issue with the initial jump address, I already found out yesterday.&lt;/p&gt;
&lt;p&gt;One of the more strange problems is found at the moment, because the previous version of the iPad version 16.6.1 was used to implement the Bluetooth connection, but when using the iPhone with the iOS version 18, the Bluetooth connection could not be realized. Will the Bluetooth connection of the NRF52832 be related to the system version? Do I need to set any relevant parameters?&lt;/p&gt;
&lt;p&gt;Best regards，&lt;/p&gt;
&lt;p&gt;Anny&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: REQUEST AN IOS VERSION DFU UPGRADE PROCESS</title><link>https://devzone.nordicsemi.com/thread/508662?ContentTypeID=1</link><pubDate>Thu, 31 Oct 2024 12:43:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6a3b679e-8c4d-4062-a406-0ee1dd8bacb5</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
[quote user=""]00&amp;gt; &amp;lt;debug&amp;gt; nrf_dfu_validation: CRC check of app failed. Return 1[/quote]
&lt;p&gt;The debug message indicates that the computed checksum of the application does not match the expected checksum stored in the bootloader settings page. However, the bootloader is allowed to boot the image anyway, as you are using the debug variant of the bootloader, which sets the NRF_DFU_DEBUG flag. This suggests that the application image was altered after the DFU was completed. It&amp;#39;s strange that this only happens with iOS/ipadOS and not Android.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Can you read out the flash after completing DFU with Android and iOS to compare the differences? You can do this with nrfjprog.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;$ nrfjprog --memrd &amp;lt;application start address&amp;gt; --n &amp;lt;size of application image in bytes&amp;gt; &amp;gt; app_image.txt&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>