次の行を使用して PS3 コントローラーに書き込もうとしています (dev は適切に設定されています)。
dev.ctrl_transfer(0x40, CTRL_LOOPBACK_WRITE, 0, 0, msg)
CTRL_LOOPBACK_WRITE が定義されていないというエラーが表示されます。それで、それはどこで定義されていますか?それとも、その値を取得できますか?
ありがとう
この制御転送の例は、 http: //pyusb.sourceforge.net/docs/1.0/tutorial.html の pyusb チュートリアルで見つけたと思います。ただし、テキストで説明されているように、これはかなり架空の例です。「この例では、デバイスがループバック パイプとして機能する 2 つのカスタム コントロール リクエストを実装していると想定しています」。したがって、これは標準のコントロール リクエストではなく、お使いの PS3 でサポートされているリクエストではない可能性があります。その場合、CTRL_LOOPBACK_WRITE の数値がどうあるべきかを定義するのは、PS3 コントローラの USB スタック次第です。
標準リクエストの概要はhttp://www.beyondlogic.org/usbnutshell/usb6.shtml#StandardRequestsで確認できます。また、クラス固有の標準リクエストもあります。