<?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>Mesh SDK Flash Manager</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/39882/mesh-sdk-flash-manager</link><description>Hi, 
 I&amp;#39;m testing the below example code, found on devzone, on mesh sdk 2.2.0. 
 I&amp;#39;m experiencing a strange issue on the read side. On the first read after the write I always read the old value, not the just written data. Then on the first execution of</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 07 Nov 2018 14:47:41 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/39882/mesh-sdk-flash-manager" /><item><title>RE: Mesh SDK Flash Manager</title><link>https://devzone.nordicsemi.com/thread/156346?ContentTypeID=1</link><pubDate>Wed, 07 Nov 2018 14:47:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e3b5ab7c-8763-430f-bd51-a2ff52d8ea0c</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Hi Lucio,&lt;/p&gt;
&lt;p&gt;Sorry about that. You are correct that the API is the same. For your usecase, it does not matter that the flash manager code has been updated significantly under the hood.&lt;/p&gt;
&lt;p&gt;Regarding example code, I would just take a look at one of the mesh sdk examples (light switch) &amp;amp; seeing how the flash manager code is used there (e.g. see the load_app_data() in main.c of the provisioner example).&lt;/p&gt;
&lt;p&gt;However, there have been issues with the flash_manager_wait() function. Which IRQ priority are you running the mesh in (&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.meshsdk.v2.2.0/md_doc_getting_started_mesh_interrupt_priorities.html?cp=4_1_0_1_3"&gt;see doc&lt;/a&gt; for more info)? It may be that this issue arises do to the wrong IRQ priority.&lt;/p&gt;
&lt;p&gt;It may be a better idea to use asynchronous events instead of the flash_manager_wait() function to wait. See the light &lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.meshsdk.v2.2.0/md_examples_light_switch_README.html?cp=4_1_0_4_0"&gt;switch provisioning doc&lt;/a&gt;&amp;nbsp;&amp;amp; provisioning example&amp;nbsp;for an example of this in action.&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh SDK Flash Manager</title><link>https://devzone.nordicsemi.com/thread/155921?ContentTypeID=1</link><pubDate>Mon, 05 Nov 2018 11:12:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:afa2e25e-9824-43da-adc8-5718c1f1d84a</guid><dc:creator>luciom</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;Bj&amp;oslash;rn,&lt;/p&gt;
&lt;p&gt;why you do not recommend the above code?&lt;/p&gt;
&lt;p&gt;It uses exacly the APIs listed in the 2.2.0 flash manager API documentation you mentioned.&lt;/p&gt;
&lt;p&gt;Do you have any example code?&lt;/p&gt;
&lt;p&gt;The issue I submitted in this ticket is related to the&amp;nbsp;flash_manager_wait() API which is listed in the API documentation you mentioned, but to me, it seems that it does not wait the previous write to terminate and be ready to read it back again.&lt;/p&gt;
&lt;p&gt;Maybe I&amp;#39;m missing something?&lt;/p&gt;
&lt;p&gt;Lucio&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh SDK Flash Manager</title><link>https://devzone.nordicsemi.com/thread/155513?ContentTypeID=1</link><pubDate>Thu, 01 Nov 2018 09:23:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:48dcb868-2daf-47f9-b101-8827d83d3832</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Hi Lucio,&lt;/p&gt;
&lt;p&gt;I would not recommend to use that code on the new mesh sdk v2.2.0, as the flash manager has been reworked quite a bit in v2.2.0.&lt;/p&gt;
&lt;p&gt;Have you taken a look at the &lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.meshsdk.v2.2.0/md_doc_libraries_flash_manager.html?cp=4_1_0_2_0"&gt;flash manager documentation here&lt;/a&gt;?&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh SDK Flash Manager</title><link>https://devzone.nordicsemi.com/thread/154914?ContentTypeID=1</link><pubDate>Mon, 29 Oct 2018 15:04:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:22a95e2b-d223-4693-a7d7-b64759ad0ce4</guid><dc:creator>luciom</dc:creator><description>&lt;p&gt;Hi Bjorn,&lt;/p&gt;
&lt;p&gt;the following is the devzone link:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/31170/storing-values-using-flash-manager/123933"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/31170/storing-values-using-flash-manager/123933&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Also looking to the mesh sdk docs this ssems to be the suggested way to store persistent data.&lt;/p&gt;
&lt;p&gt;Lucio&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Mesh SDK Flash Manager</title><link>https://devzone.nordicsemi.com/thread/154867?ContentTypeID=1</link><pubDate>Mon, 29 Oct 2018 12:53:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3d947e92-c2e0-4dba-b441-8a3f7209bba0</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;Hi Lucio,&lt;/p&gt;
&lt;p&gt;Could you please insert the devzone link? If the example code was written on a previous version of the mesh sdk (i.e. &amp;lt; v2.2.0), then&amp;nbsp;a probable cause may be the upgraded flash manager in mesh sdk v2.2.0. See the release notes on the v2.2.0 for more info:&lt;/p&gt;
&lt;p&gt;&amp;quot; - New Mesh Config module that provides high-level access to persistent storage. This module uses the existing Flash Manager and aims to enable multiple flash backends (including nRF5 SDK fstorage) in the future. - Moved mesh runtime configuration options to a new, type-safe mesh_opt_* API in their respective submodules. The options are stored in persistent memory through the new mesh_config module.&amp;quot;&lt;/p&gt;
&lt;p&gt;Kind Regards,&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>