Skip to main content

USB WebAPI Wrappers

The USB APIs (api.usb) are wrappers for USB WebAPI and provide access to the USB.

bulkTransfer

Performs a bulk transfer on a specified device.

Method

bulkTransfer(handle: ConnectionHandle, transferInfo: GenericTransferInfo): Promise<TransferResultInfo>

Parameters

Name

Type

handle

ConnectionHandle

transferInfo

GenericTransferInfo

Returns

Promise<TransferResultInfo>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-bulkTransfer

claimInterface

Claims a USB device interface.

Method

claimInterface(handle: ConnectionHandle, interfaceNumber: number): Promise<void>

Parameters

Name

Type

handle

ConnectionHandle

InterfaceNumber

number

Returns

Promise<void>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-claimInterface

closeDevice

Closes a connection handle.

Method

closeDevice(handle: ConnectionHandle): Promise<void>

Parameters

Name

Type

handle

ConnectionHandle

Returns

Promise<void>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-closeDevice

controlTransfer

Performs a control transfer on a specified device.

Method

controlTransfer(handle: ConnectionHandle, transferInfo: ControlTransferInfo): Promise<TransferResultInfo>

Parameters

Name

Type

handle

ConnectionHandle

transferInfo

ControlTransferInfo

Returns

Promise<TransferResultInfo >

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-controlTransfer

getDevices

Lists connected USB devices.

Method

getDevices(options: { filters?: DeviceFilter[], productId?: number, vendorId?: number }): Promise<Device[]>

Parameters

Name

Type

Description

filters

DeviceFilter[]

Optional

productID

number

Optional

vendorID

number

Optional

Returns

Promise<Device[]>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-getDevices

interruptTransfer

Performs an interrupt transfer on a specified device.

Method

interruptTransfer(handle: ConnectionHandle, transferInfo: GenericTransferInfo): Promise<TransferResultInfo>

Parameters

Name

Type

handle

ConnectionHandle

transferInfo

GenericTransferInfo

Returns

Promise<TransferResultInfo>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-interruptTransfer

listInterfaces

List all interfaces on a USB device.

Method

listInterfaces(handle: ConnectionHandle): Promise<InterfaceDescriptor[]>

Parameters

Name

Type

handle

ConnectionHandle

Returns

Promise<InterfaceDescriptor[]>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-listInterfaces

openDevice

Opens the returned USB device.

Method

releaseInterface(handle: ConnectionHandle, interfaceNumber: number): Promise<void>

Parameters

Name

Type

device

Device

Returns

Promise<void>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-openDevice

releaseInterface

Releases a claimed interface.

Method

releaseInterface(handle: ConnectionHandle, interfaceNumber: number): Promise<void>

Parameters

Name

Type

handle

ConnectionHandle

interfaceNumber

number

Returns

Promise<void>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-releaseInterface

requestAccess

Requests access to a device from the permission broker.

Method

requestAccess(device: Device, interfaceId: number): Promise<boolean>

Parameters

Name

Type

device

Device

interfaceId

number

Returns

Promise<boolean>

Additional Information

This method is a wrapper for the USB WebAPI.

https://developer.chrome.com/docs/extensions/reference/usb/#method-requestAccess