Search code examples
linuxusblibusbpyusb

Is there a way to find vendor specific usb commands?


I want to control an 8K monitor with pyusb. I know the c++ api functions from their documentation. But they don't supply the values to send for those commands. Is there a way to find what values or messages correspond to the functions to send with a libusb control transfer? E.g. getting and setting brightness, and connecting and disconnecting the monitor, on a Linux machine (Ubuntu server, while the API only supports versions of Fedora and CentOS).

https://github.com/pyusb/pyusb/blob/master/docs/tutorial.rst

https://www.dell.com/support/home/en-us/product-support/product/dell-up3218k-monitor/docs


Solution

  • There is no standard procedure to figure out vendor-specific USB commands, because they are defined by the vendor. If you can get the device software running and working on your computer, then you can use a USB traffic sniffer like WireShark or a Beagle to look at the traffic it generates and reverse engineer how it works.