<?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>i.MX RT Crossover MCUsのトピックRe: SDK example for WICED based M.2 WiFi</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906872#M3164</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jamie,&lt;/P&gt;&lt;P&gt;not more than whats already in here, you should be able to get it running with that (and some digging and investigation of the original code for the WINC)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 10 Dec 2019 06:36:18 GMT</pubDate>
    <dc:creator>carstengroen</dc:creator>
    <dc:date>2019-12-10T06:36:18Z</dc:date>
    <item>
      <title>SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906846#M3138</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;I'm trying out the "evkmimxrt1060_wiced_iperf" example project for M.2 based WiFi. I notice it builds with FreeRTOS. I'd like to not use an RTOS in my code-base. Does the WICED M.2 WiFi code require RTOS? Is there an easy way to exclude it? Is there some #ifdef or compiler #symbol I'm not noticing to do so?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 May 2019 15:20:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906846#M3138</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-05-24T15:20:36Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906847#M3139</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;SPAN class=""&gt;&lt;STRONG&gt;&lt;A _jive_internal="true" data-avatarid="-1" data-content-finding="Community" data-userid="335361" data-username="mspenard603@gmail.com" href="https://community.nxp.com/people/mspenard603@gmail.com"&gt;Mike Spenard&lt;/A&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Yes, the evkmimxrt1060_wiced_iperf SDK examples is based on the amazon freertos, this project can't be selected as none freertos.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; You can find, even the wifi driver, also have the freertos code, so, the SDK wifi project code is mixed with freertos.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; We still don't have the baremetal code for wiced based m.2 wifi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Kerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 May 2019 08:59:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906847#M3139</guid>
      <dc:creator>kerryzhou</dc:creator>
      <dc:date>2019-05-28T08:59:26Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906848#M3140</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Kerry. I understand, as&amp;nbsp;M.2 WiFi&amp;nbsp;is new to the April SDK 2.5.1 release. Do you know if conventional bare-metal drivers are on the horizon?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 28 May 2019 11:57:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906848#M3140</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-05-28T11:57:04Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906849#M3141</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;SPAN class=""&gt;&lt;A _jive_internal="true" class="" data-content-finding="Community" data-userid="335361" data-username="mspenard603@gmail.com" href="https://community.nxp.com/people/mspenard603@gmail.com"&gt;Mike Spenard&lt;/A&gt;&lt;/SPAN&gt;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; As I know, there no bare-metal plan, but I will help you to transfer your requirement to our according department when we collect the SDK suggestions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Kerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 May 2019 03:06:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906849#M3141</guid>
      <dc:creator>kerryzhou</dc:creator>
      <dc:date>2019-05-29T03:06:23Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906850#M3142</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Kerry,&lt;/P&gt;&lt;P&gt;&amp;nbsp;That would be great. As I'd like to add this M.2 interface to our product. If they could cook up conventional drivers in a few months that would be very helpful. I assume the Cypress WICED SDK has something further they could use as a starting point(?).&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 May 2019 12:25:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906850#M3142</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-05-29T12:25:23Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906851#M3143</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mike,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; In my opinion, you also can try to learn our SDK code with freertos, then try to modify the wifi driver without the freertos, because, even I post your suggest, I am not sure it is acceptable, and the bare-metal for wifi code is not guaranteed.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; About the Cypress WICED SDK, you also can check it with cypress, whether their side have the according bare-metal driver or not.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Kerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 May 2019 05:48:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906851#M3143</guid>
      <dc:creator>kerryzhou</dc:creator>
      <dc:date>2019-05-30T05:48:31Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906852#M3144</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Understood...subsequent question... What other WiFi interface options do I have?&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jun 2019 16:02:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906852#M3144</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-05T16:02:40Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906853#M3145</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mike,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; Do you mean WICED M.2 WiFi interface?&lt;/P&gt;&lt;P&gt;&amp;nbsp; It's better to check that wifi module datasheet, you can find that module datasheet from the wifi module company's website.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Kerry&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 02:02:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906853#M3145</guid>
      <dc:creator>kerryzhou</dc:creator>
      <dc:date>2019-06-06T02:02:15Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906854#M3146</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No no, I mean in general. What other WiFi interface options do I have with the iMXRT? Any that don't require an RTOS?&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 11:54:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906854#M3146</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-06T11:54:48Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906855#M3147</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mike,&lt;/P&gt;&lt;P&gt;I don't know if it is of any help or not, but I'm using &lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;ATWINC1510&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;module together with LwIP (on multiple NXP platforms). The &lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;ATWINC1510&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;has a passthru mode that lets it interface very nicely with LwIP.&lt;/P&gt;&lt;P&gt;Just a headsup if you look for something else.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 12:00:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906855#M3147</guid>
      <dc:creator>carstengroen</dc:creator>
      <dc:date>2019-06-06T12:00:52Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906856#M3148</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ooo that sounds promising.... Who makes this part?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 12:04:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906856#M3148</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-06T12:04:32Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906857#M3149</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry, its ATWINC1510 (and not WILC....).&lt;/P&gt;&lt;P&gt;And a headsup, you want the version with firmware 19.6.1 (this is a orderable part)&lt;/P&gt;&lt;P&gt;Do a search, not sure about policies here about mentioning other vendors :smileywink:&lt;/P&gt;&lt;P&gt;Otherwise, shoot me a PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 12:07:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906857#M3149</guid>
      <dc:creator>carstengroen</dc:creator>
      <dc:date>2019-06-06T12:07:59Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906858#M3150</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ah, found it. Any details or code snippets on LWIP integration with its SPI(?) drivers?&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 12:29:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906858#M3150</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-06T12:29:59Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906859#M3151</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mike,&amp;nbsp;&lt;/P&gt;&lt;P&gt;some random stuff from one of my projects:&lt;/P&gt;&lt;P&gt;Init of Wifi and LwIP:&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt; 
 tstrWifiInitParam param&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 tstrEthInitParam ethParam&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 int8_t ret&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

 &lt;SPAN class="token function"&gt;memset&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;uint8_t &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;param&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;sizeof&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;tstrWifiInitParam&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;memset&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;uint8_t &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;ethParam&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;sizeof&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;tstrEthInitParam&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;



 &lt;SPAN class="comment token"&gt;//startWShark("wifi.pcap", LINKTYPE_ETHERNET);&lt;/SPAN&gt;
 &lt;SPAN class="comment token"&gt;//startWShark("wifi.pcap", LINKTYPE_RAW);&lt;/SPAN&gt;

 ethParam&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;pfAppEthCb &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; winc_netif_rx_callback&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 ethParam&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;au8ethRcvBuf &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; rx_buf&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 ethParam&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;u16ethRcvBufSize &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; PBUF_POOL_BUFSIZE &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt; ETH_PAD_SIZE&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 ethParam&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;u8EthernetEnable &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;//For bypassing the TCPIP Stack of WINC&lt;/SPAN&gt;
 
 param&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;strEthInitParam &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ethParam&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;


 &lt;SPAN class="comment token"&gt;// Initialize Wi-Fi driver with data and status callbacks&lt;/SPAN&gt;
 param&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;pfAppWifiCb &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; wifi_cb&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;nm_bsp_init&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

 ret &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;m2m_wifi_init&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;param&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;M2M_SUCCESS &lt;SPAN class="operator token"&gt;!=&lt;/SPAN&gt; ret&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_INFO&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"m2m_wifi_init() call error!(%d)"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; ret&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;os_tsk_delete_self&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
 
 &lt;SPAN class="token function"&gt;OS_WAIT&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;500&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

 &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_INFO&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Chip ID : 0x%08X"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;unsigned&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;int&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;nmi_get_chipid&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_INFO&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"RF Revision ID : 0x%08X"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;unsigned&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;int&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;nmi_get_rfrevid&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 
 uint8_t u8IsMacAddrValid&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 uint8_t mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;M2M_MAC_ADDRES_LEN&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="comment token"&gt;// Get MAC Address from OTP memory&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;m2m_wifi_get_otp_mac_address&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;uint8_t &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;mac_addr&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;u8IsMacAddrValid&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt;u8IsMacAddrValid&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
  &lt;SPAN class="comment token"&gt;// Cannot find MAC Address from OTP. Set user define MAC address&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_ERR&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"No valid MAC address!"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
  &lt;SPAN class="comment token"&gt;// Note - Address should be read from LSB to MSB&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_INFO&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"MAC address: %02X:%02X:%02X:%02X:%02X:%02X"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;2&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;3&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; mac_addr&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;5&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; 
 
 
 
 &lt;SPAN class="comment token"&gt;// Need to protect this&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;sys_lock_tcpip_core&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="comment token"&gt;/* Add WINC1500 STA interface. */&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;netif_add&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;winc_netif_sta&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;ip_addr&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;ip_addr&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;ip_addr&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; cbInitNetIF&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; tcpip_input&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;// netif_set_default(&amp;amp;winc_netif_sta);&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;setDefaultNetIFWifiHandler&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;netif_set_status_callback&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;winc_netif_sta&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; cbWifiNetIFStatus&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;netif_set_link_callback&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;winc_netif_sta&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; cbWifiLinkStatus&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 
 &lt;SPAN class="token function"&gt;netbiosns_init&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;netbiosns_set_name&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"Peacock"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="token function"&gt;sys_unlock_tcpip_core&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Loop passing packets&amp;nbsp;to Wifi device:&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;  &lt;SPAN class="comment token"&gt;// Handle pending events from network controller&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;os_sem_wait&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;semWiFi&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;!=&lt;/SPAN&gt; OS_R_TMO&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
   &lt;SPAN class="token function"&gt;m2m_wifi_handle_events&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;NULL&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

  &lt;SPAN class="comment token"&gt;// Needs to be changed to sem/etc&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;gTX&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   &lt;SPAN class="keyword token"&gt;extern&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;unsigned&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;char&lt;/SPAN&gt; tx_buf&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   ret &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;m2m_wifi_send_ethernet_pkt&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;tx_buf&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; gTX&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;   
   &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;M2M_SUCCESS &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; ret&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="comment token"&gt;//messageDebug(DBG_INFO, __MODULE__, __LINE__, "ETH data transmit, length=%i", gTX);&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_ERR&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"Could NOT ETH data transmit, length=%i"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; gTX&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
   gTX&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Callback function for handling packets from WiFi device (and sending them into LwIP:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;//---------------------------------------------------------------------------------------&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;// Receive packets from the winc under HIF thread context.&lt;/SPAN&gt;
&lt;SPAN class="comment token"&gt;//---------------------------------------------------------------------------------------&lt;/SPAN&gt;
&lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;winc_netif_rx_callback&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;uint8 msg_type&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt; msg&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;ctrl_buf&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
 uint16_t sz&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 uint16_t rem&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="keyword token"&gt;struct&lt;/SPAN&gt; pbuf &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;p&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 uint8_t &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;b&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 tstrM2mIpCtrlBuf &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;ctrl &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;tstrM2mIpCtrlBuf &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;ctrl_buf&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

 
 &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;msg_type &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; M2M_WIFI_RESP_ETHERNET_RX_PACKET&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
  
  sz &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ctrl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;u16DataSize&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  rem &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ctrl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;u16RemainingDataSize&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;sz &lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;sizeof&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   &lt;SPAN class="token function"&gt;messageDebug&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;DBG_ERR&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __MODULE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; __LINE__&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"ETH data received, length=%i"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; sz&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="comment token"&gt;// Reload memory buffer for further incoming packets&lt;/SPAN&gt;
   &lt;SPAN class="token function"&gt;m2m_wifi_set_receive_buffer&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;sizeof&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
  &lt;SPAN class="comment token"&gt;// messageDebug(DBG_INFO, __MODULE__, __LINE__, "ETH data received, length=%i", sz);&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;

  
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   rx_first &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; rx_last &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;pbuf_alloc&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;PBUF_RAW&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PBUF_POOL_BUFSIZE&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PBUF_POOL&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; NULL&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;LINK_STATS_INC&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;link&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;memerr&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;LINK_STATS_INC&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;link&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;drop&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;m2m_wifi_set_receive_buffer&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;sizeof&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
   &lt;SPAN class="token function"&gt;memcpy&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;uint8_t &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;rx_first&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;payload&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; ETH_PAD_SIZE&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; rx_buf&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; sz&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
  p &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;pbuf_alloc&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;PBUF_RAW&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PBUF_POOL_BUFSIZE&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PBUF_POOL&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; rx_last&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
&lt;SPAN class="property macro token"&gt;#if ETH_PAD_SIZE&lt;/SPAN&gt;
   sz &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ETH_PAD_SIZE&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="property macro token"&gt;#endif &lt;/SPAN&gt;&lt;SPAN class="comment token"&gt;// #if ETH_PAD_SIZE&lt;/SPAN&gt;
   rx_last&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;tot_len &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; sz &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; rem&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
  rx_last&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;len &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; sz&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  
 
  &lt;SPAN class="comment token"&gt;// When packet is complete, send it to the right lwIP interface&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt;rem&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ERR_OK &lt;SPAN class="operator token"&gt;!=&lt;/SPAN&gt; winc_netif_sta&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;input&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;winc_netif_sta&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;pbuf_free&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;newPBufRecordWShark&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

   &lt;SPAN class="token function"&gt;LINK_STATS_INC&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;link&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;recv&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   rx_first &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; p&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;   
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt;p&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
     &lt;SPAN class="token function"&gt;pbuf_free&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    rx_first &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;LINK_STATS_INC&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;link&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;memerr&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;LINK_STATS_INC&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;link&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;drop&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="comment token"&gt;// Reload memory buffer for further incoming packets&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;m2m_wifi_set_receive_buffer&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;sizeof&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_buf&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="keyword token"&gt;return&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    p&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;tot_len &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; rem&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    rx_last&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;next &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; p&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
  rx_last &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; p&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first &lt;SPAN class="operator token"&gt;==&lt;/SPAN&gt; rx_last&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   sz &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; PBUF_POOL_BUFSIZE &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt; ETH_PAD_SIZE&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;rx_first&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    b &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;uint8_t &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;p&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;payload&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; ETH_PAD_SIZE&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    b &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; rx_buf&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;else&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
   b &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; p&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;payload&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
   sz &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; PBUF_POOL_BUFSIZE&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
  &lt;SPAN class="comment token"&gt;/* Reload memory buffer for further incoming packets. */&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;m2m_wifi_set_receive_buffer&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;b&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; sz&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Again, this is only snippets from the code, its relatively complex to setup, but once done, its working very nicely!&lt;/P&gt;&lt;P&gt;You need to make the BSP layers for the ATWINC device, this is also relatively simple to do.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Carsten&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 12:39:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906859#M3151</guid>
      <dc:creator>carstengroen</dc:creator>
      <dc:date>2019-06-06T12:39:18Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906860#M3152</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Very good, thank you. I'll order up a&amp;nbsp;&lt;SPAN style="color: #000000; font-size: 12px;"&gt;ATWINC1500 breakout board module. Unsure on how to order with said firmware rev. Datasheet mentions "Wi-Fi® Direct (supported till firmware release 19.5.2)". Is this the "passthru" feature you mean?&lt;BR /&gt;&lt;BR /&gt;What does your pin-config and clocking setup look like?&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 13:21:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906860#M3152</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-06T13:21:42Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906861#M3153</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mike,&lt;/P&gt;&lt;P&gt;this is the module:&amp;nbsp;&lt;A href="https://dk.farnell.com/microchip/atwinc1510-mr210pb1961/smartconnect-iot-module-2-4ghz/dp/2932046"&gt;https://dk.farnell.com/microchip/atwinc1510-mr210pb1961/smartconnect-iot-module-2-4ghz/dp/2932046&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Parntnumber is&amp;nbsp;ATWINC1510-MR210PB1961.&lt;/P&gt;&lt;P&gt;This identifies it as firmware 19.6.1. It all depends on the version of the library you will be using for the module, I'm running with a version that uses 19.6.1 (I can send that to you if needed, it has BSP layer for a LPC1788).&lt;/P&gt;&lt;P&gt;If you don't get a module with the firmware version as supported by the library, you have to update the WiFi module so it matches (which is kind of tiresome). We always order the 19.6.1, this works fine.&lt;/P&gt;&lt;P&gt;(I have also a couple of projects that uses the ATWINC1510 natively with the library for it (without LwIP), it supports sockets, UDP etc and is a fine solution for a simple application, without all the code from LwIP.&lt;/P&gt;&lt;P&gt;I have not the ATWINC on a RT device just yet, but threre is no problems doing so, you just need a SPI port and a couple of GPIO (reset, enable etc)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Below is a snippet from one of my schematics with the ATWINC1510:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/85542iE8C093D4AD1C2A45/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 13:30:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906861#M3153</guid>
      <dc:creator>carstengroen</dc:creator>
      <dc:date>2019-06-06T13:30:24Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906862#M3154</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Ah, very good. 1961 after the PB. Digikey wasn't showing me that by default.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;What is the library you mention? Feel free to send my way or a link (I assume this is a Microchip library..?).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Thank you, you've been very helpful.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 14:54:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906862#M3154</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-06T14:54:32Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906863#M3155</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mike, I have sent you a PM :smileyhappy:&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 14:56:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906863#M3155</guid>
      <dc:creator>carstengroen</dc:creator>
      <dc:date>2019-06-06T14:56:05Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906864#M3156</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I found the Microchip doc on all this:&lt;BR /&gt;&lt;A href="http://ww1.microchip.com/downloads/en/AppNotes/70005333A.pdf"&gt;http://ww1.microchip.com/downloads/en/AppNotes/70005333A.pdf&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Which explains many of the calls in your code beyond LWIP's netif_add() I recognized right away.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I'm wondering now how I get the correct "Host Driver Software" for iMXRT and MCUxpresso....???&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 15:39:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906864#M3156</guid>
      <dc:creator>mspenard603</dc:creator>
      <dc:date>2019-06-06T15:39:37Z</dc:date>
    </item>
    <item>
      <title>Re: SDK example for WICED based M.2 WiFi</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906865#M3157</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mike,&lt;/P&gt;&lt;P&gt;I have sent you most of what you need. You "just" need to adapt the BSP files in the library to use the SPI/GPIO/IRQ on the RT.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Jun 2019 16:17:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/SDK-example-for-WICED-based-M-2-WiFi/m-p/906865#M3157</guid>
      <dc:creator>carstengroen</dc:creator>
      <dc:date>2019-06-06T16:17:16Z</dc:date>
    </item>
  </channel>
</rss>

