2つの方法

RasPiを使ってEWI-USBをレガシーMIDIに変換

用意する物

仕組み

Linuxに標準搭載されているALSA(Advanced Linux Sound Architecture)を使用します。
これにはMIDIインターフェースのリダイレクト機能も含まれているので、そのaconnectコマンドでEWI-USBとUSB-MIDIを接続するだけです。

作り方

まず、RasPiにNOOBSを使ってRasbian(Linux)をセットアップします。
次に、スクリプトを作って仕込みます。
スクリプトを作ったのは、USBデバイスを挿す順番/場所によってデバイス番号が変わってしまうからです。
デバイス名で指定する方法もありますが、どういうわけか安物USB-MIDIの「USB2.0-MIDI」というデバイス名を正しく処理してくれません。
おそらく2.0の「.」が悪さをしているのでしょう。デバイス番号で指定すると確実です。
よって、デバイス名からデバイス番号を抽出するスクリプトを使います。

awkを使うと、正規表現にマッチした行を取り出すと同時に、スペース区切りでリスト化する事が簡単にできます。
今回はこの機能を使用して、デバイス番号を抽出しています。

pi@raspberrypi ~ $ cat ewiusb2usbmidi.sh
#!/bin/bash
echo "Connect EWI-USB to USB-MIDI output"
aconnect `aconnect -i | awk '/クライアント.*EWI-USB/{print $2}'`0 `aconnect -o | awk '/クライアント.*USB2\.0-MIDI/{print $2}'`0

これだけです。
USB-MIDIにRolandのUM-ONEを使う場合は一部変更します。

pi@raspberrypi ~ $ cat ewiusb2usbmidi.sh
#!/bin/bash
echo "Connect EWI-USB to USB-MIDI output"
aconnect `aconnect -i | awk '/クライアント.*EWI-USB/{print $2}'`0 `aconnect -o | awk '/クライアント.*UMONE/{print $2}'`0

500円くらいで売っている安物のUSB-MIDIは、デバイス名が「USB2.0-MIDI」の物がほとんどみたいです。

使い方

RasPiにEWI-USBとUSB-MIDIケーブルを繋いでおいてから、RasPiの電源を入れて起動します。
コンソール接続して先ほどのスクリプトを実行してやるだけ。
面倒くさければ、/etc/rc.localに記述しておけば自動実行されます。

構成図

usb-midi.jpg

ワンチップマイコンで直接変換

Microchip社の32bitマイクロコントローラーを使用し、USB HOST機能を実装してUSB-MIDIからレガシーMIDIへの変換を行います。

参考ページ

http://d.hatena.ne.jp/pcm1723/searchdiary?word=%2A%5BUSB%20MIDI%20%A5%DB%A5%B9%A5%C8%5D

用意する物(主要部品)

メモ


添付ファイル: fileusb-midi.jpg 2005件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-11-27 (月) 23:39:34