>> Blog Top

arduinoでMIDIケーブルを使って通信

Publish 2018.02.23


MIDI端子は時代遅れ感がありますが、これを使ってみたところarduinoで手軽にPCと通信できたので備忘録として記事にしておきます。

まず、arduinoでMIDIを使うときはPCとの通信が結構なハードルになっちゃいます。

arduinoでMIDIを使ってPCと通信する方法として3つあります。

1. arduinoのUSBチップを書き換える

2. Hairless MIDIを使う

3. MIDI端子とMIDI-USBケーブルを使う

PCとの接続だけが目的なら基本的に1か2で済みます。僕は端子フェチなのでDIN5ソケットを使ってみたかっただけです。端子フェチの方には今回紹介する3番目の方法がおススメです。

このブログでは以前の記事で、arduinoのUSBチップを書き換えてarduinoとMIDIデバイス、どちらとしても使用できるようにする方法を紹介しました。

便利なんですが書き換えの際にターミナルを使わないといけなかったり地味に躓きがちなポイントです。ファームウェアを公開してくださっている方が日本人ということもあって日本語の情報は多いんですけどね。英語のブログやYoutubeで何度も質問されたんですが、僕の英語力ではなかなか上手く説明できなかったもので。

2番目のHairless MIDIに関してですが、おそらく一番使ってる人が多いんじゃないでしょうか。簡単に使えるそうなんですが、なぜか僕の環境では上手くいきませんでした...というか、上述のUSBチップを書き換える方法を見つけたのですぐに諦めました。たぶん設定をちゃんとすれば使えるのでしょう。

では、MIDI端子を使う方法の紹介になります。

必要な物

DINソケット(メス) 5P 180°: パーツ一般 秋月電子通商-電子部品・ネット通販

RolandやYamahaの純正の方が良いんでしょうが地味に値が張るのでこれを使ってます。

まず、DINソケットはそのままだとブレッドボードに刺せないので脚を付けます。

脚を付けたらarduinoと接続します。

前回の記事で使ったハイハットの回路が残っていたのでそのまま追加しました。

arduinoとの繋ぎ方は下の画像を参考に。

こちらの公式サイトから拝借してます。というかこのページ見たら全部わかります。サンプルコードも載ってます。Arduino - Midi

arduinoと繋いだらもう完成です。あとはMIDI-USBケーブル挿してPCと繋ぐだけです。INの方を先ほどのソケットへ。

MIDI-USBケーブルが壊れてなければPC側でMIDIデバイスとして認識されます。

当たり前ですが、arduinoには電源供給が必要ですのでUSBケーブルか電源を接続してください。

GarageBandでもEZdrummerでも、なにかDAWを開けば選べるはずです。

めっちゃ簡単ですね。余計なソフトウェアは必要ないです。ハードウェアは増えますが。

ちょっとびっくりしたんですが、コードも今までものをそのまま使えました。コードにはarduino公式のMIDIライブラリを使用しています。MIDIライブラリを使っているときは1番ピンは使えないという認識でいいのでしょうかね?

若干疑問は残りますが簡単に動きました。端子フェチの方やarduinoとMIDI機器を併用したい方は是非。


>> Blog Top