FTDI Community

General Category => Discussion - Drivers => Topic started by: GHinchliffe on September 07, 2018, 11:15:40 AM

Title: Poor throughput via USB Bulk transfer VNC2
Post by: GHinchliffe on September 07, 2018, 11:15:40 AM
Hi,
  I am building an adaptor device based around the Vinculum-II device.  This adaptor will need to maintain a throughput of around 170KB/s (bytes not bits), which should be easy via USB. 

However I am struggling to get anything above around 1.7 KB/s !!  If I strip out all mutex locks, semaphores and have the FTDI device simply throw away data it receives I manage to up that to about 10KB/s.  This is essentially just calling the IOCTL to read from the endpoint, in a loop with the maximum buffer size of 1024 bytes.  Data is being sent with a single libusb bulk transfer command from a linux host.

All USB tasks have a priority of 31, the task reading from USB is running at priority 20.  I have tried removing the vos_memset and vos_memcpy calls and this gets me an extra ~1KBs (but obviously renders the code useless)

Is there something obvious I could have overlooked? or is the VNC2 not capable of achieving the throughput I require? 

Title: Re: Poor throughput via USB Bulk transfer VNC2
Post by: FTDI Community on September 12, 2018, 09:44:56 AM
This is being handled via email and any solution will be posted here for other user's benefit.

FTDI Community