Menu

#14 Help required on LibusbK throughput measurement

closed
None
1
2018-09-06
2018-08-23
Kris
No

Hi Xiaofan Chen,

I am trying to communicate with USB2.0 Xilinx SOC board as USB device and trying to measure the throughput.
On windows side we are using Libusbk driver provided by Xilinx.

Device supports Bulk sink-source functionality using GadgetFS driver available in the Linux 4.2
Found that for continuous Bulk read for different type of message we are using two end points. One for Write and one for read.

We observed that we need to give enough delay about (5ms) between single Write and Read commands to get all the data in the application. But when we checked on the USB sniffer it is observed that packet is ready available on Windows USB port.

Are we following right approach to fetch data from the USB device?
How we can improve the troughput of the driver on windows?
Do we need to set any device specific configuration for the driver?

Best Regards,
Kris

Discussion

  • Kris

    Kris - 2018-08-28

    Hi All,

    Please can anybody help?

    Regards,
    Kris

     
  • Peter Dons Tychsen

    If you could tell a bit more about your problem that would help.
    1) What functions are you calling, etc. ?
    2) What does the device descriptors look like?
    3) What happens if you use another driver (e.g. libusb0) ?

     
  • Kris

    Kris - 2018-08-29
    Post awaiting moderation.
  • Peter Dons Tychsen

    1) Please attach a USB trace from Wireshark or your USB tracer.
    2) Try using a different driver or library to read/write with.

    Thanks,

    /pedro

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-08-31

    To OP: please do not use this place for technical support in the future -- please use libusb-win32 mailing list. Thanks.

     

    Last edit: Xiaofan Chen 2018-08-31
  • Kris

    Kris - 2018-09-01
    Post awaiting moderation.
  • Peter Dons Tychsen

    Hi K,

    I am not saying you need to switch driver. However, it is always a good idea to try various versions of the libs and drivers to figure out if it is the device or the library that is causing problems.

     
  • Peter Dons Tychsen

    You could e.g. try using libusb-win32 with libusb0 and you could try libusb-1.0 with WinUSB.

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-09-03

    To Kris: libusb-win32 mailing list is the right place to go for technical support since it goes to more people and more people will benefit from the discussion. You need to subscribe to the mailing list in order to post.

    https://sourceforge.net/projects/libusb-win32/lists/libusb-win32-devel

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-09-03

    To Kris: I agree with Peter. You can try libusb-1.0 WinUSB with the async API to see if that helps.

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-09-03

    BTW, Stmk_Write and Stmk_Read are just convinent functions to wrap around the overlapped I/O for libusbK.

    You may try the overlapped I/O (async API) to see if that helps.
    http://libusbk.sourceforge.net/UsbK3/group__ovlk.html

    On the other hand, I think you are not using the Stmk_Write and Stmk_Read efficiently. But I am not so familiar with libusbK API functions myself. That is why I think it is better to use libusb-win32 mailing list for support. In reality, libusbK is a seperate project from libusb-win32 and it has its own Sourceforge site which we only accept tickets but not technical support questions.

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-09-06

    Clost this for now. Please use libusb-win32 mailing list for further discussions.

     
  • Xiaofan Chen

    Xiaofan Chen - 2018-09-06
    • status: open --> closed
     

Log in to post a comment.