win32ss / supermium

Chromium fork for Windows XP/2003 and up
https://win32subsystem.live/supermium/
BSD 3-Clause "New" or "Revised" License
2.22k stars 74 forks source link

Web Serial and WebUSB non-functional on Windows XP #606

Open UCyborg opened 4 months ago

UCyborg commented 4 months ago

Description When the browser is running on Windows XP, it is not able to establish link to USB devices and devices communicating over COM port when requested by web applications utilizing Web Serial or WebUSB APIs.

To Reproduce - Web Serial Steps to reproduce the behavior:

  1. Have any device connected to the computer and ready that communicates over COM port, be it real or virtual (eg. Serial over USB).
  2. Verify proper functioning using any terminal program, eg. PuTTY.
  3. Close terminal program, go to https://www.serialterminal.com/ or https://sparkfunx.github.io/WebTerminalDemo/.
  4. Click on Connect or Open.
  5. A prompt with an empty list will appear, which can only be cancelled.

Expected behavior Serial ports (COM) as seen in Windows' Device Manager under Ports (COM & LPT) should be listed in the prompt, after selecting the port and confirming it, communication with connected device should be possible.

To Reproduce - WebUSB Steps to reproduce the behavior:

  1. For the simplest test, having any USB device connected to the computer will do.
  2. Open Windows' Device Manager, open properties of any USB devices, go to Details tab, select Hardware Ids, note down Vendor ID and Product ID (VIDABCD and PIDABCD).
  3. Go to https://larsgk.github.io/webusb-tester/, enter Vendor and Product IDs noted earlier in the appropriate fields and click on PAIR NEW DEVICE.
  4. A prompt with an empty list will appear, which can only be cancelled.

Alternatively, you can leave Vendor ID and Product ID fields empty, it will list all devices then. You can also simply check chrome://usb-internals page, where there will be empty device list on Devices tab.

Expected behavior Device whose ID was picked should be listed in the prompt, after selecting it, the tester should list basic information about the device.

Screenshot showing empty list of COM ports, despite them being available Empty list of COM ports

Desktop:

XakerTwo commented 4 months ago

as slight simplification for WebUSB - you may leave fields blank and popup should list all connected devices

also can reproduce WebUSB issue on VM with Windows XP SP3 x32 and x64(this one is full vanilla) with 122.0.6261.152 R6 x32 and x64

UCyborg commented 4 months ago

Right, guess I just assumed it doesn't work with empty fields. Another option for USB is to just check the device list on chrome://usb-internals page, I made an edit.