How can I test and debug my USB HID or Bluetooth HID device?

How can I test and debug my USB HID or Bluetooth HID device?

Applies to: Docklight Scripting, Article ID: dl_faq040

You can use Docklight Scripting to access HID “Custom Class” devices, but also HID input devices like game controllers that are not exclusively reserved by Windows. Docklight Scripting allows you to send HID Output Reports or receive HID Input Reports.

You can use both, a HID report-based approach that shows you the individual outgoing / incoming reports. Or an application-layer approach where you only display the actual payload data (e.g. a text-based protocol you implemented), but not the original report frame including report ID (if used) and trailing zero fill bytes.

NOTES:
* You cannot access Mouse/Keyboard devices that are a standard Windows input device. Windows immediately opens these for exclusive access and does not allow a second client application to control them.

* To comply with early Windows 10 behavior, USB HID devices are opened with Access Mode = Shared. So you can actually tap into other application connections and use Docklight Scripting to protocol the device responses, but you will not see the Output Reports the other Windows application (besides Docklight Scripting) sends to the device.

* Current support is for Output Reports and Input Reports. If you require sending a Feature Report and evaluating the device response, please contact us and we can discuss a possible solution.

* A simple way to obtain a text list of all HID devices on your devices is the testing tool from the known Signal11 HIDAPI. Please see the below link for an easy to use download and additional explanations.

* Another useful application for finding your HID device is Uwe Sieber’s UsbTreeView / USB Device Tree Viewer.

Docklight Scripting Manual – Project Settings for USB HID

How to list all HID devices on my PC including USB device path – signal11_hidapi_test.zip

Uwe Sieber’s UsbTreeView / USB Device Tree Viewer – Description and Download