<?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: using SDK SHELL with Serial Manager on USB CDC Interface.</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1648118#M24995</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/127458"&gt;@mhanuel&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;Did you manage to have &lt;SPAN&gt;a basic demo using the SHELL module of SDK with&amp;nbsp;the&amp;nbsp;CDC USB interface?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I am trying to do the same thing.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 10 May 2023 18:36:24 GMT</pubDate>
    <dc:creator>Mc2023</dc:creator>
    <dc:date>2023-05-10T18:36:24Z</dc:date>
    <item>
      <title>using SDK SHELL with Serial Manager on USB CDC Interface.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1088739#M9480</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am trying to get working a basic demo of using the SHELL module of SDK with&amp;nbsp;the&amp;nbsp;CDC USB interface for RT1010.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After merging the shell demo&amp;nbsp;app with the hello world cdc demo app, I cannot receive correctly the data from serial interface.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is the Shell demo alone works perfect but I need non blocking mode, then hello world cdc demo works perfect on non blocking mode. When merging I can debug the serial reception to the ISR of Serial Manager callback, such as i send some serial command and make a breakpoint in&amp;nbsp;&lt;EM&gt;SerialManager_RxCallback&amp;nbsp;&lt;/EM&gt;function, but then I am seeing that the code never reach the function&amp;nbsp;&lt;EM&gt;SerialManager_Task(handle);&amp;nbsp;&lt;/EM&gt; which is the point of non blocking, instead of calling&amp;nbsp;&lt;EM&gt;SHELL_Task(s_shellHandle);&amp;nbsp;&lt;/EM&gt;from the main loop as this will block until exit. After getting the ISR and calling&amp;nbsp;&lt;EM&gt;SerialManager_Task,&amp;nbsp;&lt;/EM&gt;this indeed whould call the registered callback , such as&amp;nbsp;&lt;EM&gt;serialWriteHandle-&amp;gt;callback.&amp;nbsp;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Under&amp;nbsp;&lt;EM&gt;SHELL_SerialManagerRxCallback,&lt;/EM&gt; when non blocking is enable, the call to&amp;nbsp;&lt;EM&gt;SHELL_Task is produced.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now what I have found is that a consequence of something a I am probably missing, after hitting the Serial Manager ISR, there is a line that checks for some buffer existence, such as&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;if ((handle-&amp;gt;openedReadHandleHead != NULL) &amp;amp;&amp;amp; (handle-&amp;gt;openedReadHandleHead-&amp;gt;transfer.buffer != NULL))&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;This buffer is NULL in fact.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have seen that the only place where this buffer is initialize is under the function&amp;nbsp;&lt;EM&gt;SerialManager_ReadNonBlocking,&amp;nbsp;&lt;/EM&gt;I have try to call this function before hand but then I noticed that further down in the&amp;nbsp;&lt;EM&gt;SerialManager_RxCallback,&amp;nbsp;&lt;/EM&gt;after I have received the data there is an if clause which enter to not do anything such as&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if (handle-&amp;gt;openedReadHandleHead-&amp;gt;transfer.length &amp;gt; handle-&amp;gt;openedReadHandleHead-&amp;gt;transfer.soFar)&lt;BR /&gt; {&lt;/P&gt;&lt;P&gt;// HERE IS WHERE MY CODE ENDS&amp;nbsp;&lt;BR /&gt; }&lt;BR /&gt; else&lt;BR /&gt; {&lt;BR /&gt; if (kSerialManager_TransmissionBlocking == handle-&amp;gt;openedReadHandleHead-&amp;gt;transfer.mode)&lt;BR /&gt; {&lt;BR /&gt; handle-&amp;gt;openedReadHandleHead-&amp;gt;transfer.buffer = NULL;&lt;BR /&gt; }&lt;BR /&gt; else&lt;BR /&gt; {&lt;BR /&gt; handle-&amp;gt;openedReadHandleHead-&amp;gt;transfer.status = kStatus_SerialManager_Success;&lt;/P&gt;&lt;P&gt;#if defined(OSA_USED)&lt;/P&gt;&lt;P&gt;#if (defined(SERIAL_MANAGER_USE_COMMON_TASK) &amp;amp;&amp;amp; (SERIAL_MANAGER_USE_COMMON_TASK &amp;gt; 0U))&lt;BR /&gt; handle-&amp;gt;commontaskMsg.callback = SerialManager_Task;&lt;BR /&gt; handle-&amp;gt;commontaskMsg.callbackParam = handle;&lt;BR /&gt; COMMON_TASK_post_message(&amp;amp;handle-&amp;gt;commontaskMsg);&lt;BR /&gt;#else&lt;BR /&gt; (void)OSA_EventSet((osa_event_handle_t)handle-&amp;gt;event, SERIAL_EVENT_DATA_RECEIVED);&lt;BR /&gt;#endif&lt;/P&gt;&lt;P&gt;#else&lt;BR /&gt; SerialManager_Task(handle);&lt;BR /&gt;#endif&lt;BR /&gt; }&lt;BR /&gt; }&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does someone at NXP has experience working with this pieces of code that can help please?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Many thanks in advance,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Jul 2020 16:10:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1088739#M9480</guid>
      <dc:creator>mhanuel</dc:creator>
      <dc:date>2020-07-10T16:10:24Z</dc:date>
    </item>
    <item>
      <title>Re: using SDK SHELL with Serial Manager on USB CDC Interface.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1088740#M9481</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Manuel&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you need a professional solution for this requirement that works out-of-the-box on any 1010..1064 try the attached (with OTA and serial loading and complete AES256 code and clone protection built in) - guide at &lt;A href="https://www.utasker.com/docs/iMX/uTaskerLoader_TestDrive.pdf" rel="nofollow noopener noreferrer" target="test_blank"&gt;https://www.utasker.com/docs/iMX/uTaskerLoader_TestDrive.pdf&lt;/A&gt;&lt;BR /&gt;[&lt;EM&gt;Tip: press SW3 to enter loader or press SW9 to start application&lt;/EM&gt;]&lt;BR /&gt;It has a command shell on the LPUART (debugger's VCOM by defaultat 115kBaud) and will move it to the USB-CDC interface when connected (and enter key hit - command "quit" on LPUART if used first). There are various additional features such as USB-CDC to LPUART bridging, USB-MSD or USB speed tests, SPI parameter and file system etc...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;BR /&gt;&lt;EM&gt;[uTasker project developer for Kinetis and i.MX RT]&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt; Out&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;of&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;the&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;box i&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;MX RT and Kinetis solution &lt;SPAN class="keyword token"&gt;for&lt;/SPAN&gt; professionals preferring to concentrate on product development and completion &lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt;
&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt; Project compatibility between Kinetis and i&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;MX RT parts &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;single library&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; and accurate i&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;MX RT simulation in Visual Studio     &lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt;
&lt;SPAN class="operator token"&gt;!&lt;/SPAN&gt; Remote desktop training and remote debugging service on request                                                               &lt;SPAN class="operator 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;/CODE&gt;&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Jul 2020 20:27:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1088740#M9481</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2020-07-13T20:27:15Z</dc:date>
    </item>
    <item>
      <title>Re: using SDK SHELL with Serial Manager on USB CDC Interface.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1648118#M24995</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/127458"&gt;@mhanuel&lt;/a&gt;,&lt;/P&gt;&lt;P&gt;Did you manage to have &lt;SPAN&gt;a basic demo using the SHELL module of SDK with&amp;nbsp;the&amp;nbsp;CDC USB interface?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I am trying to do the same thing.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 18:36:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/using-SDK-SHELL-with-Serial-Manager-on-USB-CDC-Interface/m-p/1648118#M24995</guid>
      <dc:creator>Mc2023</dc:creator>
      <dc:date>2023-05-10T18:36:24Z</dc:date>
    </item>
  </channel>
</rss>

