hid_read not returning expected data (libusb) #556
Labels
No labels
3rdparty
Android
API
Author does not respond
bsd
bug
build system/CI
ci-virtual-device
CMake
Contributions Welcome
Core
dependencies
device-specific
documentation
don't_merge
duplicate
enhancement
Example
Haiku
hidraw
hotplug
info required
invalid
libusb
macOS
Misc
Not an issue
question
Release
Test
Test GUI
Windows
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-libusb/hidapi#556
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
When using hid_read to receive data from the device (NZXT kraken x63) the expected value of the first two bytes is
0x11(report id) and0x01, however they arent always received. They are consistently received with the hidraw backend.Explanation:
The NZXT kraken x63 periodically sends a device status packet with the report id of
0x75and the first byte0x02.The command im sending it via hid_write consists of two bytes
0x10(report id) and0x01, this should make the device respond with a report id of0x11and the first byte0x01, this dosent always happen, sometimes it takes a few reads (which makes sense, a few device status packets could be queued) but other times the response isnt received at all.With the hidraw backend the response is always instantly received.
Program:
Example:
tested on linux and freebsd(libusb only) with hidapi v 13.1
Edit: formatting
A duplicate of #274 (and a known limitation).
oh, would the only solution be to use hidraw?
my main goal was to use this on freebsd
See: https://github.com/libusb/hidapi/issues/274#issuecomment-1542321797
And: https://github.com/libusb/hidapi/issues/274#issuecomment-1542947228
thanks :)