7

を使用して接続されたデバイスへのアクセスを取得した後navigator.usb.requestDevice、次のように接続されたデバイスとの接続を開こうとしています:

device.open()
    .then(() => device.selectConfiguration(1))
    .then(() => device.claimInterface(1))

構成が正常に選択されているように見えますが、このclaimInterface手順では次のエラーが発生します。

DOMException: Unable to claim interface.

Ubuntu 16.10で、rootとしてフラグを付けてChrome 55.0.2883.75ベータを実行して--disable-webusb-securityいます(デバイスを取得できなかったものはありません)。

接続を確立して実行するにはどうすればよいですか?

編集:

接続しようとしているデバイスはシリアル デバイスであるため、cdc_acm ドライバーは既にインターフェイスを要求しているようです。ドライバーをアンロードすると、デバイスを要求できます (ただし、この後、インターフェイス 1 が利用できないこと、および 0 について不平を言います)または 2)。

4

1 に答える 1

1

構成を選択すると、次の場所で適切なインターフェイス番号を見つけることができますdevice.configuration.interfaces[0].interfaceNumber

device.open()
    .then(() => device.selectConfiguration(1))
    .then(() => device.claimInterface(device.configuration.interfaces[0].interfaceNumber))
于 2016-12-20T12:41:21.517 に答える