5 Replies Latest reply on Apr 8, 2019 3:27 AM by HemanthR_06

    Cyusb3 v1.2.3.20 load depending data lost issue?

    winic_291911

      Dear Cypress Community,

      Background:

      we are working with the CY7C6813A since 15 Years without any issues. We have used Cyusb3.sys driver version from 2016 until end of 2018 (last version was: 1.2.3.10).

      We switched to version 1.2.3.20 couple of weeks ago since we had to resigning our driver package anyway and therefore we like to use the latest version (1.2.3.20).

      Issue:

      After installing the new driver package (version 1.2.3.20) we discovered a strange effect on bursty bulk transfers. When the CPU load (on the host PC, where our application runs..) increases, some data packets seemed to be lost sporadically. Since we transfer huge image data chunks over bulk endpoints, image data gots shifted at the receiving end. We never had this issue with the former version of cyusb3.sys (1.2.3.10).

      We can simply enforce the issue by starting the internet Explorer while bursting data --> data packets get sporadically lost..

      It seems to be, that the size of the lost data block is always the same (unfortunately we have no data byte counter on the receiving side but the data position wrap (image-shift) looks always the same).

      So actually it looks like that there may be a potential (thread..) timimg issue with bulk package management inside the driver when Host-CPU-load increases.

      Is this possible? or is there something wrong on our side which may raise this behaviour only on the latest CyUsb3.sys-version?

      We are generally communicating through the drivers IOCTL interface in overlapped mode (using: IOCTL_ADAPT_SEND_NON_EP0_DIRECT).

      Our software hasn't change between the two different Cyusb3.sys-versions.

       

      So we are at a loss actually and appreciate your support.

       

      Thanks a lot in advance,

      Wilhelm