libusbk-sys 0.2.0

Rust Windows library for accessing USB devices via libusbK
Documentation

USAGE: benchmark [list]
                 [pid=] [vid=] [ep=] [intf=] [altf=]
                 [read|write|loop] [notestselect]
                 [verify|verifydetail] [composite]
                 [retry=] [timeout=] [refresh=] [priority=]
                 [mode=] [buffersize=] [buffercount=] [packetsize=]
                 [log|logread|logwrite]
                 
Commands:
         list    : Display a list of connected devices before starting. 
                   Select the device to use for the test from the list.
         listonly: list all devices and exit.  Do not perform any device I/O.
         read    : Read from the device.
         write   : Write to the device.
         loop    : [Default] Read and write to the device at the same time.

         notestselect : Skips submitting the control transfers to get/set the
                        test type.  This makes the application compatible
                        with non-benchmark firmwared. Use at your own risk!

         verify       : Verify received data for loop and read tests. Report
                        basic information on data validation errors.
         verifydetail : Same as verify except reports detail information for 
                        each byte that fails validation.
                        
Switches:
         vid        : Vendor id of device. (hex)  (Default=0x04D8)
         pid        : Product id of device. (hex) (Default=0xFA2E)
         retry      : Number of times to retry a transfer that timeout.
                      (Default = 0)
         timeout    : Transfer timeout value. (milliseconds) (Default=5000)
                      The timeout value used for read/write operations. If a
                      transfer times out more than {retry} times, the test 
                      fails and the operation is aborted.
         mode       : Sync|Async (Default=Sync) 
         buffersize : Transfer test size in bytes for reads and writes.
                      (Default=4096)
         readsize   : Transfer test size in bytes for reading only.
                      (Default=4096)
         writesize  : Transfer test size in bytes for writing only.
                      (Default=4096)
         buffercount: (Async mode only) Number of outstanding transfers on
                      an endpoint (Default=1, Max=10). Increasing this value
                      will generally yield higher transfer rates.
         refresh    : The display refresh interval. (in milliseconds)
                      (Default=1000) This also effect the running status.
         priority   : AboveNormal|BelowNormal|Highest|Lowest|Normal
                      (Default=Normal) The thread priority level to use
                      for the test.
         ep         : The loopback endpoint to use. For example ep=0x01, would
                      read from 0x81 and write to 0x01. (default is to use the
                      (first read/write endpoint(s) in the interface)
         intf       : The interface id the read/write endpoints reside in.
         altf       : The alt interface id the read/write endpoints reside in.
         log        : Enable read and write logging. Log files are saved to
                      current folder as "read.log" and "write.log".
                      
ISO Specific Switches:
         isoasap    : Transfer using ASAP.  Without this switch, transfers are
                      scheduled on specific frame numbers. Using this switch,
                      transfers are started on as soon as possible.
        
WARNING:
          This program should only be used with USB devices which implement
          one more more "Benchmark" interface(s).  Using this application
          with a USB device it was not designed for can result in permanent
          damage to the device.
          
Examples:

benchmark vid=0x0666 pid=0x0001
benchmark vid=0x4D2 pid=0x162E
benchmark vid=0x4D2 pid=0x162E buffersize=65536
benchmark read vid=0x4D2 pid=0x162E
benchmark vid=0x4D2 pid=0x162E buffercount=3 buffersize=0x2000