0

libusb-javaといくつかの自作デバイスで次の問題が発生します。そのようなデバイスは、大量の電力を消費するためにUSBポートから切断される可能性があります(例:私は500mA以上を必要とするUSB​​-LEDライトを持っています)。この場合、USBコントローラーはデバイスをリセットし、デバイスは正常に再起動します。

今では、すべての例外でデバイスを再起動しようとすることを除いて、このような問題を実際に検出することはできません。しかし、それは機能していません...

すべての例外で、initメソッドを再度呼び出します。これは次のようになります。

private void initDevice() {
USB.init();
this.dev = USB.getDevice(idVendor, idProduct);
}

それに関する問題は、これは問題なく実行されますが、新しいデータを送信したいときにこのエラーメッセージが表示されます:

LibusbJava.controlMsg: error sending control message: Protocol error

デバイスを再起動するにはどうすればよいですか?バスなどをリセットする必要がありますか?

4

1 に答える 1

0

デバイスで呼び出す必要がありopen()ます - これはシステムにとって新しいものです。

于 2012-01-12T17:49:18.823 に答える