electron/docs/api/structures/usb-device.md
Shelley Vohr e299a1d098
feat: support complete WebUSB device properties (#47459)
* feat: support complete WebUSB device properties

* docs: correct type consistency
2025-06-30 10:28:21 +02:00

3.5 KiB

USBDevice Object

  • configuration Object (optional) - A USBConfiguration object containing information about the currently selected configuration of a USB device.
    • configurationValue Integer - the configuration value of this configuration.
    • configurationName string - the name provided by the device to describe this configuration.
    • interfaces Object[] - An array of USBInterface objects containing information about an interface provided by the USB device.
      • interfaceNumber Integer - the interface number of this interface.
      • alternate Object - the currently selected alternative configuration of this interface.
        • alternateSetting Integer - the alternate setting number of this interface.
        • interfaceClass Integer - the class of this interface. See USB.org for class code descriptions.
        • interfaceSubclass Integer - the subclass of this interface.
        • interfaceProtocol Integer - the protocol supported by this interface.
        • interfaceName string (optional) - the name of the interface, if one is provided by the device.
        • endpoints Object[] - an array containing instances of the USBEndpoint interface describing each of the endpoints that are part of this interface.
          • endpointNumber Integer - this endpoint's "endpoint number" which is a value from 1 to 15.
          • direction string - the direction in which this endpoint transfers data - can be either 'in' or 'out'.
          • type string - the type of this endpoint - can be either 'bulk', 'interrupt', or 'isochronous'.
          • packetSize Integer - the size of the packets that data sent through this endpoint will be divided into.
      • alternates Object[] - an array containing instances of the USBAlternateInterface interface describing each of the alternative configurations possible for this interface.
  • configurations Object[] - An array of USBConfiguration interfaces for controlling a paired USB device.
  • deviceClass Integer - The device class for the communication interface supported by the device.
  • deviceId string - Unique identifier for the device.
  • deviceProtocol Integer - The device protocol for the communication interface supported by the device.
  • deviceSubclass Integer - The device subclass for the communication interface supported by the device.
  • deviceVersionMajor Integer - The major version number of the device as defined by the device manufacturer.
  • deviceVersionMinor Integer - The minor version number of the device as defined by the device manufacturer.
  • deviceVersionSubminor Integer - The subminor version number of the device as defined by the device manufacturer.
  • manufacturerName string (optional) - The manufacturer name of the device.
  • productId Integer - The USB product ID.
  • productName string (optional) - Name of the device.
  • serialNumber string (optional) - The USB device serial number.
  • usbVersionMajor Integer - The USB protocol major version supported by the device.
  • usbVersionMinor Integer - The USB protocol minor version supported by the device.
  • usbVersionSubminor Integer - The USB protocol subminor version supported by the device.
  • vendorId Integer - The USB vendor ID.