title: USB control message to endpoint 0x80 in libusb-1?
body: <p>USB soundcard Creative X-Fi switches from USB1.1 to USB2.0 when its proprietary windows driver is used, allowing faster samplerates in its USB2 configuration. A capture of USB packets by wireshark shows several commands are sent by the proprietary driver just before the device disconnects and re-connects at USB2. I am trying to replay the commands to the device in linux, to be able to add the same feature to the existing linux usb-audio driver.</p>
  <p>I want to use python, presumably the libusb1 wrapper around libusb-1 library. The captured packet shows the driver sends usb control request to endpoint 0x80 with wIndex 0. Please is there a way to format and send such a packet with libusb-1? I found this answer <a href="https://stackoverflow.com/a/39343813/15717902">https://stackoverflow.com/a/39343813/15717902</a> but do not know if it still holds.</p>
  <p>The captured packet:</p>
  <pre><code>USB URB
      [Source: host]
      [Destination: 3.5.0]
      USBPcap pseudoheader length: 28
      IRP ID: 0xfffffa8009ebd3e0
      IRP USBD_STATUS: USBD_STATUS_SUCCESS (0x00000000)
      URB Function: URB_FUNCTION_VENDOR_OTHER (0x0020)
      IRP information: 0x00, Direction: FDO -&gt; PDO
      URB bus id: 3
      Device address: 5
      Endpoint: 0x80, Direction: IN
      URB transfer type: URB_CONTROL (0x02)
      Packet Data Length: 8
      [Response in: 20]
      Control transfer stage: Setup (0)
      [bInterfaceClass: Unknown (0xffff)]
  Setup Data
      bmRequestType: 0xc3
      bRequest: 42
      wValue: 0x0000
      wIndex: 0 (0x0000)
      wLength: 2
  </code></pre>