MIDI-OUT 追加改造した [fm]/[drum] と、
[sample2] USB-MIDI が出力するメッセージ
[fm]/[drum]/[sample2] とりあえず MIDI DEVICE INQUIRY を送ってみる
[2021/08/27]
MIDI DEVICE INQUIRY
F0 7E 00 06 01 F7 [DEVICE INQUIRY Identity Request] PC からの要求
F0 7E 00 06 02 ddd... F7 [DEVICE INQUIRY Identity Reply] volca からの応答 (追加改造 MIDI-OUT)
[fm]
F0 7E 00 06 01 F7
F0 7E 00 06 02 42 2F 01 00 00 00 00 6B 00 F7
ddd...
42 Manufacturers System Exclusive id code 42:KORG
2F 01 Device family code (14 bits, LSB first)
00 00 Device family member code (14 bits, LSB first)
00 00 6B 00 Software revision level. Format device specific etc.
[drum]
F0 7E 00 06 01 F7
F0 7E 00 06 02 42 50 01 00 00 01 00 0E 00 F7
ddd...
42 Manufacturers System Exclusive id code 42:KORG
50 01 Device family code (14 bits, LSB first)
00 00 Device family member code (14 bits, LSB first)
01 00 0E 00 Software revision level. Format device specific etc.
[sample2] USB-MIDIでのやり取り
F0 7E 00 06 01 F7
F0 7E 00 06 02 42 2D 01 08 00 00 00 01 00 F7
ddd...
42 Manufacturers System Exclusive id code 42:KORG
2D 01 Device family code (14 bits, LSB first)
08 00 Device family member code (14 bits, LSB first)
00 00 01 00 Software revision level. Format device specific etc.
//---------------------------------------------------------------------------
[fm] [drum] [sample2]
Device family code 2F 01 50 01 2D 01
Device family member code 00 00 00 00 08 00
Software revision level etc. 00 00 6B 00 01 00 0E 00 00 00 01 00
//---------------------------------------------------------------------------
[fm] KORG の他の機種を参考にして RequestMessage を作り、送ってみる
KORG SysEx ヘッダルール ※推測
[F0] 42 30 mm fn [F7] mm: ModelID MSB:00 LSB
[F0] 42 30 00 mm mm fn [F7] mm: ModelID MSB:00 以外 00 MSB LSB
volca fm 00 01 2F
volca drum 00 01 50
volca sample 00 01 2D
[DEVICE INQUIRY Identity Reply] で返してくる Device family code を使う ※ LSB,MSB なので逆にする
KORG 他機種 SysEx ファンクションコード抜粋
[Requst / Answer]
e2s
0E GLOBAL DATA DUMP REQUEST
51 GLOBAL DATA DUMP
10 CURRENT PATTERN DATA DUMP REQUEST
40 CURRENT PATTERN DATA DUMP
microKORG XL+
microKORG
0E GLOBAL DATA DUMP REQUEST
51 GLOBAL DATA DUMP
10 CURRENT PROGRAM DATA DUMP REQUEST
40 CURRENT PROGRAM DATA DUMP
[RESPONSE]
26 DATA FORMAT ERROR
23 DATA LOAD COMPLETED (ACK)
24 DATA LOAD ERROR (NAK)
[fm] で試す
s:[F0 42 30 00 01 2F] 0E [F7] 0E GLOBAL DATA DUMP REQUEST
r:[F0 42 30 00 01 2F] 26 [F7] 26 DATA FORMAT ERROR
エラーが返ってきた! 自分へのメッセージだということは認識している
s:[F0 42 30 00 01 2F] 10 [F7] 10 CURRENT PATTERN/PROGRAM DATA DUMP REQUEST
r:[F0 42 30 00 01 2F] 40 40 CURRENT PATTERN/PROGRAM DATA DUMP
<略> 00 3F 00 00 00 00 00 00 00
240bytes 末尾 [F7] がない ACK 応答(PC -> volca)を送らないとダメ?
昔、microKORG と通信した時に、タイミング・クロックが邪魔した事があったのを思い出した
YAMAHA UX-16 経由で microKORG からの SysEx 受信
SysEx 中の F8 は許されている筈
YAMAHA はさすがにちゃんと理解していると思うが、microsoft は理解しているかどうか怪しい
再確認した 小ネタ色々 \ 電子楽器関係 [SysEx 中の F8,FE]
[fm] のMIDI クロック出力を止めて再試行
するつもりが.. 設定:MIDI Clock Src が [Auto] / [Internal しかなかった
-> External にすれば外部クロック専用になって MIDI-OUT にクロックは出なくなるつもりだったのに
「アレ、使うか!」
シリアル-MIDI で F8, FE をフィルタリングして通さない
F8: Timing Clock
FE: Active Sense
シリアル-MIDI でクロックをMASKして UX-16 のINに流す TRS-MIDI(A)どうしなので直結
<略> 00 00 00 00 00 50 54 45 00 44 [F7]
[F0] から [F7] まで1874バイト volcaFM DATA DUMP バイナリ
[drum] [fm] での結果をふまえて RequestMessage を作り、送ってみる
[MIDI DEVICE INQUIRY]
s:F0 7E 00 06 01 F7
r:F0 7E 00 06 02 42 50 01 00 00 01 00 0E 00 F7
SysEx Request フォーマット
[F0 42 30 00 01 50] fn [F7]
KORG 他機種 SysEx ファンクションコード抜粋
[Requst / Answer]
0E GLOBAL DATA DUMP REQUEST
51 GLOBAL DATA DUMP
10 CURRENT DATA DUMP REQUEST
40 CURRENT DATA DUMP
[RESPONSE]
26 DATA FORMAT ERROR
23 DATA LOAD COMPLETED (ACK)
24 DATA LOAD ERROR (NAK)
[drum] で試す
s:[F0 42 30 00 01 50] 0E [F7] 0E GLOBAL DATA DUMP REQUEST
r:[F0 42 30 00 01 50] 51 51 GLOBAL DATA DUMP
40 47 4C 4F 42 60 00 7F 00 00 [F7]
[fm]と違って応答してきた
s:[F0 42 30 00 01 50] 10 [F7] 10 CURRENT DATA DUMP REQUEST
r:[F0 42 30 00 01 50] 40 40 CURRENT DATA DUMP
<略> 00 00 00 00 00 00 00 00 00 00 [F7]
[F0] から [F7] まで3803バイト -> volca drum DATA DUMP バイナリ
「アレ」なしで全部受信できた 違いは? 調べた
タイミング・クロックを送出していない (設定は default のままだった筈)
設定 [MIDI Clock Src] [Auto] の仕様が変わった?
確認する:
電源OFF
[FUNC] を押しながら電源ON -> グローバル・パラメーターの設定
鍵盤LED 6 [MIDI Clock Src] 点灯 -> [Auto(default)]
[Internal](消灯) に変えて [REC] -> 設定保存終了
電源OFF
[FUNC] を押しながら電源ON -> グローバル・パラメーターの設定
変更されている事を確認
[PLAY] -> 設定キャンセル終了
-> [MIDI Clock Src] [Internal] でもタイミング・クロックは送出しない
「[Auto] の仕様が変わったわけではなく、タイミング・クロックは送出しない」という全体の仕様?
[Auto] : MIDI Clock が入ってきたらそれに同期
[Internal]: MIDI Clock が入ってきても内部テンポで動作
ということか?
アクティブセンスは設定に関わりなく送出している
「volca drum をテンポマスタとする場合は [SYNC-OUT] を使ってね」ということかな?
あっ!! そもそも MIDI-OUT は標準装備じゃなかった!
でも、アクティブセンスがw