This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Note: This feature is available in Web Workers, except for Shared Web Workers.
The sendFeatureReport() method of the HIDDevice interface sends a feature report to the HID device. Feature reports are a way for HID devices and applications to exchange non-standardized HID data.
The reportId for each of the report formats that this device supports can be retrieved from HIDDevice.collections.
sendFeatureReport(reportId, data)
reportIdAn 8-bit report ID. If the HID device does not use report IDs, send 0.
dataBytes as an ArrayBuffer, a TypedArray, or a DataView.
A Promise that resolves with undefined once the report has been sent.
NotAllowedError DOMException
Thrown if sending the report fails for any reason.
In the following example sendFeatureReport() makes a device blink. You can see more examples and live demos in the article Connecting to uncommon HID devices.
const reportId = 1;
for (let i = 0; i < 10; i++) {
// Turn off
await device.sendFeatureReport(reportId, Uint32Array.from([0, 0]));
await new Promise((resolve) => setTimeout(resolve, 100));
// Turn on
await device.sendFeatureReport(reportId, Uint32Array.from([512, 0]));
await new Promise((resolve) => setTimeout(resolve, 100));
}
| Specification |
|---|
| WebHID API> # dom-hiddevice-sendfeaturereport> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
sendFeatureReport |
89 | 89 | No | 75 | No | No | No | No | No | No | No | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HIDDevice/sendFeatureReport