W3cubDocs

/Web APIs

USBAlternateInterface

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.

The USBAlternateInterface interface of the WebUSB API provides information about a particular configuration of an interface provided by the USB device. An interface includes one or more alternate settings which can configure a set of endpoints based on the operating mode of the device.

Constructor

USBAlternateInterface() Experimental

Creates a new USBAlternateInterface object which will be populated with information about the alternate interface of the provided USBInterface with the given alternate setting number.

Instance properties

USBAlternateInterface.alternateSetting Read only Experimental

Returns the alternate setting number of this interface. This is equal to the bAlternateSetting field of the interface descriptor defining this interface.

USBAlternateInterface.interfaceClass Read only Experimental

Returns the class of this interface. This is equal to the bInterfaceClass field of the interface descriptor defining this interface. Standardized values for this field are defined by the USB Implementers Forum. A value of 0xFF indicates a vendor-defined interface.

USBAlternateInterface.interfaceSubclass Read only Experimental

Returns the subclass of this interface. This is equal to the bInterfaceSubClass field of the interface descriptor defining this interface. The meaning of this value depends on the interfaceClass field.

USBAlternateInterface.interfaceProtocol Read only Experimental

Returns the protocol supported by this interface. This is equal to the bInterfaceProtocol field of the interface descriptor defining this interface. The meaning of this value depends on the interfaceClass and interfaceSubclass fields.

USBAlternateInterface.interfaceName Read only Experimental

Returns the name of the interface, if one is provided by the device. This is the value of the string descriptor with the index specified by the iInterface field of the interface descriptor defining this interface.

USBAlternateInterface.endpoints Read only Experimental

Returns an array containing instances of the USBEndpoint interface describing each of the endpoints that are part of this interface.

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
USBAlternateInterface 61 79 No No 48 No No 61 No 45 No 8.0
USBAlternateInterface 61 79 No No 48 No
NoWebView exposes this interface, but does not support WebUSB. See Chromium bug 933055.
61 No 45 No 8.0
alternateSetting 61 79 No No 48 No No 61 No 45 No 8.0
endpoints 61 79 No No 48 No No 61 No 45 No 8.0
interfaceClass 61 79 No No 48 No No 61 No 45 No 8.0
interfaceName 61 79 No No 48 No No 61 No 45 No 8.0
interfaceProtocol 61 79 No No 48 No No 61 No 45 No 8.0
interfaceSubclass 61 79 No No 48 No No 61 No 45 No 8.0

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/USBAlternateInterface