4 posts / 0 new
Last post
Pawel Kuzma
WebHID API
Hi, I cant find any documentation about how to integrate your devices (for example POLY SAVI 7320) via WebHID API (https://developer.mozilla.org/en-US/docs/Web/API/WebHID_API). via collections property: https://developer.mozilla.org/en-US/docs/Web/API/HIDDevice/collections - I receive a lot of information about usage, reports ids, binary data and so on, but I dont understand what they mean and to what values I have to equal them to catch those button which I want to integrate via inputreports event is there any table where I can find what report Id mean? or what particular usage + report  Id mean?

AWhite
Good Afternoon Pawel, In general terms WebHID is just an API on top of standard HID, meaning that on connecting to a device you can enumerate the device meta data (HID usage pages/usages) to discover the supported input, output and feature HID usage reports (and which report id corresponds to which HID usage), then you are able to send and receive those reports. For supporting a softphone integration with Telephony 0xB/LED 0x8/Consumer 0xC HID usage pages https://www.usb.org/sites/default/files/hut1_4.pdf The full set of reports you would need for basic call control is: Output reports on LED usage page 0x8: 0x09 LED Mute 0x17 LED Hook 0x18 LED Ring 0x20 LED Hold And input reports on Telephony usage page 0xB: 0x20 Tel Hook 0x21 Tel Flash 0x2f Tel Mute

Pawel Kuzma
I dont understand, when I press mute button - I receive 7 events, 2 with 155 report id and 5 with 2 report Id. --> and in theory in that case it should be '0x2f' which is 47. Do you know about any tutorial how to deal with it or how to parse those usages to raport Id? or how to check which report Id is corresponding to which usege? In general my confiusion is that because event say something diferent vs collections (https://developer.mozilla.org/en-US/docs/Web/API/HIDDevice/collections) vs this general doc (https://www.usb.org/sites/default/files/hut1_4.pdf)

lcollins
Hi Pawel, It all comes back to the enumeration. You need to iterate through HID report descriptor (inputs, outputs, features) on initial connection to the device, and build your own lookup tables that map the HID usages to report id's. Then for any incoming report ID, you know which HID usage it is for and what data to expect... Report 155 for example I am fairly sure is a Microsoft telemetry report... Thanks, Lewis.

Add new comment