<?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: RT1052 SDK2.7 USB CDC VCOM DeInit &amp; Reinit in i.MX RT Crossover MCUs</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086770#M9410</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Thanks for your reply.&lt;BR /&gt;1) Is this (use of my de-init &amp;amp; re-init) the proper way to tear-down and re-init the USB VCOM connection w/ USB Tasks?&lt;BR /&gt;-- Yes, It's a proper way.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;Have a great day,&lt;BR /&gt;TIC&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&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 style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&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>Mon, 13 Jul 2020 03:31:35 GMT</pubDate>
    <dc:creator>jeremyzhou</dc:creator>
    <dc:date>2020-07-13T03:31:35Z</dc:date>
    <item>
      <title>RT1052 SDK2.7 USB CDC VCOM DeInit &amp; Reinit</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086767#M9407</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What's the proper way to tear down (and bring back up again) the USB CDC Vcom when using FreeRTOS Tasks?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My usbRxTask setup is the same as the SDK demo, but the demo doesn't show how to tear down/re-init.&lt;/P&gt;&lt;P&gt;I am trying to tear down USB (usb2) when using power_mode_swtich (turning off usb2 pll, etc, then turning it back on before running usb init again). &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When I tear down &lt;STRONG&gt;AFTER&lt;/STRONG&gt; successfully connecting USB, I can't re-connect. &lt;BR /&gt;If I haven't connected yet, I can use my "de-init" code + power down clocks; then power up clocks + re-init multiple times and connect just fine, but as soon as I've connected, I can't tear down and&lt;STRONG&gt; RE&lt;/STRONG&gt;connect again.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Current code, on 1st time initialization, call device app init and also start the FreeRTOS USB_DeviceTask:&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="comment token"&gt;///USB RX Task Start...&lt;/SPAN&gt;

  &lt;SPAN class="token function"&gt;USB_DeviceApplicationInit&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="property macro token"&gt;#if USB_DEVICE_CONFIG_USE_TASK&lt;/SPAN&gt;
  &lt;SPAN class="keyword token"&gt;if&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceHandle&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="token function"&gt;xTaskCreate&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;USB_DeviceTask&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="string token"&gt;"usb device task"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;1250&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceHandle&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="operator token"&gt;&amp;amp;&lt;/SPAN&gt;s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceTaskHandle&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;!=&lt;/SPAN&gt; pdPASS&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
      &lt;SPAN class="token function"&gt;usb_echo&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"usb device task create failed!\r\n"&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="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;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Current tear down:&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;usb_device_deinit&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;void&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;USB_DeviceStop&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceHandle&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

  &lt;SPAN class="comment token"&gt;//  USB_DeviceIsrDisable(); -- doesn't exist - manually do below:&lt;/SPAN&gt;
  uint8_t irqNumber&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  uint8_t usbDeviceEhciIrq&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; USBHS_IRQS&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  irqNumber                  &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; usbDeviceEhciIrq&lt;SPAN class="punctuation token"&gt;[&lt;/SPAN&gt;CONTROLLER_ID &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt; kUSB_ControllerEhci0&lt;SPAN class="punctuation token"&gt;]&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="token function"&gt;DisableIRQ&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;IRQn_Type&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;irqNumber&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

  &lt;SPAN class="token function"&gt;USB_DeviceClassDeinit&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;CONTROLLER_ID&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

  &lt;SPAN class="token function"&gt;USB_DeviceClockDeInit&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="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;On power up, clocks are enabled via the standard flow in specific.c with&lt;/P&gt;&lt;DIV style="color: #d4d4d4; background-color: #1e1e1e; font-family: Menlo, Monaco, 'Courier New', monospace; font-weight: normal; font-size: 12px; line-height: 18px; white-space: pre;"&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #6a9955;"&gt;/* Init USB2 PLL - PLL7 */&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #d4d4d4;"&gt; &lt;/SPAN&gt;&lt;SPAN style="color: #dcdcaa;"&gt;CLOCK_InitUsb2Pll&lt;/SPAN&gt;&lt;SPAN style="color: #d4d4d4;"&gt;(&amp;amp;usb2PllConfig_PowerMode);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Then USB re-init is just the USB_DeviceApplicationInit() again:&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="keyword token"&gt;void&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;USB_DeviceApplicationInit&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="keyword token"&gt;void&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;USB_DeviceClockInit&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="property macro token"&gt;#if (defined(FSL_FEATURE_SOC_SYSMPU_COUNT) &amp;amp;&amp;amp; (FSL_FEATURE_SOC_SYSMPU_COUNT &amp;gt; 0U))&lt;/SPAN&gt;
    &lt;SPAN class="token function"&gt;SYSMPU_Enable&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;SYSMPU&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;
&lt;SPAN class="property macro token"&gt;#endif &lt;/SPAN&gt;&lt;SPAN class="comment token"&gt;/* FSL_FEATURE_SOC_SYSMPU_COUNT */&lt;/SPAN&gt;
  s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;speed &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; USB_SPEED_FULL&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;attach &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;
  s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;cdcAcmHandle &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;class_handle_t&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;NULL&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceHandle &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; NULL&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;kStatus_USB_Success &lt;SPAN class="operator token"&gt;!=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;USB_DeviceClassInit&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;CONTROLLER_ID&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;s_cdcAcmConfigList&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;amp;&lt;/SPAN&gt;s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceHandle&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;usb_echo&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"USB device init failed\r\n"&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="token function"&gt;usb_echo&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="string token"&gt;"USB device CDC virtual com demo\r\n"&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;cdcAcmHandle &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; s_cdcAcmConfigList&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;config&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;classHandle&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt;

  &lt;SPAN class="token function"&gt;USB_DeviceIsrEnable&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;USB_DeviceRun&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;s_cdcVcom&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;deviceHandle&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;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've also tried deleting the FreeRTOS task in deinit, but that crashes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there an example to show how to do this (teardown + reinit) properly?&lt;/P&gt;&lt;P&gt;I saw &lt;A _jive_internal="true" href="https://community.nxp.com/thread/529154" rel="nofollow noopener noreferrer" target="_blank"&gt;this thread on the NXP Community&lt;/A&gt;, but this is for Host, not "Device", and doesn't user FreeRTOS either...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Jul 2020 23:54:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086767#M9407</guid>
      <dc:creator>variable_andrew</dc:creator>
      <dc:date>2020-07-09T23:54:51Z</dc:date>
    </item>
    <item>
      <title>Re: RT1052 SDK2.7 USB CDC VCOM DeInit &amp; Reinit</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086768#M9408</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;Thank you for your interest in NXP Semiconductor products and &lt;BR /&gt;for the opportunity to serve you.&lt;BR /&gt;I think I need more details about your demo project, so I was wondering if you can upload the complete the project and introduce the code flow in brief, as I can help me to figure the issue out.&lt;BR /&gt;Looking forward to your reply.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;Have a great day,&lt;BR /&gt;TIC&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&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 style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&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>Fri, 10 Jul 2020 10:53:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086768#M9408</guid>
      <dc:creator>jeremyzhou</dc:creator>
      <dc:date>2020-07-10T10:53:48Z</dc:date>
    </item>
    <item>
      <title>Re: RT1052 SDK2.7 USB CDC VCOM DeInit &amp; Reinit</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086769#M9409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/jeremyzhou"&gt;jeremyzhou&lt;/A&gt;‌, &lt;/P&gt;&lt;P&gt;Looks like I got it working - issue related to the vTaskDelete for the USB Task.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Here's the project for testing USB teardown &amp;amp; re-init: &lt;A class="link-titled" href="https://github.com/andrewrt/rt1050_cdc_vcom_freertos" title="https://github.com/andrewrt/rt1050_cdc_vcom_freertos"&gt;GitHub - andrewrt/rt1050_cdc_vcom_freertos: RT1050 USB CDC VCOM FreeRTOS (w/ USB Task) demo - added connection teardown/…&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To test: press the SW button on the EVK, it will try and tear down or re-init USB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is this (use of my de-init &amp;amp; re-init) the proper way to tear-down and re-init the USB vcom connection w/ USB Tasks?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Jul 2020 20:42:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086769#M9409</guid>
      <dc:creator>variable_andrew</dc:creator>
      <dc:date>2020-07-10T20:42:45Z</dc:date>
    </item>
    <item>
      <title>Re: RT1052 SDK2.7 USB CDC VCOM DeInit &amp; Reinit</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086770#M9410</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Thanks for your reply.&lt;BR /&gt;1) Is this (use of my de-init &amp;amp; re-init) the proper way to tear-down and re-init the USB VCOM connection w/ USB Tasks?&lt;BR /&gt;-- Yes, It's a proper way.&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;Have a great day,&lt;BR /&gt;TIC&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&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 style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P style="color: #51626f; background-color: #ffffff; border: 0px; font-size: 14px;"&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>Mon, 13 Jul 2020 03:31:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1086770#M9410</guid>
      <dc:creator>jeremyzhou</dc:creator>
      <dc:date>2020-07-13T03:31:35Z</dc:date>
    </item>
    <item>
      <title>Re: RT1052 SDK2.7 USB CDC VCOM DeInit &amp; Reinit</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1169250#M10661</link>
      <description>&lt;P&gt;hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/56840"&gt;@jeremyzhou&lt;/a&gt; ,&lt;/P&gt;&lt;P&gt;I've updated the repository, and tested a bit more - if I repeatedly init and de-init the USB via the user button in the example I provided, eventually it seems the code will run out of heap space (so the de-init isn't freeing all the memory it is supposed to).&lt;/P&gt;&lt;P&gt;Could you please advise on what I'm missing in the USB de-init code to properly tear down USB?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Please refer to the updated repo for a demo - To test: press the SW button on the EVK, it will try and tear down or re-init USB.&lt;/P&gt;&lt;P&gt;Repo: &lt;A href="https://github.com/andrewrt/rt1050_cdc_vcom_freertos" target="_blank"&gt;https://github.com/andrewrt/rt1050_cdc_vcom_freertos&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 19 Oct 2020 02:45:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/RT1052-SDK2-7-USB-CDC-VCOM-DeInit-Reinit/m-p/1169250#M10661</guid>
      <dc:creator>variable_andrew</dc:creator>
      <dc:date>2020-10-19T02:45:22Z</dc:date>
    </item>
  </channel>
</rss>

