状況は次のとおりです。USB デバイス (通信しようとしているカスタム デバイス) があり、2 つのエンドポイントがあり、1 つはデバイスへの書き込み、もう 1 つはデバイスからの読み取りです。どちらも一括転送です。すべての通信トランザクションは、(1) デバイスにコマンドを書き込む (2) 応答を読み取るという形式を取ります。実際に通信を行うために libusb (1.0 ベータではなくバージョン 0.1) を使用しています。
Windows では、すべて問題ありません。デバイスを接続し、インターフェイスを要求し、楽しく通信できます。ただし、Ubuntu (標準の Hardy デスクトップ インストール) では、デバイスに接続して書き込みを行うことはできますが、libusb から報告されたエラー「URB の送信エラー: 無効な引数」ですべての読み取り操作が失敗します (エラー コード -22)。
/var/log/messages を確認すると、読み取りが試行されたと同時にログに記録された警告メッセージが表示されます。そのバスで、それはエンドポイント 81 から読み取ろうとしています)。
だから... libusbを使用して同様の問題を見た人はいますか、それを修正する方法はありますか?