USB Packet Capture

久しぶりにパケットキャプチャWireSharkの出番です。
いつもはイーサネットでしたが、今回ははじめてUSBで接続されているMIDIデータ通信についてキャプチャしてみました。
きっかけは、ZOOMのマルチエフェクタをMIDIで制御しているサイトをいくつかあったことから、所有しているB1 Fourでもできるかどうか試してみたかったからです。ZOOMのマルチエフェクタは、GuiarLabというアプリケーションとUSB接続して制御できるのですが、MIDIの仕様が非公開のため自前で制御することができません。
そこでこのGuiarLabでパラメータ変更しているときにパケットキャプチャをして、自前アプリで制御することを試みました。


たくさんのパケットを送受信していますのて、まずはsysexでフィルタして、アプリからの送信部分だけ抽出して傾向を解析しました。

いろいろと送られていますが、15バイトのパケットのみが有効そうだったので、これをプログラムで送出してみます。

環境: python-rtmidi 1.4.1 / Python 3.7.7 / Windows 10

OUTPUTが70になることを確認できました。
この調子でいろいろと調べていけば、目的の制御ができそうです。
これを真似する方は、くれぐれも自己責任で。

手順の補足)
1) GutarLabとB1Fourを接続してEDITORモードに入る
2) 1-1 MX Cleanパッチを選び、OUTPUTノブを操作しながら、キャプチャする
3) GutarLabを終了する
4) Pythonプログラムを実行する(B1FourはEDIT画面に。値がかわることを確認)
5) もう一度GutarLabを起動し結果を確認(実物の写真を撮り忘れたので、アプリケーションのスクリーンショットでかわり)