<?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: USBD_STATUS_CANCELED in USB bulk transfer in i.MX RT Crossover MCUs</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1597126#M23668</link>
    <description>&lt;P&gt;Hello Omar,&lt;/P&gt;&lt;P&gt;thanks for your help.&lt;/P&gt;&lt;P&gt;I am using an SDK example as the base but as NXP doesn't have a streaming example I modified it a little bit. The normal non streaming SDK examples are running but that's an entire different use case, I can't draw conclusions from that.&lt;/P&gt;&lt;P&gt;Yes,&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;USB_DeviceCdcAcmSend&amp;nbsp; returns error codes, I am receiving ONLY&amp;nbsp; kStatus_USB_Busy&amp;nbsp; (that's making sense) but no other error code.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;best regards&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Matthias&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 10 Feb 2023 08:06:21 GMT</pubDate>
    <dc:creator>ingdb</dc:creator>
    <dc:date>2023-02-10T08:06:21Z</dc:date>
    <item>
      <title>USBD_STATUS_CANCELED in USB bulk transfer</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1589967#M23501</link>
      <description>&lt;P&gt;Dear all,&lt;/P&gt;&lt;P&gt;we're working on a RT1176 and we're testing USB communication&lt;/P&gt;&lt;P&gt;the firmware code is quite simple, we're using bulk transfer&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;uint8_t WriteUsb(const uint8_t *data, uint32_t size) {
	usb_status_t error = kStatus_USB_Error;
	error = USB_DeviceCdcAcmSend(s_UsbInterface0CicVcom.cdcAcmHandle,
	USB_DIC_VCOM_IN_ENDPOINT, data, size);

	if (error != kStatus_USB_Success) {
		if (error != kStatus_USB_Busy)
			PRINTF("kStatus :%d \n", error);
		return false;
	}
	return true;

}

#define bufSize  126
void DirectStream() {
	uint16_t val = 0;
	while (1) {

		static uint8_t buf[bufSize];
		for (int i = 0; i &amp;lt; 7500; i++) {
			for (int j = 0; j &amp;lt; bufSize; j += 2) {
				memcpy(buf + j, &amp;amp;val, 2);
				val++;
			}
			while (WriteUsb(buf, bufSize) == 0);
		}
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We're receiving and verifying the data on a Windows and Linux PC, but for both systems, we have after some seconds a USBD_STATUS_CANCELLED error.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="ingdb_0-1675098181379.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/208832i66B9D4ABD695FE0A/image-size/medium?v=v2&amp;amp;px=400" role="button" title="ingdb_0-1675098181379.png" alt="ingdb_0-1675098181379.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;I am trying to understand this behavior, I found indications that this could be caused by the host PC but I am not sure if it's firmware related. The&amp;nbsp;USB_DeviceCdcAcmSend function never returns an error (except kStatus_USB_Busy).&lt;/P&gt;&lt;P&gt;Can anyone shed some light on this?&lt;/P&gt;&lt;P&gt;best regards&lt;/P&gt;&lt;P&gt;Matthias&lt;/P&gt;</description>
      <pubDate>Mon, 30 Jan 2023 17:11:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1589967#M23501</guid>
      <dc:creator>ingdb</dc:creator>
      <dc:date>2023-01-30T17:11:33Z</dc:date>
    </item>
    <item>
      <title>Re: USBD_STATUS_CANCELED in USB bulk transfer</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1596894#M23662</link>
      <description>&lt;P&gt;Hello&lt;BR /&gt;Hope you are well.&lt;/P&gt;
&lt;P&gt;To check if this issue is caused by the firmware or the host I suggest you test it with one of our SDK examples.&lt;BR /&gt;USB_DeviceCdcAcmSend checks whether the endpoint is sending a packet if the pipe is busy, it ignores this transfer by returning an error code.&lt;/P&gt;
&lt;P&gt;Best regards,&lt;BR /&gt;Omar&lt;/P&gt;</description>
      <pubDate>Thu, 09 Feb 2023 23:15:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1596894#M23662</guid>
      <dc:creator>Omar_Anguiano</dc:creator>
      <dc:date>2023-02-09T23:15:08Z</dc:date>
    </item>
    <item>
      <title>Re: USBD_STATUS_CANCELED in USB bulk transfer</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1597126#M23668</link>
      <description>&lt;P&gt;Hello Omar,&lt;/P&gt;&lt;P&gt;thanks for your help.&lt;/P&gt;&lt;P&gt;I am using an SDK example as the base but as NXP doesn't have a streaming example I modified it a little bit. The normal non streaming SDK examples are running but that's an entire different use case, I can't draw conclusions from that.&lt;/P&gt;&lt;P&gt;Yes,&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;USB_DeviceCdcAcmSend&amp;nbsp; returns error codes, I am receiving ONLY&amp;nbsp; kStatus_USB_Busy&amp;nbsp; (that's making sense) but no other error code.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;best regards&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Matthias&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 10 Feb 2023 08:06:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/USBD-STATUS-CANCELED-in-USB-bulk-transfer/m-p/1597126#M23668</guid>
      <dc:creator>ingdb</dc:creator>
      <dc:date>2023-02-10T08:06:21Z</dc:date>
    </item>
  </channel>
</rss>

