function setHidFeatureReport(device, deviceDesc, reportId, data, callback) {
  // TODO(benvanik): pass in as an argument?
  var interfaceNumber =
      deviceDesc.configurations[0].interfaces[0].interfaceNumber;
  chrome.usb.controlTransfer(device, {
    requestType: 'class',
    recipient: 'interface',
    direction: 'out',
    request: 0x09,
    value: 0x0300 | reportId,
    index: interfaceNumber,
    data: data.buffer
  }, function(info) {
    if (info.resultCode) {
      var e = new Error('Error setting HID feature report: ' + info.resultCode);
      e.code = info.resultCode;
      callback(e);
      return;
    }
    callback(undefined);
  });
}
Sets a HID feature report.
@param {!Object} device Chrome device handle.
@param {!DeviceDescriptor} deviceDesc Device descriptor.
@param {number} reportId Report ID.
@param {!Uint8Array} data Report data.
@param {!function(Error=)} callback Callback. Receives an error if one
    occurred.