AnsweredAssumed Answered

USB <Virtual_com demo> output queue full problem

Question asked by Markku Pulsa on Sep 25, 2013
Latest reply on Sep 30, 2013 by Ian Ridge

Hi,

Tested virtual com in TWR-K60N512 with TeraTerm (v4.75) running in Win7. MQX 4.0.2 and CW10.4 are used.
Character send and echo is OK when pressed by keyboard.
But when sending a testfile (35kb) the output queue became full and characters are not echoed any more.

The following if-test is always false in usb_cdc.c:
uint_8 USB_Class_CDC_Send_Data()
  if(((uint_8)(producer - consumer)) != (uint_8)(CDC_MAX_QUEUE_ELEMS))

Meaning that data is not sent anymore althought there is data in queue.


Increased CDC_MAX_QUEUE_ELEMS from 16 to 128, didn't help.

 

Does this kind of file send work in your build/environment? And after file send character echo works OK?
Or is the problem in USB stack?

Do you know if the <Freescale USB Stack v4.1.1> works better?

Transmit delay in TeraTerm may help, but that delay cannot be implemented into our Application from where

the data communication is handled. Purpose is to run 921600 baud full duplex.
 
Following projects are used:
C:\Freescale\Freescale_MQX_4_0\usb\device\examples\cdc\virtual_com\cw10\cdc_vcom_twrk60n512
C:\Freescale\Freescale_MQX_4_0\usb\device\build\cw10\usbd_twrk60n512

 

~Mark

Outcomes