Topic: WinHidDevice OutputReportByteLength is wrongly read


We have a custom HID device that has OutputReportByteLength set to 4 bytes in firmware, but when we open it in Windows, the value is equal to the InputReportByteLength, i.e. 31.

Is it Windows error ?
Linux reports correct value - HidSharp was not used there to test.


Re: WinHidDevice OutputReportByteLength is wrongly read

Do you mean GetMaxOutputReportLength()? HIDSharp gets its value from Windows's OutputReportByteLength. It does try to reconstruct the descriptor (Windows doesn't give access to it, unlike Linux and Mac), but the lengths themselves come directly from Windows.

What's your report descriptor look like? I'll bet there's something Windows handles differently or incorrectly.