-
Notifications
You must be signed in to change notification settings - Fork 2
Windows troubleshooting
Windows 10/11 should be relatively trouble-free given relatively modern Chrome version is used. However following problems still might occur:
Wrong driver bound to the interface (most common on Windows). WebUSB on Windows requires the WinUSB driver on the device's interface. Windows picks the driver from the device's MS OS 2.0 descriptors, and it caches that decision in the registry (HKLM\SYSTEM\CurrentControlSet\Control\usbflags, keyed by VID+PID+bcdDevice).
If that machine ever saw the device with older firmware or a different driver (e.g., usbser/CDC, or something installed by another tool), it can stay bound to the wrong driver even after a firmware update - the working machine enumerated it fresh, the failing one didn't. Check Device Manager: the interface should show as a WinUSB device, not "USB Serial Device" or unknown. Fixes: uninstall the device in Device Manager with "delete driver" checked and replug, or delete the cached usbflags entry, or as a blunt instrument bind WinUSB with Zadig.
Correct driver is:
Turn off
As of now app is tested against 1.1.4 - 1.1.5 range of firmware (with some betas in between). Its should ran fine or at least report incompatibility, but everything is possible - at least check that firmware works with desktop app.
In some cases USB hubs could be a problem, verify by plugging device directly to PC / or another USB port.
-
chrome://device-logandchrome://usb-internals— shows enumeration, claim, and transfer failures with more detail than the JS exception. - Device Manager → the device → Driver tab: confirm WinUSB, and compare Hardware IDs/bcdDevice against the working machine.
- Note when it fails: immediately on the first control transfer after open()/claimInterface() (→ driver/descriptor problem, #1/#3) vs. only on specific requests