Device Access

WebUSB

Probing…

WebUSB is a web platform capability in the Device Access category. Talk to USB devices directly from the page. Supported in Chromium 61+; not available in Firefox and Safari. Requires a secure context (HTTPS or localhost) and a user gesture such as a click or tap.

Secure contextUser gesture

Try it

Loading demo…

Code

const device = await navigator.usb.requestDevice({ filters: [] })

console.log(device.productName, device.manufacturerName)
console.log('VID/PID', device.vendorId, device.productId)
console.log('Configurations:', device.configurations.length)
// Note: we only read descriptors — no device.open()/claimInterface()

Browser support

Chromium
61
Firefox
No
Safari
No

Frequently asked questions

Which browsers support WebUSB?

Supported in Chromium 61+; not available in Firefox and Safari.

Does WebUSB require HTTPS?

Yes. WebUSB needs a secure context, so it only works over HTTPS (or on localhost during development).

What is WebUSB used for?

Talk to USB devices directly from the page.

Can I try WebUSB in my browser?

Yes. shwcs.net runs a live WebUSB demo that probes your current browser and lets you try the API. Everything runs locally — nothing is sent anywhere.

MDN reference ↗ Specification ↗