Web USB 将数据从设备传输到浏览器不起作用

gAN*_*ALF 5 javascript webusb

在此处输入图片说明

以上是我的设备配置。我正在尝试从中获取数据,我正在使用下面的代码来获取数据

document.getElementById("request").onclick = function() {

  navigator.usb.requestDevice({
      filters: [{
        vendorId: 1659
      }]
    })
    .then((requestedDevice) => {
      device = requestedDevice;
    }).then(() => {
      console.log(device);
      console.log(JSON.stringify(device));
      return device.open();
    }).then(() => device.selectConfiguration(1)) // Select configuration #1 for the device.
    .then(() => {

      return device.reset();
    }).then(() => device.claimInterface(0))
    .then(() => {

      return device.transferIn(3, 64)
    })
    .then((data) => {
      debugger;
      console.log(data)

    }).catch(err => {
      console.log(err);
    });

}
Run Code Online (Sandbox Code Playgroud)

我正在选择 endPointnumber 和界面,但它似乎不起作用,我在这里遗漏了什么吗?.请帮忙。我没有收到任何错误,设备似乎已连接,但数据没有从机器传输到浏览器。

我看到了这个问题,它与我的WEBUSB 获取串行数据 PL2303 的场景完全相同

但就我而言,我什至没有得到任何数据。

我在 node js 中尝试了这个驱动程序https://github.com/tidepool-org/pl2303并且它有效,但我想用 web usb api 来做。

编辑 - 我正在研究它,现在数据似乎不断地出现

async function Get()
{

  let device= await navigator.usb.requestDevice({ filters: [{ vendorId: 0x067b,productId:0x2303 }]})
console.log(device);
  await device.open({ baudRate: 9600 });
  await device.selectConfiguration(1);
  await device.claimInterface(0);

while(true)
{

  let result =  await device.transferIn(3,64);
  
  var string = new TextDecoder("utf-8").decode(result.data.buffer);

console.log("hii",string);
}
Run Code Online (Sandbox Code Playgroud)

唯一的问题,我现在面临的问题是数据传输直到一些数据发送到设备才开始,当我使用节点 js 驱动程序发送数据时,它可以工作并且我接收数据,但只有web usb api 它不起作用