<?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>nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/104886/nrf-connect-sdk-2-4-2---slm-application---at-xdfuget-broken</link><description>Hi, 
 I use AT#XDFUGET from Serial Lte Modem on nRF Connect SDK 2.0.0 with success. With CONFIG_SLM_NRF52_DFU_LEGACY=1 
 Now I want to update my product with the last SLM version that support AT#XDFUGET before remove ( ) 
 SLM 2.4.2 compilation is OK</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 06 Nov 2023 07:06:48 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/104886/nrf-connect-sdk-2-4-2---slm-application---at-xdfuget-broken" /><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/454112?ContentTypeID=1</link><pubDate>Mon, 06 Nov 2023 07:06:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5da404ac-349f-4655-b6c8-a5f8ad8b057d</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;So, I heard back from the developers again, and they think they&amp;#39;ve solved this issue now. The following changes will have to be done on your end to have the SLM DFU to the nRF52840 work in NCS 2.4.0.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;nRF91 SLM:&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The download client change of new DOWNLOAD_CLIEND_EVT_CLOSED, which is critical to sync the download of init data and file image. For UART TX DMA, always do memory copy in case the legacy DDU Slip overwrites the buffer during DMA.&lt;/p&gt;
&lt;p&gt;The changes necessary can be found in&amp;nbsp;“slm_at_dfu.c” (uploaded previously and “slm_at_host.c” respectively.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/slm_5F00_at_5F00_host.c"&gt;devzone.nordicsemi.com/.../slm_5F00_at_5F00_host.c&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;nRF52 app:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;There is a major function change for the DFU function in&amp;nbsp;&lt;a href="https://github.com/nrfconnect/sdk-nrf/pull/9960"&gt;https://github.com/nrfconnect/sdk-nrf/pull/9960&lt;/a&gt;, so the cluent must handle this behavior change (from NCS 2.0.0):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;AT#XDFUGET will get “OK” right after init data is downloaded, this used to be after init data &lt;u&gt;and file image&lt;/u&gt; is downloaded.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;AT#XDFUGET will send “#XDFUGET: 1,&amp;lt;downloaded percentage&amp;gt;” unsolicited while downloading file image, and “#XDFUGET: 1, 100” means the full image was downloaded.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The new AT#XDFUSIZE command could be used to get the size of the file image if needed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The nRF52 app should swap to bootloader mode only after the full file image has been downloaded on SLM side.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After implementing these changes we were able to complete SLM to nRF52 DFU as expected (with UART HWFC disabled).&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/453416?ContentTypeID=1</link><pubDate>Wed, 01 Nov 2023 07:08:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e41fb08a-fbb3-43c8-b507-7d29fc8f0a44</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;One thing that could affect DFU is the fact that SLM has refactored UART DMA transmissions. Memory copy is removed and use direct memory access for DMA. This needs some access control which is implemented for the data mode, but not for DFU I&amp;#39;m afraid.&lt;/p&gt;
&lt;p&gt;For more details we&amp;#39;ll have to wait for next week when the expert on this is back in office I&amp;#39;m afraid.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/453348?ContentTypeID=1</link><pubDate>Tue, 31 Oct 2023 15:48:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:169e4ef9-5cae-4ac5-8c29-3a33e5a2f46b</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I&amp;#39;m sorry, but DFU and AT commands isn&amp;#39;t my area of expertise, and we&amp;#39;re short on them in tech support at the moment, so I have forwarded this to the development team. It seems my explanation wasn&amp;#39;t good enough as the fix I got was one you have tried and implemented already. Very sorry about that, but I have&amp;nbsp; reiterated the problem to the devs now and someone will hopefully look at it soon. One of the experts in the field is out of office until Nov. 6th though, so it might be as late as that before you get a reply.&lt;/p&gt;
&lt;p&gt;Sorry about the inconvenience.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/453099?ContentTypeID=1</link><pubDate>Mon, 30 Oct 2023 15:14:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d6d27d6f-ea3f-457d-a83f-d977a7b88648</guid><dc:creator>Ga&amp;#233;tan</dc:creator><description>&lt;p&gt;Hello Simon,&lt;br /&gt;Thank you for your reply. I was on vacation last week and I&amp;#39;m just getting back to work...&lt;/p&gt;
&lt;p&gt;I have the impression that you didn&amp;#39;t read my first post all the way through, because the fix you&amp;#39;re proposing is precisely the one I proposed in the first post...&lt;/p&gt;
&lt;p&gt;After handling the DOWNLOAD_CLIENT_EVT_CLOSED event, I then encountered another problem: the current_id variable in dfu_target_stream.c wasn&amp;#39;t initialized correctly. I corrected this by forcing a call to the dfu_target_nrf52_done() function.&lt;/p&gt;
&lt;p&gt;With these 2 fixes, web downloading works perfectly.&lt;/p&gt;
&lt;p&gt;Now the problem I&amp;#39;m talking about and which is totally blocking me is during the nRF52 update. &lt;br /&gt;In the log I provided in my first post, you&amp;#39;ll find an erroneous SLIP frame on line 716; this case always occurs with the same error. &amp;nbsp;I think the problem is due to the many changes that took place in slm_at_host.c between version 2.0.0 and 2.4.2.&lt;/p&gt;
&lt;p&gt;Could you please help me identify why an RS232 frame is incorrectly constructed by slm_at_host.c during nRF52 update ?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Ga&amp;eacute;tan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/451897?ContentTypeID=1</link><pubDate>Tue, 24 Oct 2023 08:04:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2a5d5030-4566-41b4-9c7e-6bb5a03329d5</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;Sorry that it took a few days to get back to you, but I had to contact the developers to make sure I got the correct answer for you. The download_client has added one more event &amp;quot;DOWNLOAD_CLIENT_EVT_CLOSED, which says &amp;quot;&lt;em&gt;Connection have been closed. Client is now idle, ready for next download&lt;/em&gt;&amp;quot;. SLM will need to wait for this event after downloading the init data before starting to download the DFU image. Some simple changes in &lt;strong&gt;slm_at_dfu.c&lt;/strong&gt; makes it work again.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Can you try the following file in NCS v2.4.2, as that should make the ATDFUGET command (and similar) stable. It is based on NCS 2.4.0 which was the last stable version.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/slm_5F00_at_5F00_dfu.c"&gt;devzone.nordicsemi.com/.../slm_5F00_at_5F00_dfu.c&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/451527?ContentTypeID=1</link><pubDate>Fri, 20 Oct 2023 13:55:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:506e8ef5-1053-4518-8231-c07d7bacb2f9</guid><dc:creator>Ga&amp;#233;tan</dc:creator><description>&lt;p&gt;Ok I understand that the team is dropping support for these AT commands, but in theory in SDK version 2.4.2, these commands are supposed to work...&lt;/p&gt;
&lt;p&gt;I would have appreciated it if this last version supporting them had been functional. Between you and me, I already think it&amp;#39;s a shame that this functionality has been removed without an effective replacement option. And it would have been nice if the latest version supporting it had been functional.&lt;/p&gt;
&lt;p&gt;To save me some time, what is the most recent SDK version that fully supports AT#DFUGET with nRF52?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF Connect SDK 2.4.2 - SLM application - AT#XDFUGET broken</title><link>https://devzone.nordicsemi.com/thread/451517?ContentTypeID=1</link><pubDate>Fri, 20 Oct 2023 13:31:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4ae537e6-0c6c-422c-9305-00330371c3aa</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;Gaétan&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;We decided to remove the DFUAT commands I&amp;#39;m afraid, as they aren&amp;#39;t very well compatible with the nRF52840, so you&amp;#39;re left with two options for what to do here.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The simplest one would be to stick to the older version of the nRF Connect SDK, but that would also be kind of a dead end in terms of future development, as you won&amp;#39;t get access to new features in new versions of the SDK. If you&amp;#39;re fine with that this is fine.&lt;/li&gt;
&lt;li&gt;You can alternatively restore the DFU implementation to SLM on their custom solution. The removal commits are available in the git and in &lt;a href="https://github.com/nrfconnect/sdk-nrf/pull/11504"&gt;this pull request&lt;/a&gt;. They are pretty well isolated, but it will require more effort than just reverting the commits as the UART implementation was refactored.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>