ホーム > AVR > CMU-800 USB-MIDIインタフェースを作るCMU-800 USB-MIDI Interface

CMU-800 USB-MIDIインタフェースを作るCMU-800 USB-MIDI Interface

2012 年 4 月 27 日

CMU-800は80年代にローランドから発売されていたコンピュータ用の外部音源です。

今回、RadioJunkBoxさんのCMU-800 MIDI Interfaceをベースに、今回はUSB-MIDIインタフェースを作ました。

USB直結で鳴らせますので、iPadや今時のパソコンに簡単に接続することができます。

CMU-800-ipad2

1. はじめに

CMU-800はAppleやPC8801などに接続し音楽を演奏できるものでした。

簡易なアナログシンセサイザーをパソコンから制御するものです。Z-80などの8ビットパソコンのバスと直結するためのインタフェースになっており、現代のパソコンには接続できません。

CMU-800をMIDIから制御するインタフェースとして、RadioJunkBox(RJC)さんがCMU-800 MIDI Interfaceを発表しています。非常に良く出来ており、海外にも利用者がいるほど、ビンテージシンセファンに注目されています。

今回は、RadioJunkBoxさんの回路構成のまま、外部インタフェースだけをUSB-MIDIにしました。

USB-MIDI化によって、以下のメリット、デメリットが生じます。

  • iPadなどUSB端子のある機器に直結可能
  • インタフェースアダプタの電源もUSBから取れる。(さすがに、CMU-800 本体の電源は取れません。)
  • 必ず、USB端子のある機器(パソコン等)が必要になる
  • 既存のMIDI機器につなぐには、パソコン経由となる

2. ブロック図、回路図

ブロック図は次のようになります。USB機能付きのAVRを制御用に利用しています。

USB-MIDIからの入力にあわせて、CMU-800の内部のデバイスをZ80バス経由で制御します。

CMU-800 Bock Diagram

CMU-800 Bock Diagram

実際の回路図を示します。

マイコン部分は市販品(ストロベリーリナックス社のAVR-USBマイコンボードAT90USB162)をそのまま利用ました。

マイコン基板とCMU-800との接続は次のようになります。

回路図(接続図)

回路図(接続図)

※ 回路図では、DIN-SYNCが書かれていますが、実際にはテストしていません。

3. ソフトウエア

AVR用のUSBスタックとして、これまでV-USBを使ってきました。今回もV-USBでも良かったのですが、AVRに内蔵されたUSB機能を利用するLUFAを使ってみました。

LUFAにはStandard MIDI Classのドライバも例題として提供されていますので、例題をベースに拡張します。

USB-MIDIは4バイト固定長のパケットでMIDIコマンドが送られてきますので、シリアルMIDIに比べパーザの作成は簡単です。内部的に状態機械を持たずに、パケットの内容のケース分けだけで実現出来ます。

CMU-800の制御はRJBさんオリジナルのコードを、ほぼそのまま採用しています。

MIDI化にあたり、以下の2点だけ拡張しました。

  • CMU-800の電源監視をインタフェースに実装した。後からCMU-800の電源を入れたり、再投入してもUSB側に影響がない。
  • TEMPOつまみにあわせてMIDIがわにCLOCKを出すようにした(コンパイルオプション)

ソフトウエアはこちら

MacOSX上のCrossPack for AVR® Developmentでコンパイルできます。

4. 実装

ちょうど良い大きさだったので、ストロベリーリナックス社のAVRマイコンボード(AT90USB162)を利用しました。

この基板にはユニバーサル部分がありますので、その部分に40Pフラットケーブルコネクタをつなぎます。

ちょうど古いパソコンのパラレルATAケーブルが余っていたので使いました。

Interface Board

Interface Board

入手したCMU-800にもとからついていたフラットケーブルが断線していたため、本体基板のコネクタ部分からフラットケーブルを除去し、40Pフラットケーブルを信号にあわせて新たに配線しました。

CMU-800 Connector

CMU-800の後部の開口部から見えるようにLEDを3個配置しています。

5. 使い方

インタフェースボードにCMU-800の電源監視回路を入れましたので、電源投入順序は意識しなくても良くなりました。

(USB端子接続後にCMU-800の電源を投入しても、その逆でも正しく動作します。)

音源のマッピングやMIDIコマンドの対応状況はRJBさんのオリジナルと全く同じです。パソコンやiPad側からは全く同じように使えます。

デモ画像

[youtube]http://www.youtube.com/watch?v=xkFP6kPt09I[/youtube] [youtube]http://youtu.be/StQHnbRp25s[/youtube]

(了)

カテゴリー: AVR タグ:
コメントは受け付けていません。