Limited availability

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.

The USBConnectionEvent interface of the WebUSB API is the event type passed to USB connect and disconnect events when the user agent detects that a new USB device has been connected or disconnected.

Event USBConnectionEvent


USBConnectionEvent() Experimental

Returns a USBConnectionEvent object.

Instance properties

USBConnectionEvent.device Read only Experimental

Returns a USBDevice object representing the current device.


In the following example listening for connect and disconnect events is used to add and remove the devices from the user interface of an application.

navigator.usb.addEventListener("connect", (event) => {
  // Add event.device to the UI.

navigator.usb.addEventListener("disconnect", (event) => {
  // Remove event.device from the UI.


# usbconnectionevent

Browser compatibility

BCD tables only load in the browser