<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How do I read NDEF messages &amp;gt; 512 bytes from NHS3100? in NFC</title>
    <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740343#M3153</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dries,&lt;/P&gt;&lt;P&gt;When NHS 3100 IC comes from deep power down mode, does the eeprom contents are retained? because I am writing some data in eeprom and puting it in DPD mode using Chip_PMU_PowerMode_EnterDeepPowerDown(), but after wakeup eeprom contents are not retrieved.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you have in example about it?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 27 Sep 2018 09:57:22 GMT</pubDate>
    <dc:creator>vrushali_b</dc:creator>
    <dc:date>2018-09-27T09:57:22Z</dc:date>
    <item>
      <title>How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740335#M3145</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I&amp;nbsp;need to read NDEF messages more than 512 bytes in size from the NHS3100 through NFC. I have a working application that can read NDEF messages less than 512 bytes, but it's not completely clear to me how to read more than the size of shared SRAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone have an example of how to do that?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2018 02:32:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740335#M3145</guid>
      <dc:creator>madhus</dc:creator>
      <dc:date>2018-06-01T02:32:49Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740336#M3146</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The idea is to use the NFC memory as&amp;nbsp;a 'transport' channel.&amp;nbsp;To have the Cortex M0+&amp;nbsp;provide more than half a kilobyte of data to the tag reader,&amp;nbsp;you need to generate multiple NDEF messages. The temperature logger demo application demonstrates how to do that, making use of bi-directional communication sent between phone and tag. Check in the SDK the demo application&amp;nbsp;&lt;EM&gt;app_demo_dp_tlogger&lt;/EM&gt;: the file msghandler.c will react on each incoming command and generate a corresponding response.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The execution flow here is:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;The phone&amp;nbsp;writes an NDEF message in the NFC memory.&lt;/LI&gt;&lt;LI&gt;The ARM&amp;nbsp;reads the MIME records,&amp;nbsp;interprets it and calls the appropriate handler function (in msghandler.c).&lt;/LI&gt;&lt;LI&gt;That handler function creates a response, which is dumped as payload in a MIME record.&lt;/LI&gt;&lt;LI&gt;The generate NDEF message is then copied back to the NFC memory, overwriting the data the phone has written.&lt;/LI&gt;&lt;LI&gt;The phone reads out the same NFC memory, and parses the response.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;This cycle then repeats until all data is transferred.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also be sure to read the html documentation &lt;EM&gt;&amp;lt;SDK&amp;gt;/docs/communication.html.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards,&lt;BR /&gt;Dries.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2018 12:32:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740336#M3146</guid>
      <dc:creator>driesmoors</dc:creator>
      <dc:date>2018-06-01T12:32:44Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740337#M3147</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Dries, I did look at that example and your description clarifies a lot of details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The message exchange approach works well for Android devices, but as far as I know, the iPhone does not expose NFC write capability at this time. So I believe reading large messages is the only option with the iPhone.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I was thinking of two possible solutions:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Set BYPASS bit in the CFG register and place larger messages in EEPROM&lt;/LI&gt;&lt;LI&gt;Implement low level NFC protocol using NFC communication registers (SR, CMDIN, TARGET, LAST_ACCESS etc.)&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm guessing option 1 will work, but the NHS3100 user manual says all NFC registers will be disabled in bypass mode, so you probably can't get interrupts. Also, it would be limited to EEPROM size, which is an improvement over shared RAM, but not ideal.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Option 2 sounds ideal, but I don't know how to implement it or if it's even possible. From the description of the NFC registers it appears to be possible, but I really don't know how to do that.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any recommendation would be greatly appreciated.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Jun 2018 13:18:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740337#M3147</guid>
      <dc:creator>madhus</dc:creator>
      <dc:date>2018-06-01T13:18:25Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740338#M3148</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Option 1 is not an option as it makes it impossible for the ARM processor to access the NFC memory, both reading and writing.&lt;/P&gt;&lt;P&gt;Option 2 is not an option on iOS devices, as iOS 11 only exposes reading of NDEF messages. Low level NFC commands are not allowed, as is any writing be it NFC or NDEF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The solution proposed in SDK is to rely on interrupts to know when a tag reader&amp;nbsp;completes reading an NDEF message, and to have the ARM processor follow a 'script-like' sequence to generate new NDEF messages, which are copied to the NFC memory. This eliminates the need for the tag reader to write, but deprives him of any control in what he can read. Support for this has been added in SDK 11 onwards (&lt;EM&gt;NDEFT2T&lt;/EM&gt; module,&amp;nbsp;&lt;EM&gt;NDEFT2T_MSG_READ_CB&lt;/EM&gt; diversity setting) and is implemented in the &lt;EM&gt;tlogger&lt;/EM&gt; demo under the function&amp;nbsp;&lt;EM&gt;GenerateNextAutomaticCommand&lt;/EM&gt;.&lt;/P&gt;&lt;P&gt;Have a look at it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards,&lt;BR /&gt;Dries.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 02 Jun 2018 16:05:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740338#M3148</guid>
      <dc:creator>driesmoors</dc:creator>
      <dc:date>2018-06-02T16:05:14Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740339#M3149</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, that helped considerably. I downloaded the latest SDK (11.1), built and ran the &lt;EM&gt;tlogger&lt;/EM&gt; demo. It all works as you say with Android and iPhone. I had to configure it with Android first, but then it worked fine.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I looked at the&amp;nbsp;&lt;EM&gt;GenerateNextAutomaticCommand()&lt;/EM&gt; function in &lt;EM&gt;maintlogger.c&lt;/EM&gt; and I think I generally understand how it works, but I am still a bit confused. &lt;EM&gt;GenerateNextAutomaticCommand()&lt;/EM&gt; looks like a state machine to me, with &lt;EM&gt;sIndex&lt;/EM&gt; as the current state. The code advances through each state when&amp;nbsp;&lt;EM&gt;sMessageRead&lt;/EM&gt; is true, bounces between states 2 and 3 to send multiple messages, and&amp;nbsp;terminates in state 5 (4+1, or default case label). That all makes sense, but I can't find where the state machine is reset back to state 0 after reading all measurements. I see where &lt;EM&gt;sIndex&lt;/EM&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;is set to 0 when&amp;nbsp;&lt;EM&gt;sResetAutomaticCommandGeneration&lt;/EM&gt; is true, but that appears to happen only once in&amp;nbsp;&lt;EM&gt;InitApp()&lt;/EM&gt; at startup.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What am I missing?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Jun 2018 13:20:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740339#M3149</guid>
      <dc:creator>madhus</dc:creator>
      <dc:date>2018-06-04T13:20:16Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740340#M3150</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Between two active periods the IC enter the Deep Power Down low-power mode. In this mode, SRAM is not preserved. Leaving Deep Power Down (due to a timer expiration, an NFC field detection or a toggle of the WAKE-UP pin) requires a full reset. &lt;EM&gt;InitApp()&lt;/EM&gt; will have been called again when a new communication session starts.&lt;/P&gt;&lt;P&gt;An high level overview of the different power modes can be found in &lt;EM&gt;&amp;lt;SDK&amp;gt;/docs/PowerModes.pdf&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For the current session, when the full state and all data is transferred, there is nothing left to do (according to the firmware). So it does nothing, just waiting for an incoming command (which will never happen with an iOS 11 device) or until the NFC field is removed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;Dries.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Jun 2018 07:52:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740340#M3150</guid>
      <dc:creator>driesmoors</dc:creator>
      <dc:date>2018-06-05T07:52:54Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740341#M3151</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, that makes sense. I suspected there was some kind of side effect, but I couldn't pin it down.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for all your help!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Jun 2018 13:44:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740341#M3151</guid>
      <dc:creator>madhus</dc:creator>
      <dc:date>2018-06-05T13:44:06Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740342#M3152</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you both for exploring this. You have given an&amp;nbsp;answer to a problem I struggled with on and off all summer!&lt;/P&gt;&lt;P&gt;Steve&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Aug 2018 21:02:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740342#M3152</guid>
      <dc:creator>stevewald</dc:creator>
      <dc:date>2018-08-16T21:02:12Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740343#M3153</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dries,&lt;/P&gt;&lt;P&gt;When NHS 3100 IC comes from deep power down mode, does the eeprom contents are retained? because I am writing some data in eeprom and puting it in DPD mode using Chip_PMU_PowerMode_EnterDeepPowerDown(), but after wakeup eeprom contents are not retrieved.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you have in example about it?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Sep 2018 09:57:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740343#M3153</guid>
      <dc:creator>vrushali_b</dc:creator>
      <dc:date>2018-09-27T09:57:22Z</dc:date>
    </item>
    <item>
      <title>Re: How do I read NDEF messages &gt; 512 bytes from NHS3100?</title>
      <link>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740344#M3154</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The EEPROM code snippet in the documentation (&lt;EM&gt;&amp;lt;SDK&amp;gt;/docs/firmware.html&lt;/EM&gt;, then &lt;EM&gt;Modules &amp;gt; Drivers &amp;gt;&amp;nbsp;eeprom: EEPROM driver&lt;/EM&gt;) should do: EEPROM is non-volatile memory and its contents will survive Deep power down and Power-off modes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If, after writing, the contents are not flushed, the data is only copied to&amp;nbsp;cache, and never reaches the non-volatile portion of the EEPROM. Flushing is done by calling&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;Chip_EEPROM_Flush(NSS_EEPROM, true);&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;or&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;Chip_EEPROM_DeInit(NSS_EEPROM);&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Possibly this is omitted in your code. Can you check?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best,&lt;BR /&gt;Dries.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Sep 2018 19:35:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/How-do-I-read-NDEF-messages-gt-512-bytes-from-NHS3100/m-p/740344#M3154</guid>
      <dc:creator>driesmoors</dc:creator>
      <dc:date>2018-09-27T19:35:47Z</dc:date>
    </item>
  </channel>
</rss>

